En esta página, se explica cómo cambiar manualmente el tamaño de los clústeres Standard de Google Kubernetes Engine (GKE). Puedes cambiar el tamaño de un clúster para aumentar o disminuir el número de nodos en ese clúster. Como alternativa, puedes realizar un ajuste de escala automático de tu clúster, en el que GKE cambia el tamaño de tus grupos de nodos de forma automática en respuesta a las condiciones cambiantes, como modificaciones en tus cargas de trabajo y uso de recursos.
Estas instrucciones no se aplican a los clústeres de Autopilot de GKE, que cambian de tamaño automáticamente según la cantidad de pods en el clúster.
Cuando agregas o quitas nodos a tu clúster, Google Kubernetes Engine (GKE) agrega o quita las instancias de máquina virtual (VM) asociadas de Grupos de instancias administrados (MIG) de Compute Engine subyacentes para los grupos de nodos. Para quitar nodos, no uses kubectl delete node, ya que no se borra la instancia de VM de Compute Engine en el MIG subyacente del grupo de nodos. Usa el escalador automático del clúster o disminuye el tamaño de tu clúster de forma manual.
Antes de comenzar
Antes de comenzar, asegúrate de haber realizado las siguientes tareas:
Si deseas usar Google Cloud CLI para esta tarea, instala y, luego, inicializa gcloud CLI. Si ya instalaste gcloud CLI, ejecuta gcloud components update para obtener la versión más reciente.
Aumenta el tamaño de tu clúster
Cuando aumentas el tamaño de un clúster, se producen los siguientes cambios:
Se crean nuevas instancias de nodos con la misma configuración de las instancias existentes.
Se pueden programar Pods en las instancias nuevas.
Los Pods existentes no se transfieren a las instancias nuevas.
CLUSTER_NAME: el nombre del clúster al que se cambiará el tamaño
POOL_NAME: el nombre del grupo de nodos al que se cambiará el tamaño
NUM_NODES: la cantidad de nodos en el grupo en un clúster zonal Si usas clústeres multizonales o regionales, NUM_NODES es la cantidad de nodos de cada zona en la que se encuentran los grupos de nodos.
Repite este comando para cada grupo de nodos. Si tu clúster tiene un solo grupo de nodos, omite la marca --node-pool.
Console
Para aumentar el tamaño de los grupos de nodos de un clúster, realiza los siguientes pasos:
Ve a la página de Google Kubernetes Engine en la consola de Google Cloud.
CLUSTER_NAME: el nombre del clúster al que se cambiará el tamaño
POOL_NAME: el nombre del grupo de nodos al que se cambiará el tamaño
NUM_NODES: la cantidad de nodos en el grupo en un clúster zonal Si usas clústeres multizonales o regionales, NUM_NODES es la cantidad de nodos de cada zona en la que se encuentran los grupos de nodos.
Repite este comando para cada grupo de nodos. Si tu clúster tiene un solo grupo de nodos, omite la marca --node-pool.
Console
Para disminuir el tamaño de los grupos de nodos de un clúster, realiza los siguientes pasos:
Ve a la página de Google Kubernetes Engine en la consola de Google Cloud.
Junto al clúster que deseas editar, haz clic en more_vertAcciones y, luego, en Editar.
Haz clic en la pestaña Nodos junto a la pestaña Detalles.
En la sección Grupos de nodos, haz clic en el nombre del grupo de nodos cuyo tamaño deseas disminuir.
Haz clic en editCambiar de tamaño.
En el campo Cantidad de nodos, ingresa la cantidad de nodos que quieres incluir en el grupo de nodos y, luego, haz clic en Cambiar tamaño.
Repite este paso para cada grupo de nodos según sea necesario.
Ajuste de escala automático de un clúster
La función del escalador automático de clúster de GKE cambia automáticamente el tamaño de tus grupos de nodos en respuesta a las condiciones cambiantes, como modificaciones en tus cargas de trabajo y uso de recursos.
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2024-09-05 (UTC)"],[],[],null,["# Resize a Standard cluster by adding or removing nodes\n\n[Standard](/kubernetes-engine/docs/concepts/choose-cluster-mode)\n\n*** ** * ** ***\n\nThis page explains how to manually resize Google Kubernetes Engine (GKE)\nStandard clusters. You can resize a cluster to increase or decrease the\nnumber of nodes in that cluster. Alternatively, you can [autoscale](#autoscale)\nyour cluster, where GKE automatically resizes your node pools in\nresponse to changing conditions, such as changes in your workloads and resource\nusage.\n\nThese instructions don't apply to GKE\n[Autopilot](/kubernetes-engine/docs/concepts/autopilot-overview)\nclusters, which automatically resize based on the number of Pods in the cluster.\n\nWhen you add or remove nodes in your cluster, GKE adds or removes\nthe associated virtual machine (VM) instances from the underlying\nCompute Engine [Managed Instance Groups\n(MIGs)](/compute/docs/instance-groups#managed_instance_groups) provisioned for\nyour node pools. For removing nodes, do not use `kubectl delete node` as this\ndoes not delete the Compute Engine VM instance in the node pool's underlying\nMIG. Use [cluster autoscaler](#autoscale) or manually [decrease the size of your\ncluster](#decrease).\n| **Note:** When you increase or decrease the size of a node pool that spans multiple zones, the new size represents the number of nodes in the node pool per zone. For example, if you have a node pool size of two that spans two zones, the total node count is four. If you resize the node pool to a size of four nodes, the total node count becomes eight.\n\nBefore you begin\n----------------\n\nBefore you start, make sure that you have performed the following tasks:\n\n- Enable the Google Kubernetes Engine API.\n[Enable Google Kubernetes Engine API](https://console.cloud.google.com/flows/enableapi?apiid=container.googleapis.com)\n- If you want to use the Google Cloud CLI for this task, [install](/sdk/docs/install) and then [initialize](/sdk/docs/initializing) the gcloud CLI. If you previously installed the gcloud CLI, get the latest version by running `gcloud components update`. **Note:** For existing gcloud CLI installations, make sure to set the `compute/region` [property](/sdk/docs/properties#setting_properties). If you use primarily zonal clusters, set the `compute/zone` instead. By setting a default location, you can avoid errors in the gcloud CLI like the following: `One of [--zone, --region] must be supplied: Please specify location`. You might need to specify the location in certain commands if the location of your cluster differs from the default that you set.\n\nIncrease the size of your cluster\n---------------------------------\n\nWhen you increase the size of a cluster, the following changes occur:\n\n- New node instances are created using the same configuration as the existing instances.\n- New Pods may be scheduled on the new instances.\n- Existing Pods are **not** moved to the new instances.\n\n### gcloud\n\nTo increase the size of a cluster's node pools, run the [`gcloud container clusters resize`](/sdk/gcloud/reference/container/clusters/resize) command: \n\n```\ngcloud container clusters resize CLUSTER_NAME --node-pool POOL_NAME \\\n --num-nodes NUM_NODES\n```\n\nReplace the following:\n\n- \u003cvar translate=\"no\"\u003eCLUSTER_NAME\u003c/var\u003e: the name of the cluster to resize.\n- \u003cvar translate=\"no\"\u003ePOOL_NAME\u003c/var\u003e: the name of the node pool to resize.\n- \u003cvar translate=\"no\"\u003eNUM_NODES\u003c/var\u003e: the number of nodes in the pool in a zonal cluster. If you use multi-zonal or regional clusters, \u003cvar translate=\"no\"\u003eNUM_NODES\u003c/var\u003e is the number of nodes for each zone the node pools is in.\n\nRepeat this command for each node pool. If your cluster has only one node\npool, omit the `--node-pool` flag.\n\n### Console\n\nTo increase the size of a cluster's node pools, perform the following steps:\n\n1. Go to the **Google Kubernetes Engine** page in the Google Cloud console.\n\n [Go to Google Kubernetes Engine](https://console.cloud.google.com/kubernetes/list)\n2. Beside the cluster you want to edit, click *more_vert*\n **Actions** , then click **Edit**.\n\n3. Click the **Nodes** tab next to the **Details** tab.\n\n4. In the **Node Pools** section, click the name of the node pool that you\n want to increase in size.\n\n5. Click *edit* **Resize**.\n\n6. In the **Number of nodes** field, enter how many nodes that you want in\n the node pool, and then click **Resize**.\n\n7. Repeat for each node pool as needed.\n\nDecrease the size of your cluster\n---------------------------------\n\n| **Warning:** Do not use both cluster autoscaler and manual resize commands simultaneously on a node pool, as this can cause interactions that result in unstable or incorrect node pool size.\n\nWhen you decrease the size of a cluster, the following changes occur:\n\n- GKE gracefully terminates nodes that are being deleted, using the [drain](https://kubernetes.io/docs/tasks/administer-cluster/safely-drain-node/) process to remove the Pods from the instance. [`PodDisruptionBudget`](https://kubernetes.io/docs/tasks/run-application/configure-pdb/) and [`terminationGracePeriodSeconds`](https://kubernetes.io/docs/concepts/workloads/pods/pod/#termination-of-pods) are both respected for up to one hour.\n- Pods managed by a replication controller are rescheduled by the controller to run on the remaining instances.\n- Pods not managed by a replication controller are not restarted.\n\nThe MIG does not differentiate between instances running\nPods and instances without Pods. Resizing down removes instances at random.\n\nTo learn how to add node pools and to manage existing ones, refer to\n[Adding and managing node pools](/kubernetes-engine/docs/how-to/node-pools). \n\n### gcloud\n\nTo decrease the size of a cluster's node pools, run the [`gcloud container clusters resize`](/sdk/gcloud/reference/container/clusters/resize) command: \n\n```\ngcloud container clusters resize CLUSTER_NAME --node-pool POOL_NAME \\\n --num-nodes NUM_NODES\n```\n\nReplace the following:\n\n- \u003cvar translate=\"no\"\u003eCLUSTER_NAME\u003c/var\u003e: the name of the cluster to resize.\n- \u003cvar translate=\"no\"\u003ePOOL_NAME\u003c/var\u003e: the name of the node pool to resize.\n- \u003cvar translate=\"no\"\u003eNUM_NODES\u003c/var\u003e: the number of nodes in the pool in a zonal cluster. If you use multi-zonal or regional clusters, \u003cvar translate=\"no\"\u003eNUM_NODES\u003c/var\u003e is the number of nodes for each zone the node pools is in.\n\nRepeat this command for each node pool. If your cluster has only one node\npool, omit the `--node-pool` flag.\n\n### Console\n\nTo decrease the size of a cluster's node pools, perform the following steps:\n\n1. Go to the **Google Kubernetes Engine** page in the Google Cloud console.\n\n [Go to Google Kubernetes Engine](https://console.cloud.google.com/kubernetes/list)\n2. Beside the cluster you want to edit, click *more_vert*\n **Actions** , then click **Edit**.\n\n3. Click the **Nodes** tab next to the **Details** tab.\n\n4. In the **Node Pools** section, click the name of the node pool that you\n want to decrease in size.\n\n5. Click *edit* **Resize**.\n\n6. In the **Number of nodes** field, enter how many nodes that you want in\n the node pool, and then click **Resize**.\n\n7. Repeat for each node pool as needed.\n\nAutoscaling a cluster\n---------------------\n\nGKE's [cluster autoscaler](/kubernetes-engine/docs/concepts/cluster-autoscaler) feature automatically resizes\nyour node pools in response to changing conditions, such as changes in your\nworkloads and resource usage.\n\nTo learn more about how autoscaling works, refer to the [cluster autoscaler](/kubernetes-engine/docs/concepts/cluster-autoscaler)\ndocumentation. To set up autoscaling for your cluster, see\n[Autoscaling a cluster](/kubernetes-engine/docs/how-to/cluster-autoscaler).\n\nWhat's next\n-----------\n\n- [Learn more about clusters](/kubernetes-engine/docs/concepts/cluster-architecture)."]]