Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
En esta página, se describen los campos admitidos en el archivo de configuración del clúster de GKE en Bare Metal. En la siguiente tabla se identifica si el campo es obligatorio para cada campo. En la tabla, también se muestra qué campos son mutables, lo que significa que se pueden cambiar después de la creación de un clúster. Como se indicó en la tabla, algunos campos mutables solo se pueden cambiar durante una actualización del clúster.
Genera una plantilla para tu archivo de configuración del clúster
Puedes crear un archivo de configuración de clúster con el comando bmctl create config. Aunque algunos campos tienen valores predeterminados y otros, como metadata.name, se pueden completar automáticamente, este archivo de configuración de formato YAML es una plantilla para especificar información sobre tu clúster.
Si deseas crear un archivo de configuración de clúster nuevo, usa el siguiente comando en la carpeta /baremetal:
bmctl create config -c CLUSTER_NAME
Reemplaza CLUSTER_NAME por el nombre del clúster que deseas crear. Para obtener más información sobre bmctl, consulta la herramienta bmctl.
Para ver un ejemplo del archivo de configuración de clúster generado, consulta Muestra del archivo de configuración del clúster.
Completa el archivo de configuración
En tu archivo de configuración, ingresa los valores de campo como se describe en la siguiente tabla de referencia de campo antes de crear o actualizar tu clúster.
Campos de configuración del clúster
Nombre del campo
Tipo de recurso
¿Es obligatorio?
Mutable
anthosBareMetalVersion
Obligatorio. String. Es la versión del clúster. Este valor se establece para la creación y las actualizaciones de clústeres.
Mutabilidad: Este valor no se puede modificar en clústeres existentes.
La versión solo se puede actualizar a través del proceso de actualización de clústeres.
Recurso de clúster
Requeridos
Mutable
authentication
Esta sección contiene la configuración necesaria para usar OpenID Connect (OIDC).
OIDC te permite usar tu proveedor de identidad existente para administrar la autenticación de usuarios y
grupos en los clústeres de Google Distributed Cloud.
Recurso de clúster
—
—
authentication.oidc.certificateAuthorityData
Opcional. Un certificado con codificación PEM codificada en base64 para el proveedor de OIDC. Para crear la string, codifica el certificado,
incluidos los encabezados, en base64. Incluye la string resultante en certificateAuthorityData como una certificateAuthorityData
sola línea.
Opcional. String. Es el ID de la aplicación cliente que realiza solicitudes de autenticación al proveedor de OpenID.
Recurso de clúster
Opcional
Inmutable
authentication.oidc.clientSecret
Opcional. String. Un secreto compartido entre la aplicación cliente de OIDC y el proveedor de OIDC.
Recurso de clúster
Opcional
Inmutable
authentication.oidc.deployCloudConsoleProxy
Opcional. Booleano (true|false). Especifica si se implementa un proxy inverso en el clúster para conectar la consola de Google Cloud a un proveedor de identidad local que no es de acceso público a través de Internet. Si no se puede acceder al proveedor de identidad a través de la Internet pública, establece este campo en true para autenticarte con la consola de Google Cloud. De forma predeterminada, este número se establece en false.
Recurso de clúster
Opcional
Inmutable
authentication.oidc.extraParams
Opcional. Lista delimitada por comas. Los parámetros de clave-valor adicionales para enviar al proveedor de OpenID.
Recurso de clúster
Opcional
Inmutable
authentication.oidc.groupPrefix
Opcional. String. El prefijo que se antepone a las reclamaciones de grupos para evitar conflictos con los nombres existentes. Por ejemplo, con un grupo dev y un prefijo oidc:, el valor es oidc:dev.
Recurso de clúster
Opcional
Inmutable
authentication.oidc.group
Opcional. String.
La reclamación de JWT que el proveedor usa para mostrar los grupos de seguridad.
Recurso de clúster
Opcional
Inmutable
authentication.oidc.issuerURL
Opcional. String de URL. La URL a la que se envían las solicitudes de autorización al OpenID, como https://example.com/adfs. El servidor de la API de Kubernetes usa esta URL a fin de descubrir claves públicas para la verificación de tokens. La URL debe usar HTTPS.
Recurso de clúster
Opcional
Inmutable
authentication.oidc.kubectlRedirectURL
Opcional. String de URL. La URL de redireccionamiento que usa kubectl para la autorización. Cuando habilitas OIDC, debes especificar un valor de kubectlRedirectURL.
Recurso de clúster
Opcional
Inmutable
authentication.oidc.proxy
Opcional. String de URL. Servidor proxy que se usará para que el clúster se conecte a tu proveedor de OIDC, si corresponde. El valor debe incluir un nombre de host y una dirección IP, y de forma opcional un puerto, un nombre de usuario y una contraseña. Por ejemplo: http://user:password@10.10.10.10:8888.
Recurso de clúster
Opcional
Inmutable
authentication.oidc.scopes
Opcional. Lista delimitada por comas. Los permisos adicionales que se deben enviar al proveedor de OpenID. Microsoft Azure y Okta requieren el permiso offline_access.
Recurso de clúster
Opcional
Inmutable
authentication.oidc.usernamePrefix
Opcional. String. Es el prefijo que se antepone a las reclamaciones de nombre de usuario.
Recurso de clúster
Opcional
Inmutable
authentication.oidc.username
Opcional. String.
Es la reclamación de JWT que se debe usar como nombre de usuario.
Si no se especifica, el valor predeterminado es sub.
Recurso de clúster
Opcional
Inmutable
bypassPreflightCheck
Opcional. Booleano (true|false). Cuando se establece en true, las comprobaciones preliminares internas se ignoran cuando se aplican recursos a los clústeres existentes. La configuración predeterminada es false.
Mutabilidad: Este valor se puede modificar para clústeres existentes con el comando bmctl update.
Recurso de clúster
Opcional
Mutable
clusterNetwork
Esta sección contiene la configuración de red para tu clúster.
Recurso de clúster
Requeridos
Mutable
clusterNetwork.advancedNetworking
Booleano. Configura este campo como true para habilitar las funciones de redes avanzadas, como el balanceo de cargas en paquetes con BGP o la puerta de enlace NAT de salida. Ambas funciones usan la puerta de enlace de red para GDC. La puerta de enlace de red para GDC es el componente clave a fin de habilitar
funciones de red avanzadas en GKE Enterprise y
Google Kubernetes Engine (GKE). Uno de los beneficios principales de la puerta de enlace de red para GDC es que puede asignar direcciones IP flotantes de forma dinámica desde un conjunto de direcciones que especifiques en un recurso personalizado NetworkGatewayGroup.
Booleano. Establece este campo en false para inhabilitar las funciones de Ingress incluidas en Google Distributed Cloud. Las capacidades de Ingress del paquete para tu clúster solo admiten Ingress. Si integras Istio o Anthos Service Mesh para obtener beneficios adicionales de una malla de servicios completamente funcional, te recomendamos que inhabilites Ingress en paquetes. Este campo se establece en true de forma predeterminada. Este campo no está presente en el archivo de configuración del clúster generado. Solo puedes inhabilitar el Ingress agrupado para los clústeres de la versión 1.13.0 y posteriores.
Booleano. Establece este campo en true para habilitar el modelo de redes del clúster de modo plano. En el modo plano, cada Pod tiene su propia dirección IP única. Los Pods pueden comunicarse entre sí directamente sin necesidad de una puerta de enlace intermedia ni traducción de direcciones de red (NAT).
flatIPv4 es false de forma predeterminada. Puedes habilitar el modo plano solo durante la creación del clúster. Una vez que habilites el modo plano para el clúster, no podrás inhabilitarlo.
Recurso de clúster
Opcional
Inmutable
clusterNetwork.forwardMode
Opcional. String. Especifica el modo de red para el balanceo de cargas de Dataplane V2. La traducción de direcciones de red de origen (SNAT) es el modo de red predeterminado. El modo de retorno directo del servidor (DSR) soluciona los problemas con el balanceo de cargas de SNAT. En el modo DSR (forwardMode: dsr), el
nodo del balanceador de cargas usa opciones de IP para guardar la dirección de origen del cliente.
El modo de red para el balanceo de cargas de Dataplane V2 solo se puede configurar
cuando se crea el clúster.
Obligatorio. Rango de direcciones IPv4 en formato de bloque CIDR. Especifica el rango de direcciones IP desde las que se asignan las direcciones IP virtuales de servicio (VIP). Estos rangos no debe superponerse con ninguna subred accesible desde tu red. Si deseas obtener más información sobre la asignación de direcciones para Internet privada, consulta RFC 1918.
A partir de la versión 1.15.0 de Google Distributed Cloud, este campo es mutable. Si es necesario, puedes aumentar la cantidad de direcciones IP asignadas para los servicios después de crear un clúster. Para obtener más información, consulta Cómo aumentar el rango de la red de servicio.
Solo puedes aumentar el rango del CIDR del servicio IPv4. No se puede reducir el rango de red, lo que significa que no se puede aumentar la máscara (el valor después de “/”).
Rango mínimo de CIDR de servicio: Valor de máscara de /24, que corresponde a un tamaño de 8 bits (256 direcciones).
Rango máximo de CIDR de servicio: Valor de máscara de /12, que corresponde a un tamaño de 20 bits (1,048,576 direcciones IP).
Por ejemplo:
services:
cidrBlocks:
- 10.96.0.0/12
Recurso de clúster
Requeridos
Mutable
clusterOperations
En esta sección, se incluye información de Cloud Logging y Cloud Monitoring.
Recurso de clúster
Requeridos
Mutable
clusterOperations.enableApplication
Este campo ya no se usa y no tiene efecto. El registro y la supervisión de la aplicación están habilitados en el recurso personalizado de Stackdriver. Para obtener más información sobre cómo habilitar el registro y la supervisión de aplicaciones, consulta Habilita el registro y la supervisión de aplicaciones.
Recurso de clúster
No-op
Mutable
clusterOperations.disableCloudAuditLogging
Booleano. Los Registros de auditoría de Cloud son útiles para investigar solicitudes sospechosas a la API y recopilar estadísticas. Los Registros de auditoría de Cloud están habilitados (disableCloudAuditLogging: false) de forma predeterminada. Configúralo como true para inhabilitar los Registros de auditoría de Cloud.
String. Es una región de Google Cloud en la que deseas almacenar los registros de Logging y las métricas de Monitoring.
Es recomendable elegir una región cercana al centro de datos local. Para obtener más información, consulta Ubicaciones globales.
Por ejemplo:
location: us-central1
Recurso de clúster
Obligatorio
Inmutable
clusterOperations.projectID
String. Es el ID del proyecto de Google Cloud en el que deseas ver los registros y las métricas.
Recurso de clúster
Obligatorio
Inmutable
controlPlane
En esta sección, se incluye información sobre el plano de control y sus componentes.
Recurso de clúster
Requeridos
Mutable
controlPlane.apiServerCertExtraSANs
Opcional. Un array de cadenas (nombres de dominio y direcciones IP) Un nombre alternativo de asunto (SAN) es una función de los certificados SSL que te permite definir los nombres de dominio y los subdominios en los que quieres que un certificado sea válido. En un clúster de GKE alojado en Bare Metal, los SAN para el certificado del servidor de la API incluyen las direcciones IP y VIP de los nodos del plano de control y los nombres de DNS de Kubernetes de forma predeterminada.
Usa este campo para agregar SAN adicionales al certificado de servidor de la API para el clúster. Los nombres de dominio deben cumplir con RFC 1035.
Para obtener más información, consulta Cómo agregar dominios al certificado de servidor de la API.
Este campo se puede agregar o cambiar en cualquier momento.
Recurso de clúster
Opcional
Mutable
controlPlane.nodePoolSpec
En esta sección, se especifican las direcciones IP para el grupo de nodos que usa el plano de control y sus componentes. La especificación del grupo de nodos del plano de control (como la especificación del grupo de nodos del balanceador de cargas) es especial. Esta especificación declara y controla los recursos críticos del clúster. La fuente canónica de este recurso es esta sección en el archivo de configuración del clúster. No modifiques directamente los recursos del grupo de nodos del plano de control de nivel superior. En su lugar, modifica las secciones asociadas en el archivo de configuración del clúster.
Recurso de clúster
Requeridos
Mutable
controlPlane.nodePoolSpec.nodes
Obligatorio. Un array de direcciones IP. Por lo general, este array es una dirección IP para una sola máquina o direcciones IP para tres máquinas para una implementación de alta disponibilidad (HA).
Opcional. Es un número entero (no negativo). Especifica la cantidad máxima de solicitudes de extracción de imagen que se pueden agregar a la cola de procesamiento para manejar los aumentos repentinos de solicitudes. En cuanto comienza la extracción, se puede agregar una solicitud nueva a la cola. El valor predeterminado es 10. Este campo corresponde a la opción registryBurst de configuración de kubelet (v1beta1).
El valor de registryPullQPS tiene prioridad sobre esta configuración. Por ejemplo, con la configuración predeterminada, se permiten aumentos de actividad de hasta 10 consultas simultáneas, pero deben procesarse a la velocidad predeterminada de cinco consultas por segundo. Este comportamiento de aumento de actividad solo se usa cuando registryPullQPS es mayor que 0.
Este campo se puede configurar cada vez que creas, actualizas o actualizas un
clúster, y la configuración persiste a través de las actualizaciones del clúster. Para obtener más información, consulta Establece la configuración de extracción de imágenes de kubelet.
Opcional. Es un número entero (no negativo). Especifica la velocidad de procesamiento de las consultas para las extracciones de imágenes de Container Registry en las consultas por segundo (QPS).
Cuando registryPullQPS se configura con un valor superior a 0, la tasa de consultas se restringe a esa cantidad de consultas por segundo. Si registryPullQPS se configura como 0, no hay restricciones en la tasa de consultas. El valor predeterminado es 5.
Este campo corresponde a la opción registryPullQPS de configuración de kubelet (v1beta1).
Este campo se puede configurar cada vez que creas, actualizas o actualizas un
clúster, y la configuración persiste a través de las actualizaciones del clúster. Para obtener más información, consulta Establece la configuración de extracción de imágenes de kubelet.
Opcional. Booleano (true|false). Este campo
especifica si las extracciones de Container Registry se procesan en paralelo o
de a una a la vez. El valor predeterminado es true y especifica que las extracciones se procesan de a una. Cuando se configura en false, kubelet extrae imágenes en paralelo. Este campo corresponde a la opción serializeImagePulls de configuración de kubelet (v1beta1).
Este campo se puede configurar cada vez que creas, actualizas o actualizas un
clúster, y la configuración persiste a través de las actualizaciones del clúster. Para obtener más información, consulta Establece la configuración de extracción de imágenes de kubelet.
Recurso de clúster
Opcional
Mutable
gkeConnect
En esta sección, se incluye información sobre el proyecto de Google Cloud que deseas usar para conectar tu clúster a Google Cloud.
Recurso de clúster
Obligatorio
Inmutable
gkeConnect.projectID
Obligatorio, string El ID del proyecto de Google Cloud que deseas usar para conectar tu clúster a Google Cloud. También se conoce como el proyecto host de la flota.
No se puede modificar este valor para los clústeres existentes.
Recurso de clúster
Obligatorio
Inmutable
gkeConnect.location
Opcional. String. Valor predeterminado: global.
El servicio de flota
(gkehub.googleapis.com) y el servicio de Connect
(gkeconnect.googleapis.com) administran la membresía de la flota de tus clústeres.
La membresía de la flota puede ser
global o regional. De forma opcional, puedes usar gkeConnect.location
para especificar la región de Google Cloud en la que se ejecutan los servicios de Fleet
y Connect, de modo que el tráfico se restrinja a tu región.
Si deseas obtener una lista de las regiones admitidas, consulta Regiones admitidas para la API de GKE On-Prem.
Si no se especifica, se usan las instancias globales de los servicios.
Ten en cuenta lo siguiente:
Los servicios globales de Fleet y Connect administran los clústeres creados en versiones anteriores a la 1.28.
Los clústeres nuevos creados con los clientes de la API de GKE On-Prem, como
la consola de Google Cloud, Google Cloud CLI o Terraform, usan la misma
región que especificas para la API de GKE On-Prem.
Para los clústeres nuevos, si incluyes este campo, la región que especifiques debe ser la misma que la región configurada en gkeOnPremAPI.location. Si las regiones no son iguales, la creación del clúster fallará.
No se puede modificar este valor para los clústeres existentes.
Recurso de clúster
Opcional
Inmutable
gkeOnPremAPI
En la versión 1.16 y en versiones posteriores, si la API de GKE On-Prem está habilitada en tu proyecto de Google Cloud, todos los clústeres del proyecto se inscriben en la API de GKE On-Prem de forma automática en la región configurada en clusterOperations.location.
Si deseas inscribir todos los clústeres del proyecto en la
API de GKE On-Prem, asegúrate de seguir los pasos que se indican en
Antes
de comenzar para activar y usar la API de GKE On-Prem en el proyecto.
Si no quieres inscribir el clúster en la API de GKE On-Prem, incluye esta sección y establece gkeOnPremAPI.enabled en false.
Si no quieres inscribir ningún clúster en el proyecto, inhabilita gkeonprem.googleapis.com (el nombre del servicio para la API de GKE On-Prem) en el proyecto. Para obtener instrucciones, consulta
Inhabilita servicios.
Si deseas inscribir todos los clústeres del proyecto en la
API de GKE On-Prem, asegúrate de seguir los pasos que se indican en
Antes
de comenzar para activar y usar la API de GKE On-Prem en el proyecto.
Si no quieres inscribir el clúster en la API de GKE On-Prem, incluye esta sección y establece gkeOnPremAPI.enabled en false.
Si no quieres inscribir ningún clúster en el proyecto, inhabilita gkeonprem.googleapis.com (el nombre del servicio para la API de GKE On-Prem) en el proyecto. Para obtener instrucciones, consulta
Inhabilita servicios.
La inscripción del clúster de usuario o administrador en la API de GKE On-Prem te permite
usar herramientas estándar (la consola de Google Cloud, Google Cloud CLI o
Terraform) para ver los detalles del clúster y administrar su ciclo de vida. Por ejemplo, puedes ejecutar los comandos de gcloud CLI para
obtener información sobre tu clúster.
La API de GKE On-Prem almacena los metadatos del estado del clúster en Google Cloud.
Estos metadatos permiten que la API administre el ciclo de vida del clúster. Las herramientas estándar usan la API de GKE On-Prem y, en conjunto, se denominan los clientes de la API de GKE On-Prem.
Si configuras gkeOnPremAPI.enabled como true,
antes de crear o actualizar el clúster con bmctl,
asegúrate de seguir los pasos que se indican en
Antes
de comenzar para habilitar y, luego, inicializar la API de GKE On-Prem.
Después de agregar esta sección y de crear o actualizar el clúster, si
luego quitas la sección y actualizas el clúster, la actualización
fallará.
Si prefieres crear el clúster con una herramienta estándar en lugar de bmctl, consulta lo siguiente:
Cuando creas un clúster con una herramienta estándar, este se
inscribe automáticamente en la API de GKE On-Prem.
Recurso de clúster
Opcional
gkeOnPremAPI.enabled
De forma predeterminada, el clúster se inscribe en la API de GKE On-Prem si esta
está habilitada en tu proyecto. Configúralo en false
si no quieres inscribir el clúster.
Después de inscribir el clúster en la API de GKE On-Prem, si necesitas
dar de baja el clúster, realiza el siguiente cambio y, luego, actualízalo:
gkeOnPremAPI:
enabled: false
Recurso de clúster
Requeridos
Mutable
gkeOnPremAPI.location
La región de Google Cloud en la que la API de GKE On-Prem se ejecuta y almacena los metadatos del clúster. Elige una de las
regiones admitidas. Si gkeOnPremAPI.enabled es true, debe ser una string que no esté vacía. Si gkeOnPremAPI.enabled es false, no incluyas este campo.
Si esta sección no está incluida en tu archivo de configuración, este campo se establece en clusterOperations.location.
Recurso de clúster
Opcional
Inmutable
kubevirt.useEmulation (obsoleta)
Obsoleto. A partir de la versión 1.11.2, puedes habilitar o inhabilitar el entorno de ejecución de VM en GDC si solo actualizas el recurso personalizado VMRuntime.
Booleano. Determina si se usa la emulación de software para ejecutar máquinas virtuales. Si el nodo admite la virtualización de hardware, establece useEmulation en false para obtener un mejor rendimiento. Si la virtualización de hardware no es compatible o no estás seguro, configúrala como true.
Recurso de clúster
Opcional
Mutable
loadBalancer
Esta sección contiene la configuración del balanceo de cargas del clúster.
Recurso de clúster
Requeridos
Mutable
loadBalancer.addressPools
Objetos. Es el nombre y un array de direcciones IP para el grupo de balanceadores de cargas del clúster. La configuración del grupo de direcciones solo es válida para el modo de LB bundled en los clústeres que no sean de administrador. Puedes agregar grupos de direcciones nuevos
en cualquier momento, pero no puedes quitar los grupos de direcciones existentes.
Se puede editar un grupo de direcciones existente para cambiar solo los campos avoidBuggyIPs
y manualAssign.
Recurso de clúster
Opcional
Inmutable
loadBalancer.addressPools.addresses
Array de rangos de direcciones IP. Especifica una lista de rangos de IP no superpuestos para el balanceador de cargas del plano de datos. Todas las direcciones deben estar en la misma subred que los nodos del balanceador de cargas.
String. Es el nombre que elijas para el grupo de balanceadores de cargas del clúster.
Recurso de clúster
Obligatorio
Inmutable
loadBalancer.addressPools.avoidBuggyIPs
Opcional. Booleano (true | false). Si es true, el grupo omite las direcciones IP que terminan en .0 y .255.
Algunos hardware de red descartan el tráfico hacia estas direcciones especiales. Puedes omitir este campo, su valor predeterminado es false.
Recurso de clúster
Opcional
Mutable
loadBalancer.addressPools.manualAssign
Opcional. Booleano (true | false). Si es true, las direcciones de este grupo no se asignan de forma automática a los servicios de Kubernetes. Si es true, una dirección IP en este grupo se usa solo cuando un servicio lo especifica de manera explícita. Puedes omitir este campo, su valor predeterminado es false.
Recurso de clúster
Opcional
Mutable
loadBalancer.mode
Obligatorio. String. Especifica el modo de balanceo de cargas. En
modo bundled, Google Distributed Cloud instala un balanceador de
cargas en los nodos del balanceador de cargas durante la creación del clúster. En el modo manual, el clúster se basa en un balanceador de cargas externo configurado de forma manual. Para obtener más información, consulta Descripción general de los balanceadores de cargas.
Valores permitidos: bundled | manual
Recurso de clúster
Obligatorio
Inmutable
loadBalancer.type
Opcional. String. Especifica el tipo de balanceo de cargas en paquetes que se usa, capa 2 o protocolo de puerta de enlace fronteriza (BGP). Si usas el balanceo de cargas estándar en paquetes, configura type en layer2. Si usas el balanceo de cargas en paquetes con BGP, configura type en bgp. Si no configuras type, el valor predeterminado es layer2.
Valores permitidos: layer2 | bgp
Recurso de clúster
Opcional
Inmutable
loadBalancer.nodePoolSpec
Opcional. Usa esta sección para configurar un grupo de nodos del balanceador de cargas. Los nodos que especificas son parte del clúster de Kubernetes y ejecutan cargas de trabajo y balanceadores de cargas normales. Si no especificas un grupo de nodos, los nodos del plano de control se usan para el balanceo de cargas. En esta sección, solo se aplica cuando el modo de balanceo de cargas se establece en bundled.
Si deseas evitar que las cargas de trabajo se ejecuten en un nodo en el grupo de nodos del balanceador de cargas, agrega el siguiente taint al nodo:
node-role.kubernetes.io/load-balancer:NoSchedule
Google Distributed Cloud agrega tolerancias para este taint a los Pods necesarios en el balanceo de cargas.
Recurso de clúster
Opcional
Mutable
loadBalancer.nodePoolSpec.nodes
En esta sección, se muestra un array de direcciones IP para los nodos de tu grupo de nodos del balanceador de cargas.
Recurso de clúster
Opcional
Mutable
loadBalancer.nodePoolSpec.nodes.address
Opcional. String (dirección IPv4). Es la dirección IP de un nodo. Aunque los nodos del grupo de nodos del balanceador de cargas pueden ejecutar cargas de trabajo, son independientes de los nodos de los grupos de nodo trabajador. No puedes incluir un nodo de clúster determinado en más de un grupo de nodos. Las direcciones IP de nodos superpuestas bloquean la creación de clústeres y otras operaciones de clúster.
Recurso de clúster
Opcional
Mutable
loadBalancer.nodePoolSpec.kubeletConfig
Opcional.
En esta sección, se incluyen campos que configuran kubelet en todos los nodos del
grupo de nodos del plano de control.
Opcional. Es un número entero (no negativo). Especifica la cantidad máxima de solicitudes de extracción de imagen que se pueden agregar a la cola de procesamiento para manejar los aumentos repentinos de solicitudes. En cuanto comienza la extracción, se puede agregar una solicitud nueva a la cola. El valor predeterminado es 10. Este campo corresponde a la opción registryBurst de configuración de kubelet (v1beta1).
El valor de registryPullQPS tiene prioridad sobre esta configuración. Por ejemplo, con la configuración predeterminada, se permiten aumentos de actividad de hasta 10 consultas simultáneas, pero deben procesarse a la velocidad predeterminada de cinco consultas por segundo. Este comportamiento de aumento de actividad solo se usa cuando registryPullQPS es mayor que 0.
Este campo se puede configurar cada vez que creas, actualizas o actualizas un
clúster, y la configuración persiste a través de las actualizaciones del clúster. Para obtener más información, consulta Establece la configuración de extracción de imágenes de kubelet.
Opcional. Es un número entero (no negativo). Especifica la velocidad de procesamiento de las consultas para las extracciones de imágenes de Container Registry en las consultas por segundo (QPS).
Cuando registryPullQPS se configura con un valor superior a 0, la tasa de consultas se restringe a esa cantidad de consultas por segundo. Si registryPullQPS se configura como 0, no hay restricciones en la tasa de consultas. El valor predeterminado es 5.
Este campo corresponde a la opción registryPullQPS de configuración de kubelet (v1beta1).
Este campo se puede configurar cada vez que creas, actualizas o actualizas un
clúster, y la configuración persiste a través de las actualizaciones del clúster. Para obtener más información, consulta Establece la configuración de extracción de imágenes de kubelet.
Opcional. Booleano (true|false). Este campo
especifica si las extracciones de Container Registry se procesan en paralelo o
de a una a la vez. El valor predeterminado es true y especifica que las extracciones se procesan de a una. Cuando se configura en false, kubelet extrae imágenes en paralelo. Este campo corresponde a la opción serializeImagePulls de configuración de kubelet (v1beta1).
Este campo se puede configurar cada vez que creas, actualizas o actualizas un
clúster, y la configuración persiste a través de las actualizaciones del clúster. Para obtener más información, consulta Establece la configuración de extracción de imágenes de kubelet.
Recurso de clúster
Opcional
Mutable
loadBalancer.ports.controlPlaneLBPort
Number. Es el puerto de destino que se usa para el tráfico enviado al plano de control de Kubernetes (los servidores de la API de Kubernetes).
Recurso de clúster
Obligatorio
Inmutable
loadBalancer.vips.controlPlaneVIP
Obligatorio. Especifica la dirección IP virtual (VIP) que se conectará al servidor de la API de Kubernetes. Esta dirección no debe estar dentro del rango de ninguna dirección IP que se usa para los grupos de direcciones del balanceador de cargas, loadBalancer.addressPools.addresses.
Recurso de clúster
Obligatorio
Inmutable
loadBalancer.vips.ingressVIP
Opcional. String (dirección IPv4). Es la dirección IP que elegiste configurar en el balanceador de cargas para el tráfico de entrada.
Recurso de clúster
Opcional
Inmutable
loadBalancer.localASN
Opcional. String. Especifica el número del sistema autónomo (ASN) para el clúster que se crea. Este campo se usa cuando se configura la solución de balanceo de cargas en paquetes que usa el protocolo de puerta de enlace fronteriza (BGP).
Para obtener más información, consulta Configura balanceadores de cargas en paquetes con BGP.
Recurso de clúster
Opcional
Mutable
loadBalancer.bgpPeers
Opcional. Objeto (lista de asignaciones). En esta sección, se especifica uno o más pares de protocolos de puerta de enlace fronteriza (BGP) de tu red local (externa al clúster). Debes especificar los pares de BGP cuando configuras la parte de balanceo de cargas del plano de control de la solución de balanceo de cargas en paquetes que usan BGP. Cada par se especifica con una asignación, que consta de una dirección IP, un número de sistema autónomo (ASN) y, de forma opcional, una lista de una o más direcciones IP para los nodos del plano de control. La configuración de intercambio de tráfico de BGP para el balanceo de cargas del plano de control no se puede actualizar después de crear el clúster.
Opcional. String (dirección IPv4). La dirección IP de un dispositivo de intercambio de tráfico externo de tu red local.
Para obtener más información, consulta Configura balanceadores de cargas en paquetes con BGP.
Recurso de clúster
Opcional
Mutable
loadBalancer.bgpPeers.asn
Opcional. String. El número del sistema autónomo (ANS) para la red que contiene el dispositivo de intercambio de tráfico externo. Especifica un ASN para cada par de BGP que configures en el balanceo de cargas del plano de control cuando configures la solución de balanceo de cargas en paquetes que usa BGP.
Para obtener más información, consulta Configura balanceadores de cargas en paquetes con BGP.
Recurso de clúster
Opcional
Mutable
loadBalancer.bgpPeers.controlPlaneNodes
Opcional. Array de direcciones IP (IPv4). Una o más direcciones IP para los nodos del plano de control que se conectan al par de BGP externo cuando configuras la solución de balanceo de cargas en paquetes que usa BGP. Si no especificas ningún nodo del plano de control, todos los nodos del plano de control se conectarán al par externo. Si especificas una o más direcciones IP, solo los nodos especificados participan en las sesiones de intercambio de tráfico.
Para obtener más información, consulta Configura balanceadores de cargas en paquetes con BGP.
Recurso de clúster
Opcional
Mutable
maintenanceBlocks.cidrBlocks
Opcional. Una sola dirección IPv4 o un rango de direcciones IPv4. Especifica las direcciones IP de las máquinas del nodo que deseas poner en modo de mantenimiento. Para obtener más información, consulta Coloca los nodos en modo de mantenimiento.
Por ejemplo:
maintenanceBlocks:
cidrBlocks:
- 192.168.1.200 # Single machine
- 192.168.1.100-192.168.1.109 # Ten machines
Recurso de clúster
Opcional
Mutable
nodeAccess.loginUser
Opcional. String. Especifica el nombre de usuario no raíz que deseas usar tener acceso con la función SUDO sin contraseña a las máquinas de nodo en tu clúster. Tu clave SSH, sshPrivateKeyPath, debe funcionar para el usuario especificado. Las operaciones de creación y actualización de clústeres verifican que se pueda acceder a las máquinas de nodo con el usuario y la clave SSH especificados.
Recurso de clúster
Opcional
Mutable
osEnvironmentConfig.addPackageRepo
Opcional. Booleano (true | false). Especifica si se debe usar tu propio servidor de repositorio de paquetes en lugar del repositorio apt de Docker predeterminado. Para usar tu propio repositorio de paquetes, configura addPackageRepo como false. Usa esta función para omitir la adición de repositorios de paquetes a cada máquina de Bare Metal en tu implementación. Para obtener más información, consulta Usa un servidor de repositorio de paquetes privado.
Recurso de clúster
Opcional
Inmutable
nodeConfig
En esta sección, se incluyen los ajustes para la configuración de nodos del clúster.
Recurso de clúster
Opcional
Mutable (solo actualización)
nodeConfig.containerRuntime (obsoleta)
Obsoleto. A partir de la versión 1.13.0, Google Distributed Cloud solo admite containerd como el entorno de ejecución del contenedor. El campo containerRuntime está obsoleto y se quitó del archivo de configuración del clúster generado. Para las versiones 1.13.0 y posteriores de Google Distributed Cloud, si el archivo de configuración del clúster contiene este campo, el valor debe ser containerd.
Recurso de clúster
Opcional
Mutable (solo actualización)
nodeConfig.podDensity
En esta sección, se especifica la configuración de densidad del Pod.
Recurso de clúster
Opcional
Inmutable
nodeConfig.podDensity.maxPodsPerNode
Opcional. String. Especifica la cantidad máxima de Pods que pueden ejecutarse en un solo nodo. En el caso de los clústeres autoadministrados, los valores permitidos para maxPodsPerNode son de 32 a 250 para los clústeres con alta disponibilidad (HA) y de 64 a 250 para clústeres sin alta disponibilidad. Para los clústeres de usuario, los valores permitidos para maxPodsPerNode son de 32 a 250. Si no se especifica, el valor predeterminado es 110. Una vez que se crea el clúster, este valor no se puede actualizar.
Kubernetes asigna un bloque de enrutamiento entre dominios sin clases (CIDR) a cada nodo para que cada Pod pueda tener una dirección IP única. El tamaño del bloque CIDR corresponde al número máximo de Pods por nodo.
Para obtener más información sobre la configuración de la cantidad máxima de Pods por nodo, consulta Herramientas de redes de Pods.
En esta sección, se especifica una configuración de registro privado a nivel de nodo para los clústeres de usuario. Los registros privados a nivel de nodo están diseñados para usarse con
tus cargas de trabajo con el objetivo de que tengas más control sobre las extracciones de imágenes y su
seguridad relacionada.
Para los clústeres de administrador, el registro privado a nivel de nodo se especifica en la sección Credenciales del archivo de configuración del clúster de administrador.
La compatibilidad con la configuración de un registro privado a nivel de nodo solo está disponible en Vista previa para los clústeres de la versión 1.29.
Cuando corresponda, usa esta sección para especificar el nombre y el espacio de nombres del Secret que se creó para almacenar el certificado de la AC (CA raíz del servidor) del registro privado. Si tu registro local no requiere un certificado TLS privado, puedes omitir este bloqueo.
La compatibilidad con la configuración de un registro privado a nivel de nodo solo está disponible en Vista previa para los clústeres de la versión 1.29.
La compatibilidad con la configuración de un registro privado a nivel de nodo solo está disponible en Vista previa para los clústeres de la versión 1.29.
La compatibilidad con la configuración de un registro privado a nivel de nodo solo está disponible en Vista previa para los clústeres de la versión 1.29.
String. En este campo, se especifica el host y el puerto para un solo registro privado. Puedes especificar el host con un nombre de dominio o una dirección IP. No incluyas el prefijo http ni https.
El campo host es obligatorio cuando especificas un registro privado para un clúster de usuario.
La compatibilidad con la configuración de un registro privado a nivel de nodo solo está disponible en Vista previa para los clústeres de la versión 1.29.
Cuando corresponda, usa esta sección para especificar el nombre y el espacio de nombres del secreto que se creó para almacenar las credenciales del registro privado.
Usa el bloque pullCredentialSecretRef cuando configures un clúster de usuario para otorgar a los nodos acceso a un registro privado que requiere autenticación.
La compatibilidad con la configuración de un registro privado a nivel de nodo solo está disponible en Vista previa para los clústeres de la versión 1.29.
La compatibilidad con la configuración de un registro privado a nivel de nodo solo está disponible en Vista previa para los clústeres de la versión 1.29.
La compatibilidad con la configuración de un registro privado a nivel de nodo solo está disponible en Vista previa para los clústeres de la versión 1.29.
Recurso de clúster
Opcional
Mutable
nodePoolUpgradeStrategy
Opcional. En esta sección, se incluye la configuración para configurar la estrategia
de actualización de los grupos de nodo trabajador de tu clúster. Para obtener más información, consulta Actualizaciones paralelas.
Recurso de clúster
Opcional
Mutable
nodePoolUpgradeStrategy.concurrentNodePools
Opcional. Booleano (0 o 1). Valor predeterminado: 1.
Este campo especifica si se deben actualizar o no todos los grupos de nodo trabajador de un clúster de forma simultánea. De forma predeterminada (1), actualiza
de forma secuencial, una después de la otra. Cuando configuras concurrentNodePools como 0, cada grupo de nodo trabajador en el clúster se actualiza en paralelo.
Los nodos de cada grupo de nodo trabajador se actualizan según la
estrategia de actualización en su especificación
de NodePool correspondiente.
Recurso de clúster
Opcional
Mutable
nodePoolUpgradeStrategy.pause
Opcional. Booleano (true o false). Valor predeterminado: false. Este campo especifica si se debe pausar o reanudar una
actualización del clúster activa.
En esta sección, se incluye información de configuración para las verificaciones de estado periódicas. En el recurso de clúster, el único parámetro de configuración disponible para las verificaciones de estado periódicas es el campo enable. Para obtener más información, consulta Verificaciones de estado periódicas.
Recurso de clúster
Opcional
Mutable
periodicHealthCheck.enable
Opcional. Booleano (true|false). Habilita o
inhabilita las verificaciones de estado periódicas para tu clúster. Las verificaciones de estado
periódicas están habilitadas de forma predeterminada en todos los clústeres. Puedes inhabilitar las verificaciones de estado periódicas de un clúster si configuras el campo periodicHealthCheck.enable como false.
Para obtener más información, consulta Inhabilita las verificaciones de estado periódicas.
Recurso de clúster
Opcional
Mutable
profile
Opcional. String. Cuando profile se establece en edge para un clúster independiente, minimiza el consumo de recursos del clúster. El perfil perimetral solo está disponible para clústeres independientes.
El perfil perimetral tiene requisitos de recursos del sistema reducidos y se recomienda para los dispositivos perimetrales con limitaciones de recursos restrictivas.
Si deseas conocer los requisitos de hardware asociados con el perfil perimetral, consulta Requisitos de recursos para clústeres independientes que usan el perfil perimetral.
Recurso de clúster
Opcional
Inmutable
proxy
Si la red está detrás de un servidor proxy, completa esta sección.
De lo contrario, quita esta sección.
Recurso de clúster
Opcional
Mutable
proxy.noProxy
String. Es una lista separada por comas de las direcciones IP, los rangos de direcciones IP, los nombres de host y los nombres de dominio que no deben pasar por el servidor proxy. Cuando Google Distributed Cloud envía una solicitud a una de estas direcciones, hosts o dominios, la solicitud se envía directamente.
Recurso de clúster
Opcional
Inmutable
proxy.url
String. La dirección HTTP del servidor proxy. Incluye el número de puerto incluso si es el mismo que el puerto predeterminado del esquema.
Opcional. Booleano (true|false). Habilita o inhabilita seccomp en todo el clúster. Cuando se inhabilita este campo,
los contenedores sin un perfil seccomp en el archivo de configuración
del clúster se ejecutan en modo unconfined. Cuando se habilita este campo, los mismos contenedores se protegen con el perfil seccomp predeterminado del entorno de ejecución del contenedor. Esta función está habilitada de forma predeterminada.
Después de la creación del clúster, este campo solo se puede activar o desactivar durante la actualización.
Si quieres obtener más información, consulta
Usa seccomp para restringir contenedores.
Recurso de clúster
Opcional
Mutable (solo actualización)
clusterSecurity.enableRootlessContainers
Opcional. Booleano (true|false). Habilita o inhabilita los contenedores del sistema de equipos físicos sin raíz. Cuando este campo está habilitado, los contenedores del sistema de equipos físicos se ejecutan como un usuario no raíz con un ID de usuario en el rango de 2000-5000. Cuando está inhabilitado, los contenedores del sistema de equipos físicos se ejecutan como un usuario raíz. Esta función está habilitada de forma predeterminada. No se recomienda desactivar esta función, ya que ejecutar contenedores como usuario raíz implica un riesgo de seguridad. Después de la creación del clúster, este campo solo se puede activar o desactivar durante la actualización. Para obtener más información, consulta No ejecutes contenedores como usuario raíz.
Recurso de clúster
Opcional
Mutable (solo actualización)
clusterSecurity.authorization
Opcional. La autorización configura el acceso de los usuarios al clúster.
Recurso de clúster
Opcional
Mutable
clusterSecurity.authorization.clusterAdmin
Opcional. Especifica el administrador del clúster para este clúster.
Opcional. El campo gcpAccounts especifica una lista de cuentas a las que se les otorga la función de control de acceso basado en roles (RBAC) de Kubernetes clusterrole/cluster-admin. Las cuentas con este
rol tienen acceso completo a todos los recursos del clúster en todos los
espacios de nombres. En este campo, también se configuran las políticas de RBAC que permiten que las cuentas especificadas usen la puerta de enlace de conexión para ejecutar comandos de kubectl en el clúster. Esto es
conveniente si tienes que administrar varios clústeres, en particular, en
un entorno híbrido con clústeres de GKE y
locales.
Este campo toma un array de nombres de cuenta. Se admiten
cuentas de usuario y de servicio. Para los usuarios, debes especificar las direcciones de correo electrónico de sus cuentas de Google Cloud. Para las cuentas de servicio, especifica las direcciones de correo electrónico en el siguiente formato: SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com.
Por ejemplo:
Cuando actualices un clúster para agregar una cuenta, asegúrate de incluir todas las cuentas de la lista (tanto las existentes como las nuevas), ya que el comando de actualización reemplaza la lista por lo que especifiques en la actualización.
Este campo solo se aplica a los clústeres que pueden ejecutar cargas de trabajo. Por
ejemplo, no puedes especificar gcpAccounts para los clústeres
de administrador.
Recurso de clúster
Opcional
Mutable
clusterSecurity.startUIDRangeRootlessContainers
Opcional. Número entero. Valor predeterminado: 2000. Los contenedores del sistema
en Google Distributed Cloud ayudan a instalar y administrar clústeres. Los IDs de usuario (UID) y los IDs de grupo (GID) que usan estos contenedores se pueden controlar con el campo startUIDRangeRootlessContainers en la especificación del clúster. Los contenedores del sistema usan los UID y GID en el rango de startUIDRangeRootlessContainers a startUIDRangeRootlessContainers + 2,999, lo que proporciona un rango de 2000 a 4999 de forma predeterminada. Cuando actualices startUIDRangeRootlessContainers, selecciona un valor que garantice que los espacios de UID y GID que usan los contenedores del sistema no se superpongan con los asignados a las cargas de trabajo del usuario. El valor startUIDRangeRootlessContainers solo se puede cambiar durante las actualizaciones.
Obligatorio. String. Usa el campo path para especificar la ruta de la máquina host en la que se pueden descubrir los discos activados. Se crea un PersistentVolume (PV) local para cada activación. La ruta predeterminada es /mnt/localpv-share. Si deseas obtener instrucciones para configurar activaciones de nodos, consulta Configura activaciones de nodos LVP.
Recurso de clúster
Obligatorio
Inmutable
storage
En esta sección, se incluye la configuración del almacenamiento del clúster.
Recurso de clúster
Obligatorio
Inmutable
storage.lvpNodeMounts
En esta sección, se especifica la configuración (ruta) para volúmenes persistentes locales respaldados por discos activados. Debes dar formato a estos discos y activarlos. Puedes realizar esta tarea antes o después de crear el clúster. Para obtener más información, consulta Activaciones de nodos LVP.
Recurso de clúster
Obligatorio
Inmutable
storage.lvpShare
En esta sección, se especifica la configuración para volúmenes persistentes locales respaldados por subdirectorios en un sistema de archivos compartidos. Estos subdirectorios se crean automáticamente durante la creación del clúster.
Para obtener más información, consulta Uso compartido de LVP.
Recurso de clúster
Obligatorio
Inmutable
storage.lvpShare.path
Obligatorio. String. Usa el campo path para especificar la ruta de la máquina anfitrión en la que se pueden crear subdirectorios. Se crea un PersistentVolume (PV) local para cada subdirectorio. Si deseas obtener instrucciones para configurar tu recurso compartido de LVP, consulta Configura un recurso compartido de LVP.
Recurso de clúster
Obligatorio
Inmutable
storage.lvpShare.numPVUnderSharedPath
Obligatorio. String. Especifica la cantidad de subdirectorios que se crearán en lvpShare.path. El valor predeterminado es 5. Si deseas obtener instrucciones para configurar tu recurso compartido de LVP, consulta Configura un recurso compartido de LVP.
Recurso de clúster
Obligatorio
Inmutable
storage.lvpShare.storageClassName
Obligatorio. String. Especifica la StorageClass que se usará para crear volúmenes persistentes. StorageClass se crea durante la creación del clúster. El valor predeterminado es local-shared. Si deseas obtener instrucciones para configurar tu recurso compartido de LVP, consulta Cómo configurar un recurso compartido de LVP.
Recurso de clúster
Opcional
Inmutable
type
Obligatorio. String. Especifica el tipo de clúster. El modelo de implementación
estándar consta de un solo clúster de administrador y uno o más
clústeres de usuario, que son administrados por el clúster de administrador.
Google Distributed Cloud admite los siguientes tipos de clústeres:
De administrador: un clúster que se usa para administrar clústeres de usuario.
Usuario: un clúster que se usa para ejecutar cargas de trabajo.
Híbrido: un solo clúster para administrador y cargas de trabajo, que también
puede administrar clústeres de usuario.
Independiente: Un solo clúster que puede administrarse a sí mismo y que también puede ejecutar cargas de trabajo, pero no puede crear ni administrar otros clústeres de usuario.
El tipo de clúster se especifica en el momento de la creación y no se puede cambiar para
actualizaciones o actualizaciones. Para obtener más información sobre cómo crear un
clúster, consulta
Crea clústeres: descripción general.
Valores permitidos: admin | user | hybrid | standalone
No se puede modificar este valor para los clústeres existentes.
Recurso de clúster
Obligatorio
Inmutable
name
Obligatorio. String. Por lo general, el nombre del espacio de nombres usa un patrón de cluster-CLUSTER_NAME, pero el prefijo cluster- no es estrictamente obligatorio desde la versión 1.7.2 de Google Distributed Cloud.
No se puede modificar este valor para los clústeres existentes.
Recurso del espacio de nombres
Requeridos
Inmutable
clusterName
String. Obligatorio. El nombre del clúster en el que agregas el grupo de nodos. Crea el recurso del grupo de nodos en el mismo espacio de nombres que el clúster asociado y haz referencia al nombre del clúster en este campo. Para obtener más información, consulta Agrega y quita grupos de nodos en un clúster.
Opcional. Es un número entero (no negativo). Especifica la cantidad máxima de solicitudes de extracción de imagen que se pueden agregar a la cola de procesamiento para manejar los aumentos repentinos de solicitudes. En cuanto comienza la extracción, se puede agregar una solicitud nueva a la cola. El valor predeterminado es 10. Este campo corresponde a la opción registryBurst de configuración de kubelet (v1beta1).
El valor de registryPullQPS tiene prioridad sobre esta configuración. Por ejemplo, con la configuración predeterminada, se permiten aumentos de actividad de hasta 10 consultas simultáneas, pero deben procesarse a la velocidad predeterminada de cinco consultas por segundo. Este comportamiento de aumento de actividad solo se usa cuando registryPullQPS es mayor que 0.
Este campo se puede configurar cada vez que creas, actualizas o actualizas un
clúster, y la configuración persiste a través de las actualizaciones del clúster. Para obtener más información, consulta Establece la configuración de extracción de imágenes de kubelet.
Recurso de NodePool
Opcional
Mutable
kubeletConfig.registryPullQPS
Opcional. Es un número entero (no negativo). Especifica la velocidad de procesamiento de las consultas para las extracciones de imágenes de Container Registry en las consultas por segundo (QPS).
Cuando registryPullQPS se configura con un valor superior a 0, la tasa de consultas se restringe a esa cantidad de consultas por segundo. Si registryPullQPS se configura como 0, no hay restricciones en la tasa de consultas. El valor predeterminado es 5.
Este campo corresponde a la opción registryPullQPS de configuración de kubelet (v1beta1).
Este campo se puede configurar cada vez que creas, actualizas o actualizas un
clúster, y la configuración persiste a través de las actualizaciones del clúster. Para obtener más información, consulta Establece la configuración de extracción de imágenes de kubelet.
Recurso de NodePool
Opcional
Mutable
kubeletConfig.serializeImagePulls
Opcional. Booleano (true|false). Este campo
especifica si las extracciones de Container Registry se procesan en paralelo o
de a una a la vez. El valor predeterminado es true y especifica que las extracciones se procesan de a una. Cuando se configura en false, kubelet extrae imágenes en paralelo. Este campo corresponde a la opción serializeImagePulls de configuración de kubelet (v1beta1).
Este campo se puede configurar cada vez que creas, actualizas o actualizas un
clúster, y la configuración persiste a través de las actualizaciones del clúster. Para obtener más información, consulta Establece la configuración de extracción de imágenes de kubelet.
Recurso de NodePool
Opcional
Mutable
taints
Opcional. Objeto. Un taint de nodo te permite marcar un nodo a fin de que el programador evite o impida su uso para ciertos Pods. Un taint consiste en un par clave-valor y un efecto asociado. Los valores key y value son strings que usas para identificar el taint, y el valor effect especifica cómo se manejan los Pods para el nodo. El objeto taints puede tener varios taints.
El campo effect puede tener uno de los siguientes valores:
NoSchedule: Ningún Pod puede programar en el nodo, a menos que tenga una tolerancia coincidente.
PreferNoSchedule: El sistema evita colocar un Pod que no tolera el taint en el nodo, pero no es obligatorio.
NoExecute: Los Pods que no toleran el taint se expulsan de inmediato y los que sí toleran el taint nunca se expulsan.
Para Google Distributed Cloud, los taints se concilian con los nodos del
grupo de nodos, a menos que la anotación baremetal.cluster.gke.io/label-taint-no-sync
se aplique al clúster. Para obtener más información sobre los taints, consulta Taints and Tolerancias.
Por ejemplo:
taints:
- key: status
value: testpool
effect: NoSchedule
Recurso de NodePool
Opcional
Mutable
labels
Opcional. Asignación (pares clave-valor).
Las etiquetas se concilian con los nodos del grupo de nodos, a menos que la anotación baremetal.cluster.gke.io/label-taint-no-sync se aplique al clúster. Para obtener más información sobre las etiquetas, consulta Etiquetas de recurso y selectores.
Recurso de NodePool
Opcional
Mutable
upgradeStrategy
Opcional. En esta sección, se incluyen los parámetros de configuración que permiten configurar la estrategia de actualización de los nodos de un grupo de nodo trabajador. Para obtener más información, consulta Actualizaciones paralelas.
Nota: No agregues esta sección para el plano de control o los grupos de nodos del balanceador de cargas.
Recurso de NodePool
Opcional
Mutable
upgradeStrategy.parallelUpgrade
Opcional. En esta sección, se incluye la configuración que permite configurar actualizaciones de nodos paralelos para un grupo de nodo trabajador. En una actualización de clúster predeterminada típica, cada nodo del clúster se actualiza de forma secuencial, uno después del otro. Puedes
configurar grupos de nodo trabajador para que varios nodos se actualicen en paralelo
cuando actualices tu clúster. La actualización de nodos en paralelo acelera las actualizaciones de los clústeres de manera significativa, en especial para los que tienen cientos de nodos.
En un grupo de nodo trabajador, puedes especificar la cantidad de nodos que se actualizarán de forma simultánea y puedes establecer un umbral mínimo para la cantidad de nodos capaces de ejecutar cargas de trabajo durante el proceso de actualización.
Opcional. Es un número entero (positivo). Valor predeterminado: 1. Máx.: 15.
De forma predeterminada (1), los nodos se actualizan de forma secuencial,
uno después del otro. Cuando estableces concurrentNodes en un número mayor que 1, este campo especifica la cantidad de nodos que se actualizarán en paralelo. Ten en cuenta las siguientes restricciones para concurrentNodes:
El valor no puede superar el menor del 50% de la cantidad de nodos en el grupo de nodos ni el número fijo 15. Por ejemplo, si tu grupo de nodos tiene 20 nodos, no puedes especificar un valor superior a 10. Si tu grupo de nodos tiene 100 nodos, 15 es el valor máximo que puedes especificar.
Cuando usas este campo junto con el campo minimumAvailableNodes, sus valores combinados no pueden exceder la cantidad total de nodos en el grupo de nodos. Por ejemplo, si tu grupo de nodos tiene 20 nodos y minimumAvailableNodes está configurado como 18, concurrentNodes no puede exceder 2.
Las actualizaciones paralelas no respetan el presupuesto de interrupción de Pods (PDB).
Si tus cargas de trabajo son sensibles a las interrupciones, te recomendamos que
especifiques minimumAvailableNodes para asegurarte de que una cierta cantidad
de nodos permanezcan disponibles para ejecutar cargas de trabajo durante el proceso de
actualización. Para obtener más información, consulta Actualizaciones paralelas.
Opcional. Es un número entero (no negativo). Predeterminado: Depende de concurrentNodes. Para obtener más detalles sobre los valores predeterminados de minimumAvailableNodes, consulta Configuración predeterminada de actualizaciones paralelas. minimumAvailableNodes te permite especificar la cantidad de nodos del grupo de nodos que deben permanecer disponibles durante todo el proceso de actualización. Se considera que un nodo no está disponible
cuando se actualiza de forma activa. También se considera que un nodo no está disponible cuando se cumple alguna de las siguientes condiciones:
El nodo está en modo de mantenimiento
El nodo se está conciliando
El nodo se detiene en medio de una actualización.
Cuando usas este campo junto con el campo concurrentNodes, sus valores combinados no pueden exceder la cantidad total de nodos en el grupo de nodos. Por ejemplo, si tu grupo de nodos tiene 20 nodos y concurrentNodes está configurado como 10, minimumAvailableNodes no puede superar 10.
Un valor alto para minimumAvailableNodes minimiza los problemas de capacidad para programar Pods y, por lo tanto, ayuda a proteger las cargas de trabajo durante una actualización del clúster. Sin embargo, el valor alto de minimumAvailableNodes
aumenta el riesgo de que una actualización se detenga a la espera de que los nodos
estén disponibles. Para obtener más información, consulta Actualizaciones paralelas.
Opcional. Usa esta sección para especificar un registro privado que se usará en las
imágenes de carga de trabajo. Este método de configuración del registro privado en la sección de credenciales del archivo de configuración del clúster es para clústeres híbridos o independientes que solo tienen grupos de nodo trabajador.
String. En este campo, se especifica el host y el puerto para un solo registro privado. Puedes especificar el host con un nombre de dominio o una dirección IP. No incluyas el prefijo http ni https.
El campo host es obligatorio cuando especificas un registro privado para un clúster híbrido o independiente.
Opcional. String. Ruta del archivo de certificado de AC (CA raíz del servidor) si tu servidor de registro usa un certificado TLS privado. Si tu registro local
no requiere un certificado TLS privado, puedes omitir este campo.
Opcional. String. Ruta de acceso del archivo de configuración de la CLI de Docker, config.json. Docker guarda los parámetros de configuración de autenticación en el archivo de configuración. Este campo se aplica
al uso solo de registros privados a nivel de nodo.
Usa el campo pullCredentialConfigPath cuando configures un clúster híbrido o independiente para otorgar a los nodos acceso a un registro privado que requiera autenticación.
Credenciales
Opcional
Mutable
registryMirrors
Opcional. Usa esta sección para especificar una duplicación de registro que se usará en la instalación de clústeres, en lugar de Container Registry (gcr.io). Si deseas obtener más información sobre el uso de una duplicación de registro, consulta Instala Google Distributed Cloud mediante una duplicación del registro.
String. El extremo de la duplicación, que consiste en la dirección IP y el número de puerto del servidor de registro. De forma opcional, puedes usar tu propio espacio de nombres en tu servidor de registro en lugar del espacio de nombres raíz. Sin un espacio de nombres, el formato de extremo es REGISTRY_IP:PORT. Cuando usas un espacio de nombres, el formato del extremo es REGISTRY_IP:PORT/v2/NAMESPACE.
/v2 es obligatorio cuando se especifica un espacio de nombres.
El campo endpoint es obligatorio cuando especificas una duplicación de registro. Puedes especificar varias duplicaciones o extremos.
Opcional. String. Ruta del archivo de certificado de AC (CA raíz del servidor) si tu servidor de registro usa un certificado TLS privado. Si tu registro local
no requiere un certificado TLS privado, puedes omitir este campo.
Duplicación del registro
Opcional
Mutable
registryMirrors.pullCredentialConfigPath
Opcional. String. Ruta de acceso del archivo de configuración de la CLI de Docker, config.json. Docker guarda la configuración de autenticación en el
archivo de configuración. Este campo solo se aplica al uso de las duplicaciones de registro. Si tu servidor de registro no requiere un archivo de configuración de Docker para la autenticación, puedes omitir este campo.
Opcional. Un arreglo de nombres de dominio para hosts que se duplican de forma local para la duplicación de registro determinada (endpoint). Cuando el entorno de ejecución del contenedor encuentra solicitudes de extracción de imágenes de un host especificado, primero verifica la duplicación del registro local. Para obtener información adicional, consulta Crea clústeres a partir de la duplicación del registro.
El archivo de configuración del clúster que genera bmctl para Google Distributed Cloud incluye campos para especificar rutas de acceso a credenciales y archivos de claves en el sistema de archivos local. Estas credenciales y claves son necesarias para conectar los clústeres entre sí y con tu proyecto de Google Cloud.
String. Es la ruta a la clave de la cuenta de servicio de Container Registry. La cuenta de servicio de Container Registry es un agente de servicio que actúa en nombre de Container Registry cuando interactúa con los servicios de Google Cloud.
Credenciales
Opcional
Mutable
sshPrivateKeyPath
String. Es la ruta a la clave privada SSH. Se requiere SSH para el acceso a los nodos.
Credenciales
Opcional
Mutable
gkeConnectAgentServiceAccountKeyPath
String. Es la ruta a la clave de la cuenta de servicio del agente.
Google Distributed Cloud usa esta cuenta de servicio para mantener una
conexión entre Google Distributed Cloud y Google Cloud.
String. Es la ruta a la clave de la cuenta de servicio de registro.
Google Distributed Cloud usa esta cuenta de servicio para registrar tus clústeres de usuario con Google Cloud.
String. Es la ruta a la clave de la cuenta de servicio de operaciones.
Google Distributed Cloud usa la cuenta de servicio de operaciones para autenticarse con la observabilidad de Google Cloud para acceder a la API de Logging y a la API de Monitoring.
Define la configuración del rango de CIDR de IPv4. Se debe proporcionar al menos uno de los campos ipv4 o ipv6 para el recurso ClusterCidrConfig.
Recurso ClusterCIDRConfig
Opcional
Inmutable
ipv4.cidr
String. Configura el bloque de CIDR del nodo de IPv4. Los nodos solo pueden tener un rango de cada familia. Este bloque CIDR debe coincidir con el CIDR del Pod descrito en el recurso Cluster.
Por ejemplo:
ipv4:
cidr: "10.1.0.0/16"
Recurso ClusterCIDRConfig
Requeridos
Inmutable
ipv4.perNodeMaskSize
Número entero. Define el tamaño de la máscara para el bloque de CIDR de IPv4 del nodo. Por ejemplo, el valor 24 se traduce como máscara de red /24. Asegúrate de que la máscara de red del bloque de CIDR del nodo sea mayor que la cantidad máxima de pods que kubelet puede programar, que se define en la marca --max-pods de kubelet.
Recurso ClusterCIDRConfig
Requeridos
Inmutable
ipv6
Define la configuración del rango de CIDR de IPv6. Se debe proporcionar al menos uno de los campos ipv4 o ipv6 para el recurso ClusterCidrConfig.
Recurso ClusterCIDRConfig
Opcional
Inmutable
ipv6.cidr
String. Configura el bloque de CIDR del nodo de IPv6. Los nodos solo pueden tener un rango de cada familia.
Por ejemplo:
ipv6:
cidr: "2620:0:1000:2631:3:10:3:0/112"
Recurso ClusterCIDRConfig
Requeridos
Inmutable
ipv6.perNodeMaskSize
Número entero. Define el tamaño de la máscara para el bloque de CIDR de IPv6 del nodo. Por ejemplo, el valor 120 se traduce como máscara de red /120. Asegúrate de que la máscara de red del bloque de CIDR del nodo sea mayor que la cantidad máxima de pods que kubelet puede programar, que se define en la marca --max-pods de kubelet.
Recurso ClusterCIDRConfig
Requeridos
Inmutable
nodeSelector.matchLabels
Define a qué nodos se aplica la configuración de CIDR. Un selector de nodos
vacíos funciona como valor predeterminado que se aplica a todos los nodos.
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2024-06-27 (UTC)"],[],[]]