Guia passo a passo para instalar e configurar o Argo CD no Kubernetes
O Argo CD é uma ferramenta de Continuous Delivery para Kubernetes, que facilita a implantação e gerenciamento de aplicativos em clusters Kubernetes. Neste guia, mostraremos como instalar e configurar o Argo CD em seu cluster Kubernetes.
Visão geral:
https://argo-cd.readthedocs.io/en/stable/operator-manual/architecture/
Um exemplo de arquitetura para uso do ARGO.
Servidor de API
O servidor de API é um servidor gRPC/REST que expõe a API consumida pelos sistemas de IU da Web, CLI e CI/CD. Tem as seguintes responsabilidades:
- gerenciamento de aplicativos e relatórios de status
- invocação de operações de aplicativos (por exemplo, sincronização, reversão, ações definidas pelo usuário)
- repositório e gerenciamento de credenciais de cluster (armazenado como segredos K8s)
- autenticação e delegação de autenticação para provedores de identidade externos
- imposição de RBAC
- ouvinte/encaminhador para eventos de webhook do Git
Servidor de repositório
O servidor de repositório é um serviço interno que mantém um cache local do repositório Git contendo os manifestos do aplicativo. Ele é responsável por gerar e retornar os manifestos do Kubernetes quando fornecidos as seguintes entradas:
- URL do repositório
- revisão (commit, tag, branch)
- caminho do aplicativo
- configurações específicas do modelo: parâmetros, valores do leme.yaml
Controlador de aplicativos
O controlador de aplicativo é um controlador Kubernetes que monitora continuamente os aplicativos em execução e compara o estado ativo atual com o estado de destino desejado (conforme especificado no repositório). Ele detecta OutOfSync
o estado do aplicativo e, opcionalmente, executa ações corretivas. Ele é responsável por invocar quaisquer ganchos definidos pelo usuário para eventos de ciclo de vida (Pré-sincronização, Sincronização, Pós-sincronização)
Pré-requisitos:
- Um cluster Kubernetes em execução.
- Acesso ao cluster Kubernetes usando a ferramenta de linha de comando
kubectl
. - Conhecimento básico do Kubernetes e da linha de comando.
Passo 1: Instalar o Argo CD
- Abra um terminal e execute o seguinte comando para instalar o Argo CD no cluster Kubernetes:
kubectl create namespace argocd
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
- Verifique se os pods do Argo CD foram implantados corretamente executando o seguinte comando:
kubectl get pods -n argocd
Passo 2: Acessar o Argo CD
- Execute o seguinte comando para expor o serviço do Argo CD através de um balanceador de carga:
kubectl patch svc argocd-server -n argocd -p '{"spec": {"type": "LoadBalancer"}}'
- Aguarde alguns minutos e execute o seguinte comando para obter o endereço IP externo do Argo CD:
kubectl get svc argocd-server -n argocd -o jsonpath='{.status.loadBalancer.ingress[0].ip}'
- Abra um navegador da web e acesse
http://<endereço-ip-externo>:8080
para acessar a interface do Argo CD.
Passo 3: Configurar o Argo CD
- Na tela de login do Argo CD, utilize as credenciais padrão:
- Usuário:
admin
- Senha: Execute o seguinte comando para obter a senha padrão:
- Usuário:
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d
- Após fazer login, você será redirecionado para o painel principal do Argo CD.
Passo 4: Adicionar um repositório Git
- Clique em “Settings” no painel lateral esquerdo e, em seguida, clique em “Repositories” e “New Repository”.
- Preencha os detalhes do repositório Git, como URL, nome e credenciais, se necessário.
- Clique em “Save” para adicionar o repositório Git ao Argo CD.
Passo 5: Implantar um aplicativo com o Argo CD
- Clique em “New App” no painel principal.
- Preencha os detalhes do aplicativo, como nome, projeto e diretório do repositório.
- Especifique o tipo de app que vai fazer
O foco aqui é instalar e configurar o ARGOCD, e também seu conceito.
Depois de utilizar o ARGOCD a administração do ambiente é muito mais produtiva.
Espero ter ajudado.
Último vídeo
Novidades via inbox
Fique por dentro no meu Boletim digital toda semana um conteúdo novo
Can you explain the process of setting up Argo CD on Kubernetes?
É possível.
Sim, sem problemas, em um conteiner.