En esta página, se describen los campos admitidos en clústeres de Anthos en el archivo de configuración del clúster en equipos físicos. 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 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
—
—
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 las funciones avanzadas de redes en Anthos 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 los clústeres de Anthos alojados en Bare Metal. Las funciones de Ingress empaquetadas 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 Ingress en paquete. 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 Ingress para 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. Durante la creación del clúster, los CIDR de Pods especificados en la configuración de tus clústeres se convierten en un recurso personalizado predeterminado “ClusterCIDRConfig” y se usan como CIDR de Pod de todo el clúster.
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.
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 del clúster
—
—
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 del clúster
—
—
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 del clúster
—
—
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 del clúster
—
—
gkeConnect.projectID
Obligatorio, string Es el ID del proyecto de Google Cloud que deseas
usar para conectar el clúster a Google Cloud. Esto también se conoce como el proyecto host de flota.
No se puede modificar este valor para los clústeres existentes.
Recurso de clúster
Obligatorio
Inmutable
kubevirt.useEmulation
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 del clúster
—
—
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, los clústeres de Anthos en el equipo físico instalan un balanceador de cargas en los nodos del balanceador de cargas durante la creación. 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
—
—
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.containerRuntime (obsoleta)
Obsoleto. A partir de la versión 1.13.0, los clústeres de Anthos alojados en Bare Metal solo admiten
containerd como entorno de ejecución del contenedor. El campo containerRuntime dejó de estar disponible y se quitó del archivo de configuración del clúster generado. En el caso de los clústeres de Anthos alojados en Bare Metal 1.13.0 y versiones posteriores, 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 del clúster
—
—
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
—
—
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 los clústeres de Anthos alojados en equipos físicos envían 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
—
—
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 funciones (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 varios clústeres para administrar, en especial
en un entorno híbrido con clústeres de GKE y locales.
Este campo toma un array de los nombres de las cuentas. 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 con 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 existentes como nuevas) porque el comando de actualización reemplaza la lista con 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.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. Los clústeres de Anthos alojados en equipos físicos admiten 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, ya que los clústeres de Anthos se alojan en la versión de equipo físico 1.7.2.
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.
En los clústeres de Anthos en equipos físicos, los taints se concilian con los nodos del grupo de nodos, a menos que se aplique la anotación baremetal.cluster.gke.io/label-taint-no-sync 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.
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 del registro. Puedes especificar varias duplicaciones o extremos.
Opcional. String. Ruta de acceso del archivo de certificado de CA si el 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 array 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 desde la duplicación del registro.
El archivo de configuración del clúster que genera bmctl para los clústeres de Anthos en equipos físicos incluye campos para especificar rutas de acceso a las credenciales y los 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 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.
Los clústeres de Anthos en el equipo físico usan esta cuenta de servicio para mantener una conexión entre los clústeres de Anthos en el equipo físico y Google Cloud.
String. Es la ruta a la clave de la cuenta de servicio de registro.
Los clústeres de Anthos alojados en equipos físicos usan esta cuenta de servicio para registrar los clústeres de usuarios con Google Cloud.
String. Es la ruta a la clave de la cuenta de servicio de operaciones.
Los clústeres de Anthos en el equipo físico usan la cuenta de servicio de operaciones para autenticarse con Google Cloud's operations suite 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 de ClusterCIDRConfig
Opcional
Inmutable
ipv4.cidr
String. Establece 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 descrito en el recurso Cluster.
Por ejemplo:
ipv4:
cidr: "10.1.0.0/16"
Recurso de 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 el kubelet puede programar, lo que se define en la marca --max-pods de kubelet.
Recurso de 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 de ClusterCIDRConfig
Opcional
Inmutable
ipv6.cidr
String. Establece 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 de 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 el kubelet puede programar, lo que se define en la marca --max-pods de kubelet.
Recurso de ClusterCIDRConfig
Requeridos
Inmutable
nodeSelector.matchLabels
Define a qué nodos se aplica la configuración de CIDR. Un selector de nodo vacío funciona como 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: 2023-07-20 (UTC)"],[],[]]