Como criar um cluster

Nesta página, mostramos como criar um cluster no Google Kubernetes Engine. Para saber como os clusters funcionam, consulte Arquitetura de cluster.

Antes de começar

Prepare-se para a tarefa tomando as seguintes medidas:

  • Verifique se você ativou a API Google Kubernetes Engine.
  • Ativar a API Google Kubernetes Engine
  • Verifique se o SDK do Cloud está instalado.
  • Defina o ID do projeto padrão:
    gcloud config set project [PROJECT_ID]
  • Se você estiver trabalhando com clusters zonais, defina a zona de computação padrão:
    gcloud config set compute/zone [COMPUTE_ZONE]
  • Se você estiver trabalhando com clusters regionais, defina a região de computação padrão:
    gcloud config set compute/region [COMPUTE_REGION]
  • Atualize a gcloud para a versão mais recente:
    gcloud components update

Tipos de clusters

Você pode criar quatro tipos de clusters no GKE:

Clusters zonais
Um cluster zonal é executado em uma ou mais zonas de computação em uma região. Um cluster de várias zonas executa os nós em duas ou mais zonas de computação em uma única região. Os clusters zonais executam um único mestre do cluster.
Cluster regional
Um cluster regional executa três mestres do cluster em três zonas de computação e executa nós em duas ou mais zonas de computação.
Cluster particular
Um cluster particular é um cluster zonal ou regional que oculta o próprio mestre e os nós da Internet pública por padrão.
Cluster Alfa
Um cluster Alfa é um cluster zonal ou regional experimental executado com recursos Alfa do Kubernetes ativados. Esses clusters expiram após 30 dias e não são recomendados para uso em produção.

Modelos de cluster

Ao criar um novo cluster usando o Console do GCP, você vê todos os modelos de cluster disponíveis. O modelo Padrão é selecionado automaticamente. Para saber mais sobre um modelo específico e as predefinições incluídas, clique na entrada dele. As predefinições são mostradas no painel de informações no lado direito da página.

Os seguintes modelos estão disponíveis:

  • Cluster padrão: equivalente aos padrões anteriores para um novo cluster zonal de três nós.
  • Primeiro cluster: um pequeno cluster que executa nós menos potentes e desativa alguns recursos avançados, como escalonamento automático.
  • Aplicativos com uso intenso da CPU: um cluster com nós que fornecem CPUs com vários núcleos mais potentes que um cluster padrão.
  • Aplicativos com uso intenso da memória: um cluster com nós que fornecem CPUs de vários núcleos com potência média e uma grande quantidade de memória.
  • Computação acelerada por GPU: um cluster com um pool de nós padrão configurado com nós menos potentes e um pool de nós extra ativado para GPU. O escalonamento automático está desativado por padrão.
  • Altamente disponível: o cluster é configurado como um cluster regional, com mestres do cluster disponíveis em cada zona de uma determinada região. O escalonamento automático e uma janela de manutenção estão ativados.

Depois de escolher o modelo, é possível personalizar o cluster.

Além dos modelos disponíveis, é possível clonar um cluster existente.

Como personalizar as predefinições de um modelo

Para personalizar o cluster, primeiro clique no modelo que melhor corresponde ao seu caso de uso. Antes de criar o cluster, é possível alterar qualquer campo editável.

  • Para configurar opções avançadas de todo o cluster, clique em Opções avançadas na parte inferior do formulário.
  • Para configurar as CPUs ou a memória para os nós em um determinado pool de nós, clique em Personalizar.
  • Para configurar opções avançadas para um determinado pool de nós, clique em Edição avançada.

Como clonar um cluster atual

Para usar a configuração de um cluster existente como base para o novo cluster, clique em Clonar um cluster existente em vez de um modelo de cluster. Selecione o cluster a ser clonado no menu suspenso.

Como trabalhar com vários clusters

Se você trabalha com vários clusters criados por você, por diferentes usuários no projeto ou por meio do Console do Google Cloud Platform, será necessário configurar a ferramenta de linha de comando kubectl para interagir com esses clusters.

Para saber mais, consulte Como configurar o acesso aos clusters para a kubectl.

Clusters zonais

Por padrão, um cluster é criado em uma única zona de computação. Um cluster de várias zonas executa nós em diversas zonas na mesma região. Todos os nós em um cluster de zona única ou de zonas múltiplas são controlados pelo mesmo mestre do cluster.

Os clusters de várias zonas podem ajudar a melhorar a disponibilidade dos aplicativos, executando-os em nós de várias zonas. Isso garante proteção contra inatividade no caso improvável de uma interrupção em toda a zona.

Como os clusters de várias zonas funcionam

Quando um cluster de várias zonas é criado do zero ou pela inclusão de zonas em um cluster já existente, o GKE iguala a quantidade de recursos em todas elas.

Por exemplo, suponha que você solicite dois nós, cada um com quatro núcleos, e que eles sejam distribuídos no cluster por três zonas. Nesse caso, você teria um total de 24 núcleos, com oito em cada zona.

Os recursos são distribuídos uniformemente pelas zonas para garantir que os pods sejam programados de modo equilibrado entre elas. Isso melhora a disponibilidade e a recuperação de falhas. Se os recursos de computação forem distribuídos de maneira desigual pelas zonas, o programador talvez não consiga agendar os pods uniformemente. Para garantir a distribuição uniforme dos recursos, especifique a antiafinidade do pod.

Os pools de nós em clusters de várias zonas têm automaticamente disponibilidade em várias zonas. Esses nós também recebem rótulos no Kubernetes para indicar o domínio de falha. Assim, eles podem ser considerados pelo programador do Kubernetes.

Como criar um cluster de zona única

gcloud

Para criar um cluster 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 opcional --zone modifica a propriedade padrão compute/zone definida por gcloud config set compute/zone.

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

Console

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

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

    Acessar o menu do Google Kubernetes Engine

  2. Clique em Criar cluster.

  3. Escolha Cluster padrão ou um modelo apropriado para sua carga de trabalho.

  4. Personalize o modelo se necessário. 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.
    • Tipo de local: se todos os nós no cluster estão na mesma zona ou podem estar em qualquer zona de uma determinada região.
    • Zona: a zona de computação do Compute Engine em que o cluster será criado se Tipo de local for Zonal.
    • Região: a zona de computação do Compute Engine em que o cluster será criado se o Tipo de local for Regional.
    • Pool de nós:
      • Tamanho do cluster: o número de nós a serem criados no cluster. É preciso ter uma cota de recursos disponível para os nós e respectivos recursos, como rotas de firewall.
      • Tipo de máquina: o 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 ver informações sobre preços de tipos de máquina, consulte a tabela de preços.
  5. Clique em Criar.

Depois de criar um cluster no Console do GCP, você precisa configurar a kubectl para interagir com o cluster. Para saber mais, consulte Como gerar uma entrada kubeconfig.

Como criar um cluster de várias zonas

gcloud

Para criar um cluster de várias zonas, execute o comando a seguir. Use --zone para especificar a zona para o plano de controle do cluster. Use --node-locations para especificar todas as zonas desejadas para nós:

gcloud container clusters create [CLUSTER_NAME] \
--zone [COMPUTE_ZONE] \
--node-locations [COMPUTE_ZONE],[COMPUTE_ZONE],...]`

em que:

  • [CLUSTER_NAME] é o nome que você escolheu para o cluster
  • --zone <var>[COMPUTE_ZONE]</var> é a zona para o plano de controle do cluster
  • --node-locations <var>[COMPUTE_ZONE]</var>,<var>[COMPUTE_ZONE]</var>,...] são todas as zonas em que o cluster é executado, incluindo a zona do plano de controle do cluster.

Exemplo:

gcloud container clusters create example-cluster \
--zone us-central1-a \
--node-locations us-central1-a,us-central1-b,us-central1-c

Quando a sinalização --num-nodes é omitida, o número padrão de nós por zona criado pelo cluster é três. Como três zonas foram especificadas, esse comando cria um cluster de nove nós com três nós em us-central1-a, us-central1-b e us-central1-c.

Console

Para criar um cluster de várias zonas, siga as etapas a seguir:

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

    Acessar o menu do Google Kubernetes Engine

  2. Clique em Criar cluster.

  3. Escolha Cluster padrão ou um modelo apropriado para sua carga de trabalho.

  4. No menu suspenso Zona, selecione a zona desejada para o plano de controle do cluster, como us-central1-a.

  5. Configure o cluster conforme desejado e clique em Opções avançadas.

  6. Na seção Outros locais de zona, selecione outras zonas em que você quer que o cluster seja executado.

  7. Clique em Salvar para sair da sobreposição de Opções avançadas.

  8. Clique em Criar.

Depois de criar um cluster no Console do GCP, você precisa configurar a kubectl para interagir com o cluster. Para saber mais, consulte Como gerar uma entrada kubeconfig.

Clusters regionais

Os clusters regionais distribuem recursos do Kubernetes entre várias zonas de uma região. O cluster regional cria três mestres do cluster em três zonas e, por padrão, cria nós em três zonas ou em quantas zonas você quiser.

Para saber sobre clusters regionais, consulte a página de conceito cluster regional.

Como criar um cluster regional

É possível criar um cluster regional com o Console do GCP ou a ferramenta de linha de comando gcloud.

Por padrão, quando um cluster regional é criado, os pools de nós dele são replicados em três zonas.

gcloud

Para criar um cluster regional, execute o comando a seguir:

gcloud container clusters create [CLUSTER_NAME] --region [REGION] \
[--node-locations [COMPUTE_ZONE],[COMPUTE_ZONE]...]]

em que [CLUSTER_NAME] é o nome escolhido para o cluster regional e [REGION] é a região desejada, como us-central1. Nas regiões com mais de três zonas ou em casos em que uma quantidade menor delas seja recomendada, a sinalização opcional --node-locations modifica as zonas padrão em que os nós são replicados.

Por exemplo, para criar um cluster regional com nove nós em us-west1, (três zonas com três nós cada, que é o padrão):

gcloud container clusters create my-regional-cluster --region us-west1

Para criar um cluster regional com seis nós (três zonas com dois nós cada, especificadas por --num-nodes):

gcloud container clusters create my-regional-cluster --num-nodes 2 \
--region us-west1

Para criar um cluster regional com seis nós em duas zonas (duas zonas especificadas por --node-locations com três nós cada):

gcloud container clusters create my-regional-cluster --region us-central1 \
--node-locations us-central1-b,us-central1-c

Console

Para criar um cluster regional, siga as etapas a seguir:

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

    Acessar o menu do Google Kubernetes Engine

  2. Clique em Criar cluster.

  3. Escolha o modelo de cluster Altamente disponível.

  4. No menu suspenso Região, selecione a [região][r] desejada, como us-central1.

  5. Configure o cluster conforme desejado e clique em Criar.

Depois de criar um cluster no Console do GCP, você precisa configurar a kubectl para interagir com o cluster. Para saber mais, consulte Como gerar uma entrada kubeconfig.

Clusters particulares

Para saber como criar um cluster particular, consulte o Guia de instruções do cluster particular.

Clusters Alfa

Os clusters Alfa são clusters de curta duração que executam versões estáveis ​​do Kubernetes com todas as APIs e recursos do Kubernetes ativados.

Para saber sobre clusters Alfa, consulte a página de conceito do cluster Alfa.

Como criar um cluster Alfa

gcloud

Para criar um cluster Alfa, execute o comando a seguir:

gcloud container clusters create [CLUSTER_NAME] \
    --enable-kubernetes-alpha [--zone [COMPUTE_ZONE]]
    [--cluster-version [VERSION]]

em que:

  • [CLUSTER_NAME] é o nome que você escolheu para o cluster
  • [COMPUTE_ZONE] é a [zona de computação] do Compute Engine em que o cluster será criado. A sinalização opcional --zone modifica a propriedade padrão compute/zone definida por gcloud config set compute/zone. Observação: é necessário definir a zona de computação padrão usando gcloud config set compute/zone [COMPUTE_ZONE] ou especificá-la com --zone.
  • [VERSION] é a versão do GKE a ser executada no cluster. Se não for configurada, o cluster executará a versão padrão atual documentada em Controle de versões e upgrades.

Será necessário confirmar o recebimento de um aviso de que o cluster Alfa não foi atualizado e será excluído após 30 dias:

This will create a cluster with all Kubernetes Alpha features enabled.
- This cluster will not be covered by the GKE SLA and should
  not be used for production workloads.
- You will not be able to upgrade the master or nodes.
- The cluster will be deleted after 30 days.

Console

Para criar um cluster Alfa, siga as seguintes etapas:

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

    Acessar o menu do Google Kubernetes Engine

  2. Clique em Criar cluster.

  3. Escolha Cluster padrão ou um modelo apropriado para sua carga de trabalho.

  4. No menu suspenso Versão do cluster, selecione a versão do GKE desejada para execução no cluster.

  5. Configure o cluster como quiser.

  6. Para criar um cluster Alfa, primeiro desative as configurações que não são compatíveis com esse tipo de cluster.

    1. Selecione Opções avançadas.
    2. Desative Ativar reparo automático.
    3. Clique em Salvar para voltar para a tela principal de criação do cluster.
  7. Clique em Opções avançadas. Próximo à parte inferior da página, selecione Ativar recursos Alfa do Kubernetes neste cluster.

  8. Leia e confirme o aviso selecionando Eu entendo as consequências.

  9. Clique em Criar.

Depois de criar um cluster no Console do GCP, você precisa configurar a kubectl para interagir com o cluster. Para saber mais, consulte Como gerar uma entrada kubeconfig.

Expiração do cluster Alfa

Para verificar quando os clusters Alfa expiram, execute o seguinte comando:

gcloud container clusters list

Clusters com autorização binária

A autorização binária é um serviço do GCP que fornece segurança de cadeia de fornecimento de software para aplicativos executados na nuvem. A autorização binária funciona com imagens que você implanta no GKE a partir do Container Registry ou de outro registro de imagens de contêiner. Com a autorização binária, é possível garantir que os processos internos que protegem a qualidade e a integridade do software sejam concluídos com êxito antes que um aplicativo seja implantado em seu ambiente de produção.

Para instruções sobre como criar um cluster com a autorização binária ativada, acesse Como criar um cluster na documentação da autorização binária.

A seguir

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

Enviar comentários sobre…

Documentação do Kubernetes Engine