Note:

Configure CD3 con Jenkins para crear y exportar recursos de Oracle Cloud Infrastructure

Introducción

El kit de herramientas de automatización del entregable de diseño de despliegue en la nube (CD3) le permite crear, exportar y gestionar recursos de Oracle Cloud Infrastructure (OCI) sin esfuerzo mediante la conversión sencilla de plantillas de Microsoft Excel a módulos de Terraform totalmente funcionales.

El kit de herramientas también soporta una gestión de recursos perfecta mediante el servicio OCI DevOps Git y los pipelines de Jenkins.

Flujo de Trabajo

Objetivos

Requisitos

Tarea 1: Configuración del contenedor del kit de herramientas

  1. Haga clic en Desplegar en Oracle Cloud para iniciar la pila de OCI Resource Manager que crea CD3 WorkVM.

    Deploy_To_OCI

  2. Acepte los términos y condiciones. Introduzca la red, el compartimento, el nombre de máquina virtual, la unidad, etc. para que se cree workVM.

    Nota: Para mantener un entorno seguro, proporcione un rango de CIDR de origen específico para acceder a la VM. No utilice 0.0.0.0/0.

  3. Compruebe la sección Ejecutar Aplicación en la parte inferior y haga clic en Crear.

  4. Una vez que el trabajo de aplicación se haya realizado correctamente, haga clic en el trabajo y desplácese hacia abajo hasta el final de los logs.

    Busque los detalles de la VM creada y los comandos que se van a ejecutar para iniciar sesión en el contenedor del kit de herramientas. Ejemplo de salida que se muestra en la siguiente imagen.

    salida de ataque de RMS

    Después de conectarse al contenedor, conéctelo al arrendamiento de OCI para ejecutar las API de OCI.

Tarea 2: Conexión del contenedor al arrendamiento de OCI

  1. Vaya a cd /cd3user/oci_tools/cd3_automation_toolkit/user-scripts/ y abra el archivo tenancyconfig.properties.

  2. Agregue los valores de configuración necesarios en las secciones Parámetros necesarios y Parámetros de detalles de autenticación.

    Nota: En este tutorial, utilizaremos la autenticación de clave de API. Mantenga auth_mechanism en su valor por defecto.

  3. En la consola de OCI, en Configuración de usuario, cargue la clave pública en APIkeys. Coloque la clave privada dentro del contenedor. Copie los valores de configuración necesarios y péguelos bajo los parámetros correspondientes en el archivo tenancyconfig.properties.

  4. Deje el parámetro outdir_structure_file en su valor por defecto para agrupar los archivos auto.tfvars generados para cada servicio.

  5. Para la herramienta IaC, se puede seleccionar terraform o tofu. El valor por defecto es terraform. Para utilizar OpenTofu, especifique tofu.

  6. En Parámetros avanzados para DevOps, seleccione yes para el parámetro use_oci_devops_git.

    Se creará un repositorio de Git DevOps de OCI para los archivos de terraform generados, un cubo de OCI Object Storage para el archivo de estado y un tema de notificación de OCI para notificar los cambios en el repositorio DevOps.

  7. Guarde el archivo y ejecute createTenancyConfig.py para inicializar el entorno y empezar a utilizar CD3.

    python createTenancyConfig.py tenancyconfig.properties
    
  8. Verifique la salida.

  9. A continuación, para crear recursos en OCI, siga la Tarea 3 o, para exportar recursos, siga la Tarea 4.

Tarea 3: Creación de recursos en OCI

Tarea 3.1: Preparación del archivo de Excel y variables

  1. Descargue la plantilla de Excel rellenada previamente desde aquí: cd3quickstart.xlsx para este tutorial. Modifique la región y los valores de compartimento en función del entorno y cambie al contenedor.

  2. Abra /cd3user/tenancies/<prefix>/terraform_files/<region>/compute/variables_<region>.tf desde el contenedor. En la variable instance_ssh_keys, agregue el nombre de variable para las claves SSH especificadas en la hoja de Excel: ssh_public_key con su valor correspondiente (contenido de clave).

  3. En la variable instance_source_ocids, incluya el nombre de variable especificado en la hoja de Excel para la imagen de origen myimageocid y asigne su OCID como el valor correspondiente. Las siguientes capturas de pantalla son de referencia.

    ssh_key

    Oocidantes

  4. Ejecute los siguientes comandos en secuencia para sincronizar los cambios locales anteriores con el repositorio de Git DevOps.

    cd /cd3user/tenancies/<prefix>/terraform_files
    git status
    git add -A .
    git commit -m "msg"
    git push
    

Tarea 3.2: Conectarse a Jenkins y ejecutar el pipeline setupoci

  1. Inicie Jenkins y acceda a él mediante los siguientes comandos desde el contenedor.

    • Para iniciar Jenkins, utilice el comando /usr/share/jenkins/jenkins.sh &.

    • Para acceder a Jenkins, utilice esta URL https://<IP Address of the machine hosting docker container>:8443.

  2. Inicie sesión en Jenkins. En el panel de control, hay carpetas con nombres <prefix> presentes. Haga clic en el nombre <prefix> con el que está trabajando. Tiene el pipeline de setupoci correspondiente y la carpeta terraform_files. Haga clic en pipeline de configuración y en Crear con parámetros.

    Nota: Si accede a la URL de Jenkins por primera vez, configure las credenciales de conexión.

    excel_template

  3. En la sección Plantilla de Excel, cargue el archivo Excel recuperado en la tarea 3.1.

    excel_template

  4. En Flujo de trabajo, seleccione Crear nuevos recursos en OCI (flujo de trabajo de campo verde).

  5. En MainOptions, seleccione Identidad, Red y Recursos informáticos.

  6. En SubOptions, seleccione Agregar/Modificar/Suprimir grupos, Agregar/Modificar/Suprimir políticas, Crear red, Agregar/Modificar/Suprimir instancias/Política de copia de seguridad de inicio.

  7. Haga clic en Crear. Las etapas de pipeline de setupoci se ejecutan en orden.

Tarea 3.3: Proporcionar aprobación para cada plan de servicio

  1. Haga clic en la etapa de identidad de los logs y haga clic en el enlace para crear el pipeline de aplicación de identidad. En la etapa Obtener aprobación, haga clic en los logs y seleccione Continuar. Consulte los logs en la etapa Aplicar para verificar los recursos de identidad creados.

    terraformpipeline

  2. Del mismo modo, desde la etapa de red en el pipeline de setupoci, haga clic en logs y, a continuación, en el enlace para la creación del pipeline de aplicación de red. En la etapa Obtener aprobación, haga clic en los logs y seleccione Continuar. Compruebe los logs en la etapa Apply (Aplicar) para verificar los recursos de red creados.

  3. Haga clic en los logs de la etapa de cálculo. Haga clic en el enlace para calcular la creación de pipeline de aplicación.

    Nota: Observará que ha fallado el pipeline de terraform de cálculo. Esto se debe a que los recursos informáticos dependen de la red para estar listos. Para resolver esto, dispare el pipeline de terraformación informática manualmente una vez que el pipeline de aplicación de red se haya realizado correctamente. El siguiente paso muestra cómo ejecutarlo.

  4. Haga clic en Crear ahora para el pipeline de aplicación de recursos informáticos. Una vez que se inicien las etapas de pipeline, en la etapa Obtener aprobación, haga clic en los logs y seleccione Continuar. Consulte los logs en la etapa Aplicar para verificar los recursos informáticos creados.

  5. La ejecución de Crear red crea pocas reglas en la VCN que aún no están presentes en la hoja de Excel CD3 (ya que estos detalles se toman inicialmente del separador Subredes). Para sincronizarlos con el archivo de Excel, vuelva a crear setupoci Pipeline utilizando la misma hoja de Excel que la anterior, defina el flujo de trabajo como Crear recursos en OCI, seleccione Red en las opciones principales y, a continuación, en las siguientes subopciones.

    Security Rules  ---> Export Security Rules (From OCI into SecRulesinOCI sheet), Add/Modify/Delete Security Rules (Reads SecRulesinOCI sheet) 
    
    Route Rules     ---> Export Route Rules (From OCI into RouteRulesinOCI sheet), Add/Modify/Delete Route Rules (Reads RouteRulesinOCI sheet)
    
    DRG Route Rules ---> Export DRG Route Rules (From OCI into DRGRouteRulesinOCI sheet), Add/Modify/Delete DRG Route Rules (Reads DRGRouteRulesinOCI sheet)
    
  6. Especifique el nombre del compartimento. Haga clic en Crear y las etapas de pipeline de configuración comiencen a ejecutarse.

  7. La hoja de Excel se rellenará con los datos Reglas de seguridad, Reglas de ruta y Reglas de ruta de DRG. Los archivos tfvars de Terraform se generan para estos servicios.

  8. El archivo Excel actualizado que contiene los datos exportados de OCI está presente en Build Artifacts de la compilación setupoci concreta. El archivo Excel también está presente en el contenedor en /cd3user/tenancies/<prefix>.

  9. Haga clic en los logs de etapa de Red y haga clic en el enlace para la creación de pipeline de aplicación de red. El plan de terraform debe mostrar No hay cambios que infieran que estos servicios en OCI y CD3 están sincronizados.

  10. De esta forma se completa el proceso de creación de recursos en OCI. Verifique los recursos creados en la consola de OCI.

Tarea 4: Exportación de recursos de OCI

Tarea 4.1: Descarga del archivo CD3-Blank-template.xlsx

Para el flujo de trabajo de exportación, el kit de herramientas sobrescribe los datos existentes en la hoja de servicio concreta. Por lo tanto, se recomienda utilizar CD3-Blank-template.xlsx, que no tiene datos por defecto.

Descargue la plantilla en blanco CD3 desde aquí: CD3-Blank-template.xlsx.

Tarea 4.2: Conexión a Jenkins

  1. Inicie Jenkins y acceda a él mediante los siguientes comandos desde el contenedor.

    1. Para iniciar Jenkins, utilice el comando /usr/share/jenkins/jenkins.sh &.

    2. Para acceder a Jenkins, utilice esta URL https://<IP Address of the machine hosting docker container>:8443.

  2. Inicie sesión en Jenkins.

    Nota: Si accede a la URL de Jenkins por primera vez, configure las credenciales de conexión.

    excel_template

Tarea 4.3: Ejecutar pipeline de setupoci

  1. En el panel de control de Jenkins, hay carpetas con nombres <prefix> presentes. Haga clic en el nombre <prefix> con el que está trabajando. Tiene el pipeline de setupoci correspondiente y la carpeta terraform_files. Haga clic en pipeline de configuración y en Crear con parámetros.

  2. En la sección Plantilla de Excel, cargue el archivo de Excel recuperado en la tarea 4.1.

  3. En Flujo de trabajo, seleccione Exportar recursos existentes desde OCI (flujo de trabajo no de campo verde).

  4. En MainOptions, seleccione Exportar identidad, Exportar red y Exportar recursos informáticos.

  5. En SubOptions, seleccione Exportar compartimentos/grupos/políticas para identidad y Exportar todos los componentes de red para red y Exportar instancias (excluye instancias iniciadas por OKE) para recursos informáticos.

    Nota: Si es necesario, agregue detalles en AdditionalFilters para filtrar los recursos.

  6. Haga clic en Crear. Las etapas de pipeline de setupoci se ejecutan en orden para cada uno de los servicios.

    excel_template

  7. Compruebe los logs en la etapa Ejecutar comandos de importación. Si se muestra como correcto, los pipelines de terraform respectivos disparados deben mostrar la etapa Plan como Sin cambios.

    Nota: Si encuentra algún cambio en el plan, revíselo y aplíquelo según sea necesario.

  8. El archivo Excel actualizado que contiene los datos exportados de OCI está presente en Build Artifacts de la compilación setupoci concreta. El archivo Excel también está presente en el contenedor en /cd3user/tenancies/<prefix>.

Confirmaciones

Más recursos de aprendizaje

Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de formación gratuita en el canal YouTube de Oracle Learning. Además, visita education.oracle.com/learning-explorer para convertirte en un Oracle Learning Explorer.

Para obtener documentación sobre el producto, visite Oracle Help Center.