Hi all,
Em meu
blog anterior
compartilhei minha experiência criando um aplicativo simples e único implantado em um único cluster, mas e se você precisar gerenciar centenas de aplicativos em grandes e dinâmicos ambientes implantados em diferentes clusters do SAP Kyma? Precisa manter todos eles em cada cluster? Tentarei responder a isso
?
Cluster do SAP Kyma por ambiente
Primeiramente, o Argo CD pode implantar aplicativos em múltiplos clusters do SAP Kyma a partir de um único cluster do SAP Kyma:
Multi-cluster do Argo CD
Tudo que você precisa é instalar o Argo CD CLI e registrar o novo cluster no servidor do Argo CD.
Em segundo lugar, o Argo CD fornece um controlador (que deve ser instalado separadamente da instalação principal) que permite a criação de "ApplicationSet", ao contrário de um recurso de aplicativo do Argo CD, que implanta recursos de um único repositório Git para um único cluster/namespace de destino, "ApplicationSet" utiliza automação com modelos para criar, modificar e gerenciar múltiplos aplicativos do Argo CD simultaneamente, apontando para múltiplos clusters/namespaces de destino.
ApplicationSet
Como você pode começar a imaginar, esse controlador é muito útil para gerar ambientes dinâmicos, com aplicativos dinâmicos que precisam ser implantados em clusters do SAP Kyma dinâmicos, vamos tentar usar a seguinte estrutura de repositório para lidar com nosso cenário:
Infraestrutura como Código - repositório
Podemos ver:
-
Pasta chamada "envs" que contém todos os ambientes
-
Pasta chamada "dev":
-
Que contém:
-
Pasta "argocd" --> Contém o "ApplicationSet" para este ambiente
-
Pasta "test3" --> Aplicativo SAP CAP
-
Pasta "test4" --> Aplicativo SAP CAP
-
Pasta chamada "qas" & "prd": são iguais do ponto de vista da estrutura
-
Arquivo chamado "envs-generator.yml" que representa o "ApplicationSet" para este repositório
A ideia principal deste repositório é criar um único "Aplicativo do Argo CD" (chamado "app-generator-envs") para o "ApplicationSet" do Argo CD que criará automaticamente e dinamicamente "Aplicativos do Argo CD" por ambientes usando a pasta "envs" (chamada "app-generator-
") onde esses aplicativos criarão automaticamente e dinamicamente "Aplicativos do Argo CD" por aplicativo a ser implantado usando a pasta "envs/" (chamada "app-generated--").
Uma imagem vale mais que mil palavras
Vamos ver isso em ação:
Pedro Pascal
Se unió el 07/03/2018