(PRETERIDO) Usar o Helm para implantar contêineres em um cluster Kubernetes

Dica

Para a versão atualizada deste artigo que usa o Serviço de Kubernetes do Azure, confira Instalar aplicativos com o Helm no AKS (Serviço de Kubernetes do Azure).

Aviso

O ACS (Serviço de Contêiner do Azure) está sendo preterido. Não estão sendo adicionados novos recursos ou funcionalidades ao ACS. Todas as APIs, a experiência do portal, os comandos da CLI e a documentação estão marcados como preteridos.

Em 2017, introduzimos o AKS (Serviço de Kubernetes do Azure) para simplificar o gerenciamento, a implantação e as operações do Kubernetes. Se você usar o orquestrador do Kubernetes, migre para o AKS até o dia 31 de janeiro de 2020. Para começar, confira Migrar para o Serviço de Kubernetes do Azure.

Para obter mais informações, consulte o Comunicado de preterimento do Serviço de Contêiner do Azure em Azure.com.

Helm é uma ferramenta de empacotamento de software livre que ajuda a instalar e gerenciar o ciclo de vida de aplicativos Kubernetes. Semelhante a gerenciadores de pacotes do Linux, como Apt-get e Yum, o Helm é usado para gerenciar gráficos Kubernetes, que são pacotes de recursos de Kubernetes pré-configurados. Este artigo mostra como trabalhar com o Helm em um cluster Kubernetes implantado no Serviço de Contêiner do Azure.

O Helm tem dois componentes:

  • A CLI do Helm é um cliente que é executado no computador localmente ou na nuvem

  • Tiller é um servidor que é executado no cluster Kubernetes e gerencia o ciclo de vida de seus aplicativos Kubernetes

Pré-requisitos

Noções básicas do Helm

Para exibir informações sobre o cluster Kubernetes em que você está instalando o Tiller e implantando seus aplicativos, digite o seguinte comando:

kubectl cluster-info 

informações do cluster kubectl

Depois de instalar o Helm, instale Tiller no cluster Kubernetes digitando o seguinte comando:

helm init --upgrade

Quando a instalação for concluída com êxito, você verá uma saída semelhante à seguinte:

Instalação do Tiller

Para exibir todos os gráficos do Helm disponíveis no repositório, digite o seguinte comando:

helm search 

Você ver uma saída semelhante à seguinte:

Pesquisa do Helm

Para atualizar os gráficos e obter as últimas versões, digite:

helm repo update 

Implantar um gráfico de controlador de entrada do Nginx

Para implantar um gráfico controlador de ingresso de Nginx, digite um único comando:

helm install stable/nginx-ingress 

Implantar o controlador de entrada

Se você digitar kubectl get svc para exibir todos os serviços em execução no cluster, verá que um endereço IP é atribuído ao controlador de entrada. (Enquanto a atribuição está em andamento, você vê <pending>. Leva alguns minutos para ser concluído.)

Depois que o endereço IP é atribuído, navegue até o valor do endereço IP externo para ver o back-end do Nginx em execução.

Endereço IP de entrada

Para ver uma lista de gráficos instalados no seu cluster, digite:

helm list 

Você pode abreviar o comando para helm ls.

Implantar um cliente e um gráfico MariaDB

Agora, implante um gráfico MariaDB e um cliente MariaDB para conexão com o banco de dados.

Para implantar o gráfico MariaDB, digite o seguinte comando:

helm install --name v1 stable/mariadb

em que --name é uma marcação usada para lançamentos.

Dica

Se a implantação falhar, execute helm repo update e tente novamente.

Para exibir todos os gráficos implantados no cluster, digite:

helm list

Para exibir todas as implantações em execução no cluster, digite:

kubectl get deployments 

Por fim, para executar um pod para acessar o cliente, digite:

kubectl run v1-mariadb-client --rm --tty -i --image bitnami/mariadb --command -- bash  

Para se conectar ao cliente, digite o seguinte comando, substituindo v1-mariadb pelo nome da implantação:

sudo mysql –h v1-mariadb

Agora você pode usar comandos SQL padrão para criar bancos de dados, tabelas etc. Por exemplo, Create DATABASE testdb1; cria um banco de dados vazio.

Próximas etapas

  • Para obter mais informações sobre como gerenciar gráficos de Kubernetes, consulte a Documentação do Helm.