Escalonar cargas de trabalho sem estado

Escalone suas cargas de trabalho sem estado de acordo com os requisitos de carga de trabalho de contêiner em evolução.

Antes de começar

Para executar comandos no cluster do Kubernetes em bare metal pré-configurado, verifique se você tem os seguintes recursos:

  1. Localize o nome do cluster do Kubernetes ou pergunte ao administrador da plataforma.

  2. Faça login e gere o arquivo kubeconfig para o cluster do Kubernetes, se você não tiver um.

  3. Use o caminho kubeconfig do cluster do Kubernetes para substituir CLUSTER_KUBECONFIG nestas instruções.

Para receber as permissões necessárias para escalonar cargas de trabalho sem estado, peça ao administrador do IAM da organização para conceder a você o papel de administrador do namespace (namespace-admin) no namespace do projeto.

Escalonar uma implantação

Aproveite a funcionalidade de escalonamento do Kubernetes para dimensionar adequadamente a quantidade de pods em execução na sua implantação.

Fazer o escalonamento automático dos pods de uma implantação

O Kubernetes oferece escalonamento automático para eliminar a necessidade de atualizar manualmente sua implantação quando a demanda evolui. Defina o escalonador automático horizontal de pods na sua implantação para ativar esse recurso:

kubectl --kubeconfig CLUSTER_KUBECONFIG \
    -n NAMESPACE \
    autoscale deployment DEPLOYMENT_NAME \
    --cpu-percent=CPU_PERCENT \
    --min=MIN_NUMBER_REPLICAS \
    --max=MAX_NUMBER_REPLICAS

Substitua:

  • CLUSTER_KUBECONFIG: o arquivo kubeconfig do cluster do Kubernetes.

  • NAMESPACE: o namespace do projeto.

  • DEPLOYMENT_NAME: o nome da implantação em que fazer o escalonamento automático.

  • CPU_PERCENT: a meta de uso médio da CPU a ser solicitada, representada como uma porcentagem, em todos os pods.

  • MIN_NUMBER_REPLICAS: o limite inferior para o número de pods que o escalonador automático pode provisionar.

  • MAX_NUMBER_REPLICAS: o limite superior para o número de pods que o escalonador automático pode provisionar.

Para verificar o status atual do escalonador automático horizontal de pods recém-criado, execute:

kubectl get hpa

O resultado será assim:

NAME              REFERENCE                          TARGET    MINPODS   MAXPODS   REPLICAS   AGE
DEPLOYMENT_NAME   Deployment/DEPLOYMENT_NAME/scale   0% / 50%  1         10        1          18s

Escalonar manualmente os pods de uma implantação

Se você preferir escalonar uma implantação manualmente, execute:

kubectl --kubeconfig CLUSTER_KUBECONFIG \
    -n NAMESPACE \
    scale deployment DEPLOYMENT_NAME \
    --replicas NUMBER_OF_REPLICAS

Substitua:

  • CLUSTER_KUBECONFIG: o arquivo kubeconfig do cluster do Kubernetes.

  • NAMESPACE: o namespace do projeto.

  • DEPLOYMENT_NAME: o nome da implantação em que fazer o escalonamento automático.

  • DEPLOYMENT_NAME: o número escolhido de objetos Pod replicados na implantação.