Dimensione as suas cargas de trabalho sem estado de acordo com os requisitos de carga de trabalho de contentores em evolução.
Antes de começar
Para executar comandos num cluster do Kubernetes, certifique-se de que tem os seguintes recursos:
Localize o nome do cluster do Kubernetes ou pergunte ao administrador da plataforma qual é o nome do cluster.
Inicie sessão e gere o ficheiro kubeconfig para o cluster Kubernetes, se não tiver um.
Use o caminho kubeconfig do cluster Kubernetes para substituir
KUBERNETES_CLUSTER_KUBECONFIG
nestas instruções.
Para receber as autorizações necessárias para dimensionar cargas de trabalho sem estado, peça ao administrador de IAM da organização que lhe conceda a função de administrador do espaço de nomes (namespace-admin
) no espaço de nomes do projeto.
Dimensiona uma implementação
Tire partido da funcionalidade de escalabilidade do Kubernetes para dimensionar adequadamente a quantidade de pods em execução na sua implementação.
Escalone automaticamente os pods de uma implementação
O Kubernetes oferece a escala automática para remover a necessidade de atualizar manualmente a sua implementação quando a procura evolui. Defina o escalador automático de pods horizontal na sua implementação para ativar esta funcionalidade:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG \
-n NAMESPACE \
autoscale deployment DEPLOYMENT_NAME \
--cpu-percent=CPU_PERCENT \
--min=MIN_NUMBER_REPLICAS \
--max=MAX_NUMBER_REPLICAS
Substitua o seguinte:
KUBERNETES_CLUSTER_KUBECONFIG
: o ficheiro kubeconfig para o cluster.NAMESPACE
: o espaço de nomes do projeto.DEPLOYMENT_NAME
: o nome da implementação na qual fazer o ajuste de escala automático.CPU_PERCENT
: o objetivo de utilização média da CPU a pedir, representado como uma percentagem, em todos os pods.MIN_NUMBER_REPLICAS
: o limite inferior para o número de agrupamentos que o redimensionador automático pode aprovisionar.MAX_NUMBER_REPLICAS
: o limite superior para o número de agrupamentos que o escalador automático pode aprovisionar.
Para verificar o estado atual do redimensionador automático de pods horizontal recém-criado, execute:
kubectl get hpa
O resultado é semelhante ao seguinte:
NAME REFERENCE TARGET MINPODS MAXPODS REPLICAS AGE
DEPLOYMENT_NAME Deployment/DEPLOYMENT_NAME/scale 0% / 50% 1 10 1 18s
Dimensione manualmente os pods de uma implementação
Se preferir dimensionar manualmente uma implementação, execute o seguinte comando:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG \
-n NAMESPACE \
scale deployment DEPLOYMENT_NAME \
--replicas NUMBER_OF_REPLICAS
Substitua o seguinte:
KUBERNETES_CLUSTER_KUBECONFIG
: o ficheiro kubeconfig para o cluster.NAMESPACE
: o espaço de nomes do projeto.DEPLOYMENT_NAME
: o nome da implementação na qual fazer o ajuste de escala automático.DEPLOYMENT_NAME
: o número desejado de objetos replicadosPod
na implementação.