October DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsSlow PC?RecommendedPC slow today? Run a repair scan before it gets worseResolve common Windows issues and optimize system performance.Scan NowOctober DealsAmazon USDeal season is back - check today's better picksAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
World desk6 min

GitOps na prática: como estruturar repositórios para Argo CD

Não existe layout universal para GitOps com Argo CD. Organize o repositório em torno de ownership, promoção, renderização e permissões, usando ApplicationSet, app-of-apps e sync waves conforme a necessidade real.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Não há uma árvore de diretórios obrigatória para usar Argo CD. Estruture o Git para deixar claros os responsáveis, os ambientes, os destinos de deploy e as permissões; escolha depois a forma de organizar os manifests e as ferramentas de renderização. Separar configuração de implantação do código da aplicação pode facilitar auditoria e controle de acesso, mas é uma decisão contextual, não uma regra universal.

O que GitOps significa na operação com Argo CD

GitOps é um modelo operacional em que o estado desejado é declarado, versionado, obtido automaticamente por agentes e continuamente reconciliado. Esses quatro princípios são descritos pelo OpenGitOps. O Argo CD compara o estado observado no cluster com o estado desejado definido na origem configurada e trabalha para reconciliá-los.

As an Amazon Associate I earn from qualifying purchases.

Isso torna o repositório mais do que um lugar para guardar YAML: ele é parte do processo que define o que será aplicado, por quem e em qual cluster ou namespace. Por isso, a organização deve facilitar revisão, rastreabilidade e limites de acesso, além de ser compreensível para quem opera a plataforma.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Escolha a estrutura pelos limites reais da equipe

O Argo CD pode renderizar manifests de diretórios com YAML ou JSON, Kustomize, Helm, Jsonnet e plugins de configuração. Não é necessário adotar uma única ferramenta ou layout para todos os componentes. A documentação do Argo CD recomenda considerar um repositório separado para manifests por motivos como histórico de auditoria mais limpo, permissões distintas entre equipes e prevenção de certos ciclos de gatilhos em CI. Isso não significa que separar código e configuração seja sempre a melhor escolha.

Decisão Quando tende a ajudar Trade-off a considerar
Código e configuração no mesmo repositório Quando uma mudança de aplicação e sua configuração de deploy precisam ser revisadas e coordenadas juntas. Permissões e histórico de mudanças de implantação podem ficar ligados ao ciclo de desenvolvimento da aplicação.
Repositório separado para configuração Quando a equipe precisa de revisão de deploy, auditoria ou acesso separados do código da aplicação. Uma mudança coordenada pode exigir alterações em mais de um repositório e um processo claro para relacioná-las.

Defina a unidade de aplicação

Um diretório ou conjunto de manifests por aplicação favorece ownership e ciclo de deploy independentes. Uma unidade maior pode fazer sentido quando vários componentes precisam ser entregues juntos. O critério útil é a unidade operacional real: quem aprova a mudança, quem responde por ela e se pode ser implantada independentemente.

Torne os ambientes e destinos visíveis

Use diretórios, overlays ou parâmetros para explicitar diferenças entre ambientes e destinos, conforme o renderizador escolhido. Uma árvore demonstrativa pode separar aplicações e ambientes, mas seus nomes e níveis devem refletir a organização da equipe, não uma convenção que todos precisem copiar.

deploy-config/
  apps/
    catalog/
      base/
      overlays/
        staging/
        production/
  platform/
    monitoring/
  clusters/
    cluster-a/
      applications/

Essa é apenas uma ilustração: o Argo CD não exige essa hierarquia. Por exemplo, algumas equipes podem preferir repositórios ou unidades separadas por cluster, enquanto outras mantêm as configurações de ambientes próximas à aplicação. O importante é que o caminho de cada Application aponte para uma origem entendida e revisável.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Promova mudanças com referências previsíveis

Uma referência a branch ou HEAD acompanha o conteúdo que muda ao longo do tempo. Uma tag ou SHA fixo identifica uma revisão específica e, portanto, oferece uma entrada mais estável para promoção entre ambientes ou para bootstrap. A orientação de cluster bootstrapping do Argo CD também chama atenção para dependências remotas de Helm e Kustomize: elas podem mudar a renderização sem alteração no repositório local. Fixe versões ou revisões quando reprodutibilidade for importante.

Na prática, escolha explicitamente se um ambiente deve acompanhar uma referência móvel ou permanecer em uma revisão aprovada. Uma referência móvel reduz passos de atualização manual, mas também pode incorporar mudanças sem uma promoção deliberada. Uma revisão fixa melhora o controle do conteúdo implantado, mas precisa ser atualizada quando a equipe aprovar a próxima versão.

Gere Applications em escala com ApplicationSet

Um ApplicationSet gera recursos Application a partir de geradores e templates. É útil quando muitas Applications seguem um padrão e variam por cluster, aplicação ou ambiente. A documentação de bootstrap de clusters apresenta ApplicationSets como alternativa ao padrão app-of-apps; seus templates Go e funções Sprig permitem templating sem adicionar Helm apenas para essa finalidade.

Use geração quando ela tornar a criação e a manutenção das Applications mais consistentes. Se cada aplicação tiver diferenças substanciais ou ownership independente, avalie se um único template continuará claro para os responsáveis.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use app-of-apps somente com controles administrativos

No padrão app-of-apps, uma Application pai declara Applications filhas. Embora seja possível organizar os manifests das filhas com Helm, como no exemplo oficial com Chart.yaml, templates/ e values.yaml, essa disposição é ilustrativa, não obrigatória.

O limite decisivo é de privilégio: a documentação do Argo CD classifica app-of-apps como uma ferramenta para administradores, pois criar Applications em Projects arbitrários pode equivaler a privilégio administrativo. Restrinja a escrita no repositório pai a administradores e revise cuidadosamente o campo project em cada Application filha. Se o pai usa sincronização automatizada com prune, alterações podem criar, sincronizar ou excluir filhas; considere também o efeito de finalizers e da exclusão em cascata. Fixar a revisão do pai em um SHA pode tornar mais estável o conteúdo consumido.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Ordene sincronizações apenas quando houver dependências reais

Prefira separar recursos em Applications distintas ou depender da reconciliação natural quando isso atender ao caso. Se recursos dentro da mesma Application precisarem de ordem explícita, o Argo CD oferece fases de hooks e sync waves. As fases incluem PreSync, Sync, PostSync e SyncFail; waves são definidas com a annotation argocd.argoproj.io/sync-wave e ordenadas por valores inteiros do menor para o maior.

A ordenação documentada considera fase, wave, tipo de recurso e nome. Recursos não saudáveis em uma wave inicial podem impedir que a Application alcance o estado saudável. A documentação informa um atraso padrão de dois segundos entre waves, configurável pela variável ARGOCD_SYNC_WAVE_DELAY; confirme o comportamento na documentação correspondente à versão instalada, pois esse detalhe pode mudar.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Trate namespaces de Applications como uma decisão de privilégio

Por padrão, Applications ficam no namespace do control plane do Argo CD. Para permitir Applications em outros namespaces, a documentação exige configuração explícita de --application-namespaces no argocd-server e no argocd-application-controller, além de permitir os namespaces relevantes em sourceNamespaces no AppProject. O recurso é documentado a partir do Argo CD 2.5, exige instalação cluster-wide e pode ter requisitos diferentes conforme a versão usada. Consulte a documentação de Applications em qualquer namespace antes de habilitá-lo.

Configure o escopo mínimo necessário. Evite incluir namespaces controlados por usuários em Projects privilegiados: combinar controle de Application, Project e namespace pode ampliar o que um usuário consegue implantar.

Um roteiro para decidir o layout

  1. Mapeie ownership e revisão. Identifique quem mantém cada aplicação e camada de plataforma, quem aprova mudanças e quais equipes precisam de permissões distintas.
  2. Defina as unidades de deploy. Separe o que pode ser implantado e revertido independentemente do que precisa ser coordenado.
  3. Escolha como representar ambientes. Torne diferenças e destinos explícitos e decida se cada ambiente acompanha uma referência móvel ou uma revisão aprovada.
  4. Selecione o mecanismo de composição. Use ApplicationSet para gerar Applications semelhantes; considere app-of-apps apenas com controles administrativos adequados.
  5. Declare dependências verdadeiras. Evite ordenação artificial; quando a sequência for necessária dentro de uma Application, modele-a com fases ou waves e verifique o comportamento de saúde.
  6. Revise fronteiras de acesso. Confira permissões no repositório, Projects, namespaces permitidos e quem pode alterar as Applications que controlam outras Applications.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Crashes, No Sound, or Screen Glitches?Free driver scan
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.