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:
bmctlcreateconfig-cCLUSTER_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 Anthos alojados en clústeres físicos.
Recurso del 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 Anthos Network Gateway. Anthos Network Gateway es el componente clave para habilitar
funciones avanzadas de redes en GKE Enterprise y
Google Kubernetes Engine (GKE). Uno de los principales beneficios de Anthos Network Gateway es que puede asignar direcciones IP flotantes de forma dinámica a partir de 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 GKE en Bare Metal. Las capacidades de Ingress integradas para tu clúster solo admiten Ingress. Si integras
Istio o Anthos Service Mesh para obtener los beneficios adicionales de una malla de servicios
completamente funcional, te recomendamos que inhabilites el paquete
Ingress. Este campo se establece en true de forma predeterminada. Este campo no está presente en el archivo de configuración del clúster generado. Puedes inhabilitar Ingress del paquete solo para los clústeres de la versión 1.13.0 y versiones 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.multipleNetworkInterfaces
Opcional. Booleano. Establece este campo en true a fin de habilitar varias interfaces de red para los Pods.
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.
Rango mínimo de CIDR de Service: Valor de máscara de /24, que corresponde a un tamaño de 8 bits (256 direcciones).
Rango máximo de CIDR de Service: 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
Obligatorio
Inmutable
clusterOperations
En esta sección, se incluye información de Cloud Logging y Cloud Monitoring.
Recurso de clúster
Requeridos
Mutable
clusterOperations.enableApplication
Booleano. Configúralo como true para recopilar registros o métricas de la aplicación, además de la recopilación predeterminada de registros o métricas del sistema, que corresponden a los componentes del sistema, como el plano de control de Kubernetes o los agentes de administración de clústeres. Puedes cambiar este valor en cualquier momento.
Recurso de clúster
Opcional
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.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).
Este campo se puede cambiar cada vez que actualizas un clúster.
Recurso de clúster
Requeridos
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. Esto 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
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 Google Distributed Cloud mediante la actualización del 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 en 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
Objeto. 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 modificar ni quitar grupos de direcciones existentes.
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
Inmutable
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 el modo bundled, GKE on Bare Metal 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.
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.
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 agregar un repositorio de paquetes cuando se inicializan las máquinas físicas.
Recurso de clúster
Opcional
Inmutable
nodeConfig
En esta sección, se incluyen las opciones para configurar los 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, GKE en Bare Metal admite containerd solo 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 GKE on Bare Metal, 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.
Recurso de clúster
Opcional
Inmutable
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 direcciones IP, rangos de direcciones IP, nombres de host y nombres de dominio que no deben pasar por el servidor proxy. Cuando GKE on Bare Metal 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 este campo está inhabilitado, los contenedores sin un perfil “seccomp” en el archivo de configuración del clúster se ejecutan de forma ilimitada. Cuando este campo está habilitado, esos mismos contenedores están protegidos mediante el perfil predeterminado "seccomp" 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 deseas 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 contenedores del sistema en 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. En el campo gcpAccounts, se especifica una lista de cuentas a las que se les otorga la función clusterrole/cluster-admin de control de acceso basado en funciones (RBAC) de Kubernetes. 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 especial en
un entorno híbrido con clústeres de GKE y
locales.
Este campo tiene 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 (las existentes y 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
storage.lvpNodeMounts.path
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 para el 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 único clúster de administrador y uno o más clústeres de usuarios, que se administran mediante el clúster de administrador. GKE en Bare Metal 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 clúster único para el administrador y las cargas de trabajo que también puede administrar clústeres de usuario.
Independiente: un clúster único 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 usuarios.
El tipo de clúster se especifica en la creación del clúster y no se puede cambiar para actualizaciones. Si deseas obtener más información para 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 GKE en Bare Metal.
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. Array de direcciones IP (IPv4). Esto define el grupo de nodos de tus nodos trabajadores.
Recurso de NodePool
Opcional
Mutable
nodes.address
Opcional. String (dirección IPv4). Una o más direcciones IP para los nodos que conforman tu grupo de nodos trabajadores.
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 GKE on Bare Metal, 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:statusvalue:testpooleffect: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
registryMirrors
Opcional. Usa esta sección a fin de especificar una duplicación de registro para instalar clústeres, en lugar de Container Registry (gcr.io). Para obtener más información sobre el uso de una duplicación de registro, consulta Instala GKE en Bare Metal mediante una duplicación de 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 varios duplicados/extremos.
Opcional. String. La ruta de acceso del archivo de Certificado de CA (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 al 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 se aplica solo al uso de 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 GKE on Bare Metal incluye campos a fin de especificar rutas de acceso a archivos de credenciales y 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 una cuenta de servicio administrada por Google 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.
GKE en Bare Metal usa esta cuenta de servicio para mantener una
conexión entre GKE en Bare Metal y Google Cloud.
String. Es la ruta a la clave de la cuenta de servicio de registro.
GKE on Bare Metal usa esta cuenta de servicio para registrar los clústeres de usuario con Google Cloud.
String. Es la ruta a la clave de la cuenta de servicio de operaciones.
GKE on Bare Metal usa la cuenta de servicio de operaciones para autenticarse con Google Cloud's operations suite a fin de acceder a la API de Logging y 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 CIDR del nodo IPv4. Los nodos solo pueden tener un rango de cada familia. Este bloque CIDR debe coincidir con el CIDR del Pod que se describe 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 CIDR 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 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 CIDR del nodo 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 CIDR 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 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ío funciona como predeterminado y 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: 2023-11-18 (UTC)"],[],[]]