Como criar um cluster de contêiner

Nesta página, você aprende a criar um cluster de contêiner no Kubernetes Engine.

Visão geral

Ao desenvolver um cluster, você especifica o número e o tipo de instâncias de node a serem criados nele. As instâncias de node inicialmente criadas em um cluster tornam-se o pool de nodes padrão.

Quando você cria um cluster, o Kubernetes Engine cria um mestre do cluster e os nodes na quantidade e tipo especificados. O Kubernetes Engine cria um firewall e rotas de rede para os nodes, de modo que eles possam se comunicar entre si.

Antes de começar

Prepare-se para a tarefa executando as seguintes etapas:

  • Verifique se o Cloud SDK está instalado.
  • Defina o código de projeto padrão:
    gcloud config set project [PROJECT_ID]
  • Defina a zona de computação padrão:
    gcloud config set compute/zone [COMPUTE_ZONE]

Como criar um cluster

Crie um cluster de contêiner com a ferramenta de linha de comando gcloud ou o Console do GCP.

Console

Para criar um cluster usando o Console do GCP, siga estas etapas:

  1. Acesse o menu "Kubernetes Engine" no Console do GCP.

    Acessar o menu do Kubernetes Engine

  2. Clique em Criar cluster. Os seguintes campos são obrigatórios:

    • Nome: o nome que você escolheu para o cluster. Ele precisa ser exclusivo no projeto e na zona.
    • Zona: a zona de computação do Compute Engine em que o cluster será criado.
    • Tamanho do cluster: o número de nodes a serem criados no cluster. É preciso ter uma cota de recursos disponível para os nodes e respectivos recursos (como rotas de firewall).
    • Tipo de máquina: tipo de máquina do Compute Engine a ser usado nas instâncias. A cobrança varia de acordo com cada tipo de máquina. O tipo de máquina padrão é n1-standard-1. Para informações sobre preços, consulte a lista de preços.
  3. Clique em Criar.

gcloud

Para criar um cluster de contêiner com a ferramenta de linha de comando gcloud, use o comando gcloud container clusters:

gcloud container clusters create [CLUSTER_NAME] [--zone [COMPUTE_ZONE]]

em que [CLUSTER_NAME] é o nome que você escolhe para o cluster. A sinalização --zone opcional modifica a propriedade compute/zone padrão definida por gcloud config set compute/zone.

Veja abaixo algumas sinalizações opcionais que você pode especificar:

  • --additional-zones: conjunto de zonas de computação adicionais em que o volume do node do cluster precisa ser replicado. Todas as zonas precisam estar na mesma região que a zona principal do cluster. O mesmo volume do node é replicado em todas elas. Assim, um cluster com quatro nodes e duas zonas adicionais teria 12 nodes no total (quatro na zona principal e quatro em cada zona adicional).
  • --cluster-version: versão do Kubernetes a ser usada para o mestre e os nodes. Padronizado com a versão especificada pelo servidor.
  • --enable-basic-auth: ativa a autenticação básica (nome de usuário/senha) do cluster. Essa sinalização é um alias de --username=admin. O --no-enable-basic-auth é um alias de --username="", que cria o cluster sem a autenticação HTTP básica.
  • --image-type: imagem do node de base em que os nodes são executados no cluster. Para ver o tipo de imagem padrão e a lista de tipos de imagens disponíveis, execute gcloud container get-server-config.
  • --machine-type: tipo de máquina do Compute Engine a ser usado nos nodes no cluster. Se omitido, o padrão n1-standard-1 será usado.
  • --num-nodes : número de nodes a serem criados no cluster. É preciso ter uma cota de recursos disponível para os nodes e respectivos recursos (como rotas de firewall).

Para ver a lista completa de sinalizações opcionais, consulte a documentação de gcloud container clusters create.

Como ver os clusters

Console

Para ver os clusters, visite o menu do Kubernetes Engine no Console do GCP.

Acessar o menu do Kubernetes Engine

Para ver mais informações sobre um cluster, selecione-o na lista.

gcloud

Para ver um cluster específico, execute o seguinte comando:

gcloud container clusters describe [CLUSTER_NAME]

Para ver todos os clusters em uma zona específica:

gcloud container clusters list

Como definir o cluster padrão

Se você tiver vários clusters, precisará definir um cluster padrão para as ferramentas de linha de comando gcloud e kubectl.

Primeiro, defina o cluster padrão para gcloud. Para isso, basta executar o seguinte comando:

gcloud config set container/cluster [CLUSTER_NAME]

Em seguida, passe as credenciais do cluster para o kubectl:

gcloud container clusters get-credentials [CLUSTER_NAME]

Esse comando adiciona as credenciais de autenticação do cluster ao arquivo kubeconfig em seu ambiente.

O kubectl usa o Application Default Credentials para se autenticar no cluster. Para garantir que o kubectl tenha as credenciais apropriadas, execute:

gcloud auth application-default login

Esse comando abre uma janela do navegador que solicita o login na conta do Google Cloud Platform. Depois que você fizer login, as credenciais de autenticação serão geradas.

Como passar credenciais do cluster para o kubectl

Quando você cria um cluster com o gcloud, as credenciais de autenticação dele são adicionadas ao arquivo local kubeconfig:

Creating cluster...done.
kubeconfig entry generated for cluster.

Se você criou um cluster com o Console do GCP ou com o gcloud em uma máquina diferente, é necessário disponibilizar as credenciais dele para o kubectl no ambiente atual.

Para passar as credenciais do cluster para o kubectl, execute o seguinte comando:

gcloud container clusters get-credentials [CLUSTER_NAME]

Você só precisa executar esse comando uma vez por cluster e por máquina. Por exemplo, se o cluster foi criado no laptop, execute get-credentials no desktop para acessá-lo de lá.

Próximas etapas

Para saber mais sobre clusters, consulte a seguinte documentação:

Recursos de cluster

Recursos de node

Como administrar clusters

Conceitos de cluster

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…