- Recurso: AwsNodePool
- Configuración de nodo de AWS
- Colección de métricas de grupo de escalamiento automático de AWS
- Configuración puntual
- Escalado automático de AWSNodePool
- Estado
- Error de grupo de nodos de AWS
- Gestión de nodos de AWS
- Configuración de NodeKubelet
- Actualizar configuración
- Ajustes de sobretensión
- Métodos
Recurso: AwsNodePool
Un grupo de nodos Anthos que se ejecuta en AWS.
Representación JSON |
---|
{ "name": string, "version": string, "config": { object ( |
Campos | |
---|---|
name | El nombre de este recurso. Los nombres de los grupos de nodos tienen el formato Para obtener más detalles sobre los nombres de los recursos de Google Cloud, consulte Nombres de recursos |
version | Obligatorio. La versión de Kubernetes que se ejecutará en este grupo de nodos (p. ej., Puede enumerar todas las versiones compatibles en una región determinada de Google Cloud llamando |
config | Obligatorio. La configuración del grupo de nodos. |
autoscaling | Obligatorio. Configuración del escalador automático para este grupo de nodos. |
subnet Id | Obligatorio. La subred donde se ejecuta el nodo del grupo de nodos. |
state | Solo salida. Estado del ciclo de vida del grupo de nodos. |
uid | Solo salida. Un identificador único global para el grupo de nodos. |
reconciling | Solo salida. Si se configura, hay cambios en curso en el grupo de nodos. |
create Time | Solo salida. Hora de creación de este grupo de nodos. Utiliza la RFC 3339, donde la salida generada siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan desplazamientos distintos de "Z". Ejemplos: |
update Time | Solo salida. Hora de la última actualización de este grupo de nodos. Utiliza la RFC 3339, donde la salida generada siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan desplazamientos distintos de "Z". Ejemplos: |
etag | Permite a los clientes realizar lecturas, modificaciones y escrituras consistentes a través de un control de concurrencia optimista. Se puede enviar en solicitudes de actualización y eliminación para garantizar que el cliente tenga un valor actualizado antes de continuar. |
annotations | Opcional. Anotaciones en el grupo de nodos. Este campo tiene las mismas restricciones que las anotaciones de Kubernetes. El tamaño total de todas las claves y valores combinados está limitado a 256k. La clave puede tener dos segmentos: prefijo (opcional) y nombre (obligatorio), separados por una barra diagonal (/). El prefijo debe ser un subdominio DNS. El nombre debe tener 63 caracteres o menos, empezar y terminar con caracteres alfanuméricos, con guiones (-), guiones bajos (_), puntos (.) y caracteres alfanuméricos entre ellos. Un objeto que contiene una lista de pares |
max Pods Constraint | Obligatorio. Restricción sobre el número máximo de pods que se pueden ejecutar simultáneamente en un nodo del grupo de nodos. |
errors[] | Solo salida. Se encontró un conjunto de errores en el grupo de nodos. |
management | Opcional. La configuración de administración para este grupo de nodos. |
kubelet Config | Opcional. Configuraciones de nodo kubelet. |
update Settings | Opcional. La configuración de actualización controla la velocidad y la interrupción de la actualización. |
Configuración de nodo de AWS
Parámetros que describen los nodos de un clúster.
Representación JSON |
---|
{ "instanceType": string, "rootVolume": { object ( |
Campos | |
---|---|
instance Type | Opcional. El tipo de instancia EC2 al crear instancias bajo demanda. Si no se especifica durante la creación del grupo de nodos, se elegirá un valor predeterminado según la versión del grupo de nodos y se asignará a este campo. |
root Volume | Opcional. Plantilla para el volumen raíz aprovisionado para los nodos del grupo de nodos. Los volúmenes se aprovisionarán en la zona de disponibilidad asignada a la subred del grupo de nodos. Cuando no se especifica, el valor predeterminado es 32 GiB con el tipo de volumen GP2. |
taints[] | Opcional. Las manchas iniciales asignadas a los nodos de este grupo de nodos. |
labels | Opcional. Las etiquetas iniciales asignadas a los nodos de este grupo de nodos. Un objeto que contiene una lista de pares "clave":valor. Ejemplo: { "nombre": "llave", "masa": "1.3kg", "cuenta": "3" }. Un objeto que contiene una lista de pares |
tags | Opcional. Metadatos de clave-valor para asignar a cada recurso subyacente de AWS. Especifique un máximo de 50 pares que contengan alfanuméricos, espacios y símbolos (.+-=_:@/). Las claves pueden tener hasta 127 caracteres Unicode. Los valores pueden tener hasta 255 caracteres Unicode. Un objeto que contiene una lista de pares |
iam Instance Profile | Obligatorio. El nombre o ARN del perfil de instancia de AWS IAM que se asignará a los nodos del grupo. |
image Type | Opcional. El tipo de imagen del sistema operativo que se usará en las instancias del grupo de nodos. Puede no especificarse o tener el valor Cuando no se especifica, el valor predeterminado es |
ssh Config | Opcional. La configuración de SSH. |
security Group Ids[] | Opcional. Los ID de los grupos de seguridad adicionales que se añadirán a los nodos de este grupo. El administrador creará automáticamente grupos de seguridad con las reglas mínimas necesarias para un clúster en funcionamiento. |
proxy Config | Opcional. Configuración de proxy para tráfico HTTP(S) saliente. |
config Encryption | Obligatorio. Configurar el cifrado para los datos del usuario. |
instance Placement | Opcional. Información relacionada con la ubicación de este nodo. Si no se especifica, se utilizará la tenencia predeterminada de la VPC. |
autoscaling Metrics Collection | Opcional. Configuración relacionada con la recopilación de métricas de CloudWatch en el grupo de escalado automático del grupo de nodos. Cuando no se especifica, la recopilación de métricas está deshabilitada. |
spot Config | Opcional. Configuración para el aprovisionamiento de instancias Spot de EC2 Cuando se especifica, el grupo de nodos aprovisionará instancias de Spot del conjunto de spotConfig.instance_types. Este campo es mutuamente excluyente con |
Colección de métricas de grupo de escalamiento automático de AWS
Configuración relacionada con la recopilación de métricas de CloudWatch en un grupo de AWS Auto Scaling.
Representación JSON |
---|
{ "granularity": string, "metrics": [ string ] } |
Campos | |
---|---|
granularity | Obligatorio. La frecuencia con la que EC2 Auto Scaling envía datos agregados a AWS CloudWatch. El único valor válido es "1 minuto". |
metrics[] | Opcional. Métricas que se habilitarán. Para obtener una lista de métricas válidas, consulte https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_EnableMetricsCollection.html . Si especifica la granularidad y no especifica ninguna métrica, se habilitarán todas. |
Configuración puntual
SpotConfig tiene información de configuración para el nodo Spot.
Representación JSON |
---|
{ "instanceTypes": [ string ] } |
Campos | |
---|---|
instance Types[] | Obligatorio. Lista de tipos de instancias para crear un grupo de nodos puntuales. |
Escalado automático de AWSNodePool
AwsNodePoolAutoscaling contiene la información que requiere el escalador automático del clúster para ajustar el tamaño del grupo de nodos al uso actual del clúster.
Representación JSON |
---|
{ "minNodeCount": integer, "maxNodeCount": integer } |
Campos | |
---|---|
min Node Count | Obligatorio. Número mínimo de nodos en el grupo de nodos. Debe ser mayor o igual a 1 y menor o igual a maxNodeCount. |
max Node Count | Obligatorio. Número máximo de nodos en el grupo de nodos. Debe ser mayor o igual que minNodeCount y menor o igual que 50. |
Estado
El estado del ciclo de vida del grupo de nodos.
Enumeraciones | |
---|---|
STATE_UNSPECIFIED | No establecido. |
PROVISIONING | El estado APROVISIONAMIENTO indica que se está creando el grupo de nodos. |
RUNNING | El estado EN EJECUCIÓN indica que el grupo de nodos se ha creado y es completamente utilizable. |
RECONCILING | El estado RECONCILIANDO indica que el grupo de nodos se está reconciliando. |
STOPPING | El estado DETENCIÓN indica que se está eliminando el grupo de nodos. |
ERROR | El estado ERROR indica que el grupo de nodos se encuentra en un estado dañado e irrecuperable. |
DEGRADED | El estado DEGRADADO indica que el grupo de nodos requiere la acción del usuario para restaurar la funcionalidad completa. |
Error de grupo de nodos de AWS
AwsNodePoolError describe los errores encontrados en los grupos de nodos de AWS.
Representación JSON |
---|
{ "message": string } |
Campos | |
---|---|
message | Descripción del error, entendible para los humanos. |
Gestión de nodos de AWS
AwsNodeManagement define el conjunto de funciones de administración de nodos activadas para un grupo de nodos de AWS.
Representación JSON |
---|
{ "autoRepair": boolean } |
Campos | |
---|---|
auto Repair | Opcional. Si los nodos se repararán automáticamente. Si se establece como verdadero, los nodos de este grupo se supervisarán y, si fallan las comprobaciones de estado de forma constante durante un periodo, se activará una reparación automática para reemplazarlos por nuevos nodos. |
Configuración de NodeKubelet
Configuración para las opciones del grupo de nodos Kubelet.
Representación JSON |
---|
{ "insecureKubeletReadonlyPortEnabled": boolean, "cpuManagerPolicy": string, "cpuCfsQuota": boolean, "cpuCfsQuotaPeriod": string, "podPidsLimit": string } |
Campos | |
---|---|
insecure Kubelet Readonly Port Enabled | Opcional. Habilite el puerto de solo lectura inseguro de kubelet. |
cpu Manager Policy | Opcional. Controle la política de administración de CPU en el nodo. Consulte https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/ Se permiten los siguientes valores: * "none": el valor predeterminado, que representa el comportamiento de programación existente. * "static": permite que los pods con ciertas características de recursos obtengan mayor afinidad de CPU y exclusividad en el nodo. El valor predeterminado es "none" si no se especifica. |
cpu Cfs Quota | Opcional. Habilite la aplicación de cuotas de CPU CFS para contenedores que especifican límites de CPU. Esta opción está habilitada por defecto, lo que hace que kubelet use la cuota de CFS ( https://www.kernel.org/doc/Documentation/scheduler/sched-bwc.txt ) para aplicar los límites de CPU del contenedor. De lo contrario, no se aplicarán. Deshabilite esta opción para mitigar los problemas de limitación de la CPU y mantener sus pods en la clase de QoS garantizada especificando los límites de la CPU. El valor predeterminado es 'verdadero' si no se especifica. |
cpu Cfs Quota Period | Opcional. Establezca el valor del período de cuota de CFS de CPU: 'cpu.cfs_period_us'. La cadena debe ser una secuencia de números decimales, cada uno con una fracción opcional y un sufijo de unidad, como "300 ms". Las unidades de tiempo válidas son "ns", "us" (o "µs"), "ms", "s", "m" y "h". El valor debe ser una duración positiva. El valor predeterminado es '100ms' si no se especifica. |
pod Pids Limit | Opcional. Establezca los límites del PID del pod. Consulte https://kubernetes.io/docs/concepts/policy/pid-limiting/#pod-pid-limits Controla el número máximo de procesos permitidos para ejecutarse en un pod. El valor debe ser mayor o igual a 1024 y menor a 4194304. |
Actualizar configuración
UpdateSettings controla el nivel de paralelismo y el nivel de interrupción causados durante la actualización de un grupo de nodos.
Estas configuraciones se aplican cuando la actualización del grupo de nodos requiere reemplazar los nodos del grupo de nodos existentes por los actualizados.
Los ajustes de actualización son opcionales. Si no se especifican durante la creación del grupo de nodos, se elige un valor predeterminado basado en la versión del clúster principal. Para clústeres con la versión secundaria 1.27 y posteriores, se utiliza una configuración predeterminada de surgeSettings con maxSurge = 1 y maxUnavailable = 0. Para clústeres con versiones anteriores, las actualizaciones del grupo de nodos utilizan el mecanismo tradicional de actualización continua, que consiste en actualizar un nodo a la vez con el método "finalizar antes de crear", y updateSettings no es aplicable.
Establezca el parámetro surgeSettings para usar el mecanismo Surge Update para la actualización gradual de los nodos del grupo de nodos. 1. maxSurge controla la cantidad de nodos adicionales que se pueden crear más allá del tamaño actual del grupo de nodos temporalmente durante el momento de la actualización para aumentar la cantidad de nodos disponibles. 2. maxUnavailable controla la cantidad de nodos que pueden estar simultáneamente no disponibles durante la actualización. 3. (maxSurge + maxUnavailable) determina el nivel de paralelismo (es decir, la cantidad de nodos que se actualizan al mismo tiempo).
Representación JSON |
---|
{
"surgeSettings": {
object ( |
Campos | |
---|---|
surge Settings | Opcional. Configuración para actualización de sobretensión. |
Ajustes de sobretensión
SurgeSettings contiene los parámetros para la actualización de Surge.
Representación JSON |
---|
{ "maxSurge": integer, "maxUnavailable": integer } |
Campos | |
---|---|
max Surge | Opcional. El número máximo de nodos que se pueden crear más allá del tamaño actual del grupo de nodos durante el proceso de actualización. |
max Unavailable | Opcional. El número máximo de nodos que pueden estar indisponibles simultáneamente durante el proceso de actualización. Un nodo se considera indisponible si su estado no es Listo. |
Métodos | |
---|---|
| Crea un nuevo AwsNodePool , adjunto a un AwsCluster determinado. |
| Elimina un recurso AwsNodePool específico. |
| Describe un recurso AwsNodePool específico. |
| Enumera todos los recursos de AwsNodePool en un AwsCluster determinado. |
| Actualiza un AwsNodePool . |
| Revierte una solicitud de actualización AwsNodePool cancelada o fallida anteriormente. |