Por: @eduardoh Publicado em: 2022-08-25
Ambiente Gitlab Runner PABXFLEX
Objetivo
Este documento explica como está disposto o ambiente responsável por executar as pipelines do projeto PABXFLEX (legacy).
Topologia

Como provisionar novos Runners
Caso precisarmos aumentar nossa infraestrutura de Runners, devemos executar uma playbook no ambiente Bastion, o template se chama Instalação e configuração Gitlab Runner
.
Temos a seguinte estrutura nessa playbook:
install-gitlab-runner/
├── install-gitlab-runner.yml
└── roles
├── check_vars
│ └── tasks
│ └── main.yml
└── install-gitlab-runner
├── defaults
│ └── main.yml
├── files
│ └── daemon.json
└── tasks
├── clean_env.yml
├── install.yml
├── main.yml
└── register.yml
O fluxo:
- Valida o sistema operacional, só executa se for RedHat, CentOS ou AlmaLinux (não executar em Debian/Ubuntu).
- Se as VMs impactadas tiverem o serviço de Gitlab-Runner instalado, será removido.
- Será removido também arquivos de configuração e usuário padrão gitlab-runner.
- Acontecerá a instalação do Docker e Docker-Compose.
- Ajustes de performance para o Docker executar pelo SystemD e desabilita a SWAP.
- Instalação dos pacotes Gitlab-Runner, criação de usuário e permissões.
- Inicialização do serviço e registro no GitLab Server.
- Ajustes nas concorrências de Jobs simultâneos, de 1 para 3.
Na interface do AWX Bastion, iniciar processo de execução do template Instalação e configuração Gitlab Runner
:
Ajustar o inventário (caso necessário altere na aba Inventories):
Aponte quais permissões serão utilizadas para autenticar nas novas VMs:
Agora temos um passo muito importante, aqui vamos definir qual será a URL do Gitlab Server, seguido do Token do PROJETO dentro do Gitlab que desejamos adicionar nossos Runners:
Para capturar essas informações, vá até o projeto dentro do Gitlab que você deseja adicionar seus novos Runners e abra a aba CI/CD:
Nessa tela, expanda a opção Runners
e então será exibida a URL e o Token de acesso:
Agora podemos então completar nossas informações no AWX e então rodar o template:
Após finalizar, teremos o seguinte resultado:
Como vimos, não devemos ter ERROS na execução, caso hajam erros, devemos verificar os logs e corrigir o neessário.
Agora vamos voltar ao Gitlab e então veremos que os novos Runners foram adicionados com sucesso: