Modelos de implementação
Os modelos de implementação ajudam você a entender seu processo de implementação de aplicativo em clusters
Implementação baseada em push
O modelo de implementação baseado em push implementa o seu aplicativo em um único cluster O pipeline de implantação se conecta ao cluster e aplica os arquivos de implantação. Este modelo não requer a instalação de nenhum operador ou agente no seu cluster.
Você pode usar qualquer ferramenta de implantação que possa ser executada a partir do pipeline de implantação no cluster de destino, por exemplo:
- kubectl (ou
ocpara Red Hat OpenShift on IBM Cloud ) para aplicar os manifestos do Kubernetes. - Helm para instalar ou atualizar uma versão do gráfico. O gráfico pode ser armazenado no repositório de inventário, assim como qualquer outro ativo de implantação.
Os scripts de implantação fazem parte do repositório de implantação, e você pode personalizá-los para atender aos requisitos do seu aplicativo e do seu cluster. DevSecOps fornece scripts auxiliares, conhecidos como biblioteca commons, que abrangem ações de implantação.
Implementação baseada em pull
O modelo de implementação baseado em pull é adequado para implementações de aplicativos de vários clusters Esse modelo usa o IBM Cloud Satellite Config como a ferramenta de implementação para implementar em diversos clusters. Para obter mais informações, consulte Entendendo o Satellite Configuração.
O pipeline de implantação não se conecta a cada cluster. Em vez disso, ele publica os arquivos de implantação no Satellite Config, e um agente que é executado em cada cluster os recupera. Os clusters que recebem a mesma implantação são agrupados no grupo de clusters “ Satellite ”.
Satellite A configuração implanta definições de recursos do Kubernetes. Se seu aplicativo estiver empacotado como um gráfico do tipo “ Helm ” ou como sobreposições do tip Kustomize, converta-o primeiro em manifestos do tipo “ Kubernetes ”, por
exemplo, usando helm template ou kustomize build, e, em seguida, envie os manifestos gerados como a versão de configuração.
Para uma implementação baseada em pull, conclua estas etapas:
- Crie ou atualize as configurações necessárias do Satellite e suas versões para os arquivos de implantação.
- Crie ou atualize as assinaturas de configuração do Satellite com as configurações do Satellite e as versões que precisam ser implantadas.
- Após a atualização das assinaturas, o agente Razee instalado nos clusters obtém as implantações mais recentes do Satellite Config e as implanta em todos os clusters.
Escolha de um modelo de implantação
| Consideração | Implementação baseada em push | Implementação baseada em pull |
|---|---|---|
| Target | Um Cluster único | Um grupo de aglomerados |
| Ferramenta de implementação | kubectl, oc, Helm, Kustomize ou qualquer ferramenta que seja executada no pipeline |
Satellite Config |
| Componente no cluster | Nenhum | Satellite Agente de configuração |
| Acesso ao cluster | O pipeline precisa de credenciais para acessar o cluster | O agente no cluster recupera a implantação, e o pipeline precisa ter acesso apenas à configuração d Satellite |
| Gráficos de Helm | Instalado ou atualizado diretamente com Helm | Gerados em manifestos antes do upload |
Para obter mais informações sobre como selecionar o destino de implantação, consulte “Implantando seu aplicativo em um destino ”.