Note:
- Este tutorial requiere acceso a Oracle Cloud. Para registrarse para obtener una cuenta gratuita, consulte Introducción a la cuenta gratuita de Oracle Cloud Infrastructure.
- Utiliza valores de ejemplo para credenciales, arrendamiento y compartimentos de Oracle Cloud Infrastructure. Al finalizar la práctica, sustituya estos valores por otros específicos de su entorno en la nube.
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.
Objetivos
- Inicie el contenedor CD3 con un solo clic y, a continuación, cree, exporte recursos informáticos, de red e identidad de OCI mediante pipelines de Jenkins.
Requisitos
-
Política de Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) para permitir al usuario o principal de instancia gestionar los servicios que se deben crear o exportar mediante el kit de herramientas.
-
El usuario que despliega la pila debe tener acceso para iniciar la pila de OCI Resource Manager, la instancia informática y los recursos de red.
Tarea 1: Configuración del contenedor del kit de herramientas
-
Haga clic en Desplegar en Oracle Cloud para iniciar la pila de OCI Resource Manager que crea CD3 WorkVM.
-
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
. -
Compruebe la sección Ejecutar Aplicación en la parte inferior y haga clic en Crear.
-
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.
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
-
Vaya a
cd /cd3user/oci_tools/cd3_automation_toolkit/user-scripts/
y abra el archivotenancyconfig.properties
. -
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. -
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
. -
Deje el parámetro
outdir_structure_file
en su valor por defecto para agrupar los archivosauto.tfvars
generados para cada servicio. -
Para la herramienta IaC, se puede seleccionar terraform o tofu. El valor por defecto es terraform. Para utilizar OpenTofu, especifique tofu.
-
En Parámetros avanzados para DevOps, seleccione
yes
para el parámetrouse_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.
-
Guarde el archivo y ejecute
createTenancyConfig.py
para inicializar el entorno y empezar a utilizar CD3.python createTenancyConfig.py tenancyconfig.properties
-
Verifique la salida.
-
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
-
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.
-
Abra
/cd3user/tenancies/<prefix>/terraform_files/<region>/compute/variables_<region>.tf
desde el contenedor. En la variableinstance_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). -
En la variable
instance_source_ocids
, incluya el nombre de variable especificado en la hoja de Excel para la imagen de origenmyimageocid
y asigne su OCID como el valor correspondiente. Las siguientes capturas de pantalla son de referencia. -
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
-
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
.
-
-
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 carpetaterraform_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.
-
En la sección Plantilla de Excel, cargue el archivo Excel recuperado en la tarea 3.1.
-
En Flujo de trabajo, seleccione Crear nuevos recursos en OCI (flujo de trabajo de campo verde).
-
En MainOptions, seleccione Identidad, Red y Recursos informáticos.
-
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.
-
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
-
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.
-
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.
-
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.
-
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.
-
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)
-
Especifique el nombre del compartimento. Haga clic en Crear y las etapas de pipeline de configuración comiencen a ejecutarse.
-
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. -
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>
. -
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.
-
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
-
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
.
-
-
Inicie sesión en Jenkins.
Nota: Si accede a la URL de Jenkins por primera vez, configure las credenciales de conexión.
Tarea 4.3: Ejecutar pipeline de setupoci
-
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 carpetaterraform_files
. Haga clic en pipeline de configuración y en Crear con parámetros. -
En la sección Plantilla de Excel, cargue el archivo de Excel recuperado en la tarea 4.1.
-
En Flujo de trabajo, seleccione Exportar recursos existentes desde OCI (flujo de trabajo no de campo verde).
-
En MainOptions, seleccione Exportar identidad, Exportar red y Exportar recursos informáticos.
-
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.
-
Haga clic en Crear. Las etapas de pipeline de setupoci se ejecutan en orden para cada uno de los servicios.
-
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.
-
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>
.
Enlaces relacionados
Confirmaciones
- Autores: Lasya Vadavalli (ingeniero sénior de nube), Dipesh Kumar Rathod (arquitecto principal maestro de servicios en la nube, infraestructura)
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.
Configure CD3 with Jenkins to Create and Export Oracle Cloud Infrastructure Resources
F95142-04
October 2024