Observação:

Configurar o CD3 com o Jenkins para Criar e Exportar Recursos do Oracle Cloud Infrastructure

Introdução

O kit de ferramentas de automação Cloud Deployment Design Deliverable (CD3) permite criar, exportar e gerenciar recursos da Oracle Cloud Infrastructure (OCI) sem esforço, convertendo facilmente modelos do Microsoft Excel em módulos Terraform totalmente funcionais.

O kit de ferramentas também suporta gerenciamento contínuo de recursos usando o serviço OCI DevOps Git e pipelines Jenkins.

workflow

Objetivos

Pré-requisitos

Tarefa 1: Configurar o Contêiner do Kit de Ferramentas

  1. Clique em Implantar no Oracle Cloud para iniciar a pilha do OCI Resource Manager que cria o CD3 WorkVM.

    Deploy_To_OCI

  2. Aceite os termos e as condições. Informe a rede, o compartimento, o nome da VM, a forma etc. para que o workVM seja criado.

    Observação: Para manter um ambiente seguro, forneça uma faixa CIDR de origem específica para acessar a VM. Não use 0.0.0.0/0.

  3. Verifique a seção Executar Aplicação na parte inferior e clique em Criar.

  4. Depois que o job de aplicação for bem-sucedido, clique no job e role para baixo até o final dos logs.

    Localize os detalhes da VM criada e os comandos a serem executados para fazer log-in no contêiner do kit de ferramentas. Exemplo de saída mostrado na imagem a seguir.

    rmstackoutput

    Após fazer log-in no contêiner, conecte-o à tenancy do OCI para executar as APIs do OCI.

Tarefa 2: Conectar o Contêiner à Tenancy do OCI

  1. Navegue até cd /cd3user/oci_tools/cd3_automation_toolkit/user-scripts/ e abra o arquivo tenancyconfig.properties.

  2. Adicione os valores de configuração necessários nas seções Parâmetros obrigatórios e Parâmetros de Detalhes da Autorização.

    Observação: Neste tutorial, usaremos a autenticação de chave de API. Mantenha auth_mechanism com seu valor padrão.

  3. Na Console do OCI, em Definições do usuário, faça upload da chave pública para APIkeys. Coloque a chave privada dentro do contêiner. Copie os valores de configuração necessários e cole sob os parâmetros correspondentes no arquivo tenancyconfig.properties.

  4. Deixe o parâmetro outdir_structure_file com seu valor padrão para agrupar os arquivos auto.tfvars gerados para cada serviço.

  5. Para a ferramenta IaC, é possível selecionar terraform ou tofu. O padrão é terraform. Para usar OpenTofu, especifique tofu.

  6. Em Parâmetros Avançados para DevOps, selecione yes para o parâmetro use_oci_devops_git.

    Isso criará um Repositório Git do OCI DevOps para os arquivos terraform gerados, o bucket do OCI Object Storage para o arquivo de estado e um tópico de Notificação do OCI para notificar as alterações no repositório DevOps.

  7. Salve o arquivo e execute createTenancyConfig.py para inicializar o ambiente e começar a usar CD3.

    python createTenancyConfig.py tenancyconfig.properties
    
  8. Verifique a saída.

  9. Em seguida, para criar recursos no OCI, siga a Tarefa 3 ou para exportar recursos, siga a Tarefa 4.

Tarefa 3: Criar Recursos no OCI

Tarefa 3.1: Preparar Arquivo do Excel e Variáveis

  1. Baixe o modelo do Excel pré-preenchido aqui: cd3quickstart.xlsx para este tutorial. Modifique os valores de região e compartimento com base no seu ambiente e alterne para o contêiner.

  2. Abra /cd3user/tenancies/<prefix>/terraform_files/<region>/compute/variables_<region>.tf no contêiner. Na variável instance_ssh_keys, adicione o nome da variável para chaves SSH especificadas na planilha do Excel: ssh_public_key com seu valor correspondente (conteúdo da chave).

  3. Na variável instance_source_ocids, inclua o nome da variável especificado na planilha do Excel para a imagem de origem myimageocid e designe seu OCID como o valor correspondente. As capturas de tela a seguir são para referência.

    ssh_key

    códigos-fonte

  4. Execute os comandos a seguir em sequência para sincronizar as alterações locais acima com o repositório Git DevOps.

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

Tarefa 3.2: Fazer log-in no Jenkins e Executar Pipeline de setupoci

  1. Inicie o Jenkins e acesse-o usando os comandos a seguir do contêiner.

    • Para iniciar o Jenkins, use o comando /usr/share/jenkins/jenkins.sh &.

    • Para acessar o Jenkins, use este url https://<IP Address of the machine hosting docker container>:8443.

  2. Faça login no Jenkins. No painel de controle, as pastas com nomes <prefix> estão presentes. Clique no nome <prefix> com o qual você está trabalhando. Ele tem o pipeline de setupoci correspondente e a pasta terraform_files. Clique em pipeline setupoci e Criar com Parâmetros.

    Observação: Se estiver acessando o URL do Jenkins pela primeira vez, configure as credenciais de log-in.

    excel_template

  3. Na seção Modelo do Excel, faça upload do arquivo do Excel extraído na Tarefa 3.1.

    excel_template

  4. Em Workflow, selecione Criar Novos Recursos no OCI (Workflow de Campo Verde).

  5. Em MainOptions, selecione Identidade, Rede e Computação.

  6. Em SubOptions, selecione Adicionar/Modificar/Excluir Grupos, Adicionar/Modificar/Excluir Políticas, Criar Rede, Adicionar/Modificar/Excluir Instâncias/Política de Backup de Inicialização.

  7. Clique em Construir. Os estágios do pipeline setupoci são executados em ordem.

Tarefa 3.3: Fornecer Aprovação para Cada Plano de Serviço

  1. Clique no estágio de identidade dos logs e clique no link para aplicar o build do pipeline de identidade. No estágio Obter Aprovação, clique em logs e selecione Continuar. Verifique os logs no estágio Aplicar para verificar os recursos de identidade criados.

    terraformpipeline

  2. Da mesma forma, no estágio de rede no pipeline setupoci, clique em logs e, em seguida, no link para o build do pipeline de aplicação de rede. No estágio Obter Aprovação, clique em logs e selecione Continuar. Verifique os logs no estágio Aplicar para verificar os recursos de rede criados.

  3. Clique nos logs do estágio de computação. Clique no link para calcular o build do pipeline de aplicação.

    Observação: Você notaria que o pipeline de terraform de computação falhou. Isso ocorre porque os recursos de computação dependem da rede para estarem prontos. Para resolver isso, acione o pipeline de terraform de computação manualmente depois que o pipeline de aplicação de rede for bem-sucedido. A próxima etapa mostra como executar isso.

  4. Clique em Criar Agora para o pipeline de aplicação de computação. Depois que os estágios do pipeline começarem a ser executados, no estágio Obter Aprovação, clique em logs e selecione Continuar. Verifique os logs no estágio Aplicar para verificar os recursos de computação criados.

  5. A execução de Criar Rede cria algumas regras na VCN que ainda não estão presentes na planilha do Excel CD3 (já que esses detalhes são inicialmente obtidos da guia Sub-redes). Para sincronizá-los com o arquivo do Excel, crie o Pipeline setupoci novamente usando a mesma planilha do Excel acima, defina o workflow como Criar Recursos no OCI, selecione Rede nas opções principais e, em seguida, as subopções abaixo.

    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 o nome do Compartimento. Clique em Criar e os estágios do Pipeline setupoci começam a ser executados.

  7. A planilha do Excel será preenchida com dados de Regras de Segurança, Regras de Roteamento e Regras de Roteamento do DRG. Os arquivos tfvars do Terraform são gerados para esses serviços.

  8. O arquivo do Excel atualizado que contém dados exportados do OCI está presente em Criar Artefatos do build setupoci específico. O arquivo do Excel também está presente dentro do contêiner em /cd3user/tenancies/<prefix>.

  9. Clique nos logs do estágio Rede e clique no link para o build do pipeline de aplicação de Rede. O plano terraform deve mostrar Nenhuma alteração inferindo que esses serviços no OCI e CD3 estão em sincronia.

  10. Isso conclui o processo de criação de recursos no OCI. Verifique os recursos criados na console do OCI.

Tarefa 4: Exportar Recursos do OCI

Tarefa 4.1: Fazer Download do Arquivo CD3-Blank-template.xlsx

Para fluxo de trabalho de exportação, o kit de ferramentas substitui quaisquer dados existentes na folha de serviço específica. Portanto, é recomendável usar CD3-Blank-template.xlsx, que não tem dados por padrão.

Faça download do modelo em branco CD3 aqui: CD3-Blank-template.xlsx.

Tarefa 4.2: Fazer log-in no Jenkins

  1. Inicie o Jenkins e acesse-o usando os comandos a seguir do contêiner.

    1. Para iniciar o Jenkins, use o comando /usr/share/jenkins/jenkins.sh &.

    2. Para acessar o Jenkins, use este url https://<IP Address of the machine hosting docker container>:8443.

  2. Faça login no Jenkins.

    Observação: Se estiver acessando o URL do Jenkins pela primeira vez, configure as credenciais de log-in.

    excel_template

Tarefa 4.3: Executar Pipeline de setupoci

  1. No painel de controle do Jenkins, as pastas com nomes <prefix> estão presentes. Clique no nome <prefix> com o qual você está trabalhando. Ele tem o pipeline de setupoci correspondente e a pasta terraform_files. Clique em pipeline setupoci e Criar com Parâmetros.

  2. Na seção Modelo do Excel, faça upload do arquivo do Excel extraído na Tarefa 4.1.

  3. Em Workflow, selecione Exportar Recursos Existentes do OCI (Workflow Não Greenfield).

  4. Em MainOptions, selecione Exportar Identidade, Exportar Rede e Exportar Computação.

  5. Em SubOptions, selecione Exportar Compartimentos/Grupos/Políticas para identidade e Exportar todos os Componentes de Rede para rede e Exportar Instâncias (exclui instâncias iniciadas pelo OKE) para computação.

    Observação: Adicione detalhes em AdditionalFilters, se necessário, para filtrar recursos.

  6. Clique em Criar. Os estágios do pipeline setupoci são executados em ordem para cada um dos serviços.

    excel_template

  7. Verifique os logs no estágio Executar Comandos de Importação. Se for mostrado como bem-sucedido, os respectivos pipelines de terraform acionados deverão ter o estágio Plano mostrado como Sem Alterações.

    Observação: Se você encontrar alterações no plano, revise-as e aplique-as conforme necessário.

  8. O arquivo do Excel atualizado que contém dados exportados do OCI está presente em Criar Artefatos do build setupoci específico. O arquivo do Excel também está presente dentro do contêiner em /cd3user/tenancies/<prefix>.

Reconhecimentos

Mais Recursos de Aprendizagem

Explore outros laboratórios em docs.oracle.com/learn ou acesse mais conteúdo de aprendizado gratuito no canal Oracle Learning YouTube. Além disso, visite education.oracle.com/learning-explorer para se tornar um Oracle Learning Explorer.

Para obter a documentação do produto, visite o Oracle Help Center.