Em clusters do Anthos no VMware (GKE On-Prem), é possível ativar o redimensionamento automático do nó para um cluster. Isso significa que os recursos de CPU e memória atribuídos a um nó são ajustados.
Se o redimensionamento automático de nós estiver ativado em um cluster de administrador, os nós de complemento no cluster de administrador serão redimensionados de acordo com o número total de nós no cluster de administrador. Para cada cluster de usuário, há um ou mais nós do plano de controle no cluster de administrador. Portanto, à medida que você cria mais clusters de usuário, o número total de nós no cluster de administrador aumenta e os nós de complementos no cluster de administrador são aumentados automaticamente.
Se o redimensionamento automático de nós estiver ativado para um cluster de usuário, os nós do plano de controle para o cluster de usuário serão redimensionados de acordo com o número de nós no cluster. Portanto, à medida que você adiciona mais nós de trabalho ao cluster de usuário, os nós do plano de controle aumentam de tamanho. Lembre-se de que os nós do plano de controle para o cluster de usuário estão no cluster de administrador.
Um cluster de usuário altamente disponível (HA, na sigla em inglês), o cluster de usuário tem três nós de plano de controle no cluster de administrador, e um cluster de usuário não de alta disponibilidade tem um plano de controle. nó no cluster de administrador. Isso requer que o nó seja recriado. Portanto, quando o nó do plano de controle de um cluster de usuário que não é de alta disponibilidade é redimensionado, pode haver uma pequena quantidade de inatividade.
Ativar o redimensionamento de nós para os nós de complementos de um cluster de administrador
No arquivo de configuração
do cluster de administrador, defina addonNode.autoResize.enabled
como true
:
addonNode: autoResize: enabled: true
Para um novo cluster de administrador, siga as instruções em Criar um cluster de administrador (guia de início rápido) ou Como criar um cluster de administrador.
Para um cluster de administrador atual:
gkectl update admin --config ADMIN_CLUSTER_CONFIG --kubeconfig ADMIN_CLUSTER_KUBECONFIG
Substitua:
ADMIN_CLUSTER_CONFIG: o caminho do arquivo de configuração do cluster de administrador.
ADMIN_CLUSTER_KUBECONFIG: o caminho do arquivo kubeconfig do cluster de administrador;
Ativar o redimensionamento de nós para os nós do plano de controle de um cluster de usuário
No
arquivo de configuração do cluster do usuário,
defina masterNode.autoResize.enabled
como true
:
masterNode: autoResize: enabled: true
Para um novo cluster de usuário, siga as instruções em Criar um cluster de usuário (guia de início rápido) ou Como criar um cluster de usuário.
Para um cluster existente:
gkectl update cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config USER_CLUSTER_CONFIG
Substitua:
ADMIN_CLUSTER_KUBECONFIG: o caminho do arquivo kubeconfig do cluster de administrador;
USER_CLUSTER_CONFIG: o caminho do arquivo de configuração do cluster de usuário.
Depois que o redimensionamento automático do nó é ativado para um cluster de usuário, qualquer tentativa de
alterar a CPU ou a memória de um nó do plano de controle executando gkectl update
é
rejeitada. Se você quiser usar gkectl update
para alterar a CPU ou a memória de um nó do plano de controle do cluster de usuário, desative o redimensionamento automático do nó.
Desativar o redimensionamento de nós para os nós de complemento de um cluster de administrador
No arquivo
de configuração do cluster de administrador, defina autoRepair.enabled
como false
:
Atualize o cluster:
gkectl update admin --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config ADMIN_CLUSTER_CONFIG
Desativar o redimensionamento de nós para os nós do plano de controle de um cluster de usuário
No
arquivo de configuração do cluster do usuário,
defina autoRepair.enabled
como false
:
Atualize o cluster:
gkectl update cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config USER_CLUSTER_CONFIG
Ao desativar o redimensionamento automático do nó para um cluster de usuário, a CPU e a memória dos nós do plano de controle são reconciliadas para corresponder aos valores de CPU e memória especificados no arquivo de configuração do cluster de usuário.
Registros e eventos
Para encontrar o nome do pod de redimensionamento automático:
kubectl --kubeconfig ADMIN_KUBECONFIG describe deployment auto-resize-controller
O nome do pod tem o formato auto-resize-controller-xxxxx
.
Para ver os registros do pod de redimensionamento automático:
kubectl --kubeconfig ADMIN_KUBECONFIG logs AUTO_RESIZE_POD_NAME
O controlador de redimensionamento automático gera eventos nos objetos MachineDeployment para fornecer visibilidade sobre decisões e ações relevantes para o redimensionamento.
Para encontrar os nomes das MachineDeployments:
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get machinedeployments --all-namespaces
Para ver os eventos:
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG describe machinedeployment USER_CONTROL_PLANE_NODE_MACHINE_DEPLOYMENT kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG describe machinedeployment ADMIN_ADDON_NODE_MACHINE_DEPLOYMENT