É possível configurar implantações automáticas para as cargas de trabalho no Google Kubernetes Engine (GKE).
Nesta página, mostramos como configurar um pipeline simples de integração/entrega contínua (CI/CD) para a carga de trabalho. Quando você envia uma alteração para seu repositório, o Cloud Build cria e implanta o contêiner automaticamente no Cluster do GKE.
Como funciona uma implantação automática
Se você tiver uma carga de trabalho que faça referência a uma imagem de contêiner único no GKE, será possível configurar uma implantação automática. Assim, o aplicativo será recriado e implantado novamente sempre que uma alteração de código for inserida no repositório.
Com a implantação automática, você define a carga de trabalho como um arquivo YAML e a armazena no repositório seguindo as práticas recomendadas. O GKE gera o YAML que pode ser usado para isso.
Você tem duas opções para usar arquivos YAML:
Se você ainda não tiver um arquivo YAML que defina sua carga de trabalho, use o arquivo YAML gerado. Salve o arquivo YAML no seu repositório. O Cloud Build o utiliza para implantar a carga de trabalho todas as vezes.
Se você já tiver um arquivo YAML que defina sua carga de trabalho, poderá apontar o GKE para o local dele no seu repositório. É possível comparar o arquivo YAML no seu repositório com o arquivo YAML recomendado para garantir que você está implantando a carga de trabalho correta da maneira certa.
Antes de começar
Antes de começar, verifique se você realizou as tarefas a seguir:
- Ativar a API Google Kubernetes Engine. Ativar a API Google Kubernetes Engine
- Se você quiser usar a Google Cloud CLI para essa tarefa,
instale e, em seguida,
inicialize a
CLI gcloud. Se você instalou a CLI gcloud anteriormente, instale a versão
mais recente executando
gcloud components update
.
Ative as seguintes APIs extras:
Cloud Build
Cloud Source Repositories
Artifact Registry
Requisitos
As implantações automatizadas têm os seguintes requisitos:
Só é possível usar uma implantação automatizada com cargas de trabalho do tipo
Deployment
que especificam uma única imagem de contêiner. Cargas de trabalho de vários contêineres e de outros tipos (por exemplo,ReplicaSet
) não são compatíveis.Para criar a imagem, seu repositório de código-fonte precisa ter um Dockerfile.
É possível hospedar esse repositório em um dos seguintes produtos:
- Cloud Source Repositories
- GitHub
- Bitbucket
Se você usa o GitHub ou o Bitbucket, precisa conceder ao Google Cloud acesso ao seu repositório.
Armazene a imagem do contêiner no Artifact Registry, no mesmo projeto do Google Cloud que tem o Cluster do GKE. Você precisa ter a imagem no Artifact Registry e implantá-la pelo menos uma vez para ter uma carga de trabalho no GKE.
Como criar a implantação automática
Para criar uma implantação automatizada, siga estas etapas:
Acesse a página Cargas de trabalho no console do Google Cloud.
Na lista de cargas de trabalho, clique no nome da implantação que você quer modificar.
Clique em list Ações > Implantação automatizada.
No painel Automatizar a implantação, siga estas etapas:
Em Repositório de origem, escolha seu repositório de código-fonte:
Na lista suspensa Provedor de repositório, escolha o provedor do repositório
Uma implantação automatizada é compatível com os hosts de controle de origem a seguir:
- Cloud Source Repositories
- GitHub
Bitbucket
Se você estiver usando o GitHub ou o Bitbucket, faça a autenticação com seu nome de usuário e senha.
Na lista suspensa Repositório, selecione o nome do repositório que contém o código-fonte da implantação.
Clique em Continuar.
Em Configurações do build, especifique as informações de configuração da compilação:
- Insira o nome da ramificação que você quer usar para criar ou uma expressão
regular (RegExp2)
para corresponder a uma ou mais ramificações. A ramificação padrão é
master
. Quando você executa o push para essa ramificação, o Cloud Build cria o aplicativo. - Digite o caminho relativo do diretório do Dockerfile.
Digite o nome do Dockerfile.
Clique em Continuar.
- Insira o nome da ramificação que você quer usar para criar ou uma expressão
regular (RegExp2)
para corresponder a uma ou mais ramificações. A ramificação padrão é
Em Configuração de implantação automatizada, forneça o local do arquivo YAML da configuração.
O sistema gera automaticamente um arquivo YAML, que pode ser usado para preencher o arquivo YAML no seu repositório.
Clique em Ver o YAML recomendado pelo Google para ver o arquivo YAML gerado.
Compare-o com o próprio arquivo YAML, se você o tiver, e atualize o seu com base nesse.
Caso contrário, crie um novo arquivo e preencha-o com o YAML gerado. Isso ajuda a garantir que a carga de trabalho implantada corresponda ao que está sendo executado no momento. O arquivo pode ter qualquer nome, mas precisa ter uma extensão
.yaml
ou.yml
.Especifique o caminho relativo para o diretório que contém o arquivo YAML.
Se houver mais de um arquivo YAML no diretório especificado, o GKE usará todos eles.
Clique em Configurar para concluir a configuração da implantação automática.
Talvez seja necessário conceder permissões à conta de serviço do Cloud Build. Essa permissão é obrigatória.
O que vem depois
Depois de configurar a implantação automática para a carga de trabalho selecionada, você terá um gatilho do Cloud Build que cria uma imagem de contêiner depois do envio para a ramificação selecionada do repositório. O Cloud Build também implanta uma nova revisão da carga de trabalho no cluster em que a imagem original foi implantada.
Para mais informações sobre sua carga de trabalho, consulte a página Detalhes de implantação (guia "Histórico de revisões").