Dimensione cargas de trabalho com estado

Este documento descreve como dimensionar cargas de trabalho com estado existentes executadas num cluster do Kubernetes isolado do ar do Google Distributed Cloud (GDC). Tem de dimensionar os pods em execução nas suas cargas de trabalho com estado à medida que os requisitos da carga de trabalho do contentor evoluem.

Este documento destina-se a programadores no grupo de operadores de aplicações que são responsáveis pela gestão das cargas de trabalho das aplicações para a respetiva organização. Para mais informações, consulte a documentação sobre públicos-alvo para GDC com isolamento de ar.

Antes de começar

Para concluir as tarefas neste documento, tem de pedir as autorizações necessárias e preparar o seu ambiente.

Peça funções de IAM

Tem de ter funções específicas para receber as autorizações necessárias para dimensionar cargas de trabalho com estado. As funções necessárias dependem de estar a trabalhar num cluster partilhado ao nível da organização ou num cluster padrão ao nível do projeto. Para mais informações, consulte Configurações do cluster do Kubernetes.

Funções de cluster partilhadas

Para criar, eliminar, editar ou ver cargas de trabalho num cluster partilhado, peça ao administrador do IAM do projeto que lhe conceda a função Namespace Admin (namespace-admin). Esta função está associada ao espaço de nomes do seu projeto.

Funções de cluster padrão

Para criar, eliminar, editar ou ver cargas de trabalho num cluster padrão, peça ao administrador de IAM do projeto que lhe conceda a função Cluster Developer (cluster-developer). Esta função está associada ao espaço de nomes do seu projeto.

Prepare o seu ambiente

Para executar comandos num cluster do Kubernetes através da API, certifique-se de que tem os seguintes recursos:

  • Localize o nome do cluster do Kubernetes ou pergunte a um membro do grupo de administradores da plataforma qual é o nome do cluster.

  • Inicie sessão e gere o ficheiro kubeconfig para o cluster do Kubernetes.

  • Use o caminho kubeconfig do cluster Kubernetes para substituir KUBERNETES_CLUSTER_KUBECONFIG nestas instruções.

Dimensione um recurso StatefulSet

Use a funcionalidade de escalabilidade do Kubernetes para dimensionar adequadamente a quantidade de pods em execução no seu recurso StatefulSet.

Dimensione manualmente os pods de um recurso StatefulSet

Para dimensionar manualmente o recurso StatefulSet, execute o seguinte comando:

kubectl --kubeconfig KUBERNETES__CLUSTER_KUBECONFIG -n NAMESPACE \
    scale statefulset STATEFULSET_NAME \
    --replicas NUMBER_OF_REPLICAS

Substitua o seguinte:

  • KUBERNETES_CLUSTER_KUBECONFIG: o ficheiro kubeconfig para o cluster.

  • NAMESPACE: o espaço de nomes. Para clusters partilhados, tem de ser um espaço de nomes do projeto. Para clusters padrão, pode ser qualquer espaço de nomes.

  • STATEFULSET_NAME: o nome do StatefulSet objeto no qual dimensionar.

  • NUMBER_OF_REPLICAS: o número de objetos Pod replicados no objeto StatefulSet.

Dimensione os pods fazendo uma atualização no local

Para dimensionar os pods de um recurso StatefulSet diretamente no ficheiro de manifesto, execute:

kubectl --kubeconfig KUBERNETES__CLUSTER_KUBECONFIG -n NAMESPACE \
    patch statefulsets STATEFULSET_NAME \
    -p '{"spec":{"replicas":NUMBER_OF_REPLICAS}}'

Substitua o seguinte:

  • KUBERNETES__CLUSTER_KUBECONFIG: o ficheiro kubeconfig para o cluster.

  • NAMESPACE: o espaço de nomes. Para clusters partilhados, tem de ser um espaço de nomes do projeto. Para clusters padrão, pode ser qualquer espaço de nomes.

  • STATEFULSET_NAME: o nome do StatefulSet objeto no qual dimensionar.

  • NUMBER_OF_REPLICAS: o número de objetos Pod replicados no objeto StatefulSet.

O que se segue?