Este documento ha sido traducido utilizando tecnología de traducción automática. Si bien nos esforzamos por proporcionar traducciones precisas, no ofrecemos garantías sobre la integridad, precisión o confiabilidad del contenido traducido. En caso de discrepancia, la versión original en inglés prevalecerá y constituirá el texto autorizado.

SUSE® Rancher Prime: RKE2 Referencia de configuración del clúster

Esta sección cubre las opciones de configuración que están disponibles en Rancher para un clúster de Kubernetes RKE2 nuevo o existente.

Descripción general

Puedes configurar las opciones de Kubernetes de una de las dos siguientes maneras:

  • Interfaz de Rancher: Utiliza la interfaz de Rancher para seleccionar opciones que se personalizan comúnmente al configurar un clúster de Kubernetes.

  • Archivo de Configuración del Clúster: En lugar de utilizar la interfaz de Rancher para elegir opciones de Kubernetes para el clúster, los usuarios avanzados pueden crear un archivo de configuración RKE2. Utilizar un archivo de configuración permite establecer muchas opciones adicionales disponibles para una instalación de RKE2.

Editando Clústeres en la Interfaz de Rancher

La interfaz de Rancher proporciona dos maneras de editar un clúster:

  1. Con un formulario.

  2. Con YAML.

Editando Clústeres con un Formulario

El formulario cubre las opciones más frecuentemente necesarias para los clústeres.

Para editar tu clúster,

  1. Haz clic en ☰ > Gestión de Clústeres.

  2. Ve al clúster que deseas configurar y haz clic en ⋮ > Editar Config.

Editando Clústeres en YAML

Para una referencia completa de las opciones configurables para clústeres RKE2 en YAML, consulta la documentación de RKE2.

Para editar tu clúster en YAML:

  1. Haz clic en ☰ > Gestión de Clústeres.

  2. Ve al clúster que deseas configurar y haz clic en ⋮ > Editar como YAML.

  3. Edita las opciones de RKE bajo la directiva rkeConfig.

Opciones de configuración en la interfaz de usuario de Rancher

Configuración del grupo de máquinas

Esta subsección cubre configuraciones genéricas del grupo de máquinas. Para configuraciones específicas de proveedores de infraestructura, consulta lo siguiente:

Nombre de repositorio

El nombre del grupo de máquinas.

Número de máquinas

El número de máquinas en el grupo.

Funciones

Opción para asignar roles de etcd, plano de control y trabajador a los nodos.

Avanzadas

Reemplazo automático

La cantidad de tiempo que los nodos pueden estar inalcanzables antes de ser eliminados y reemplazados automáticamente.

Drenar antes de eliminar

Permite drenar nodos desalojando todos los pods antes de que el nodo sea eliminado.

Etiquetas de nodo de Kubernetes

Añadir etiquetas a los nodos para ayudar con la organización y selección de objetos.

Para detalles sobre los requisitos de sintaxis de etiquetas, consulta la documentación de Kubernetes.

Taints

Añadir taints a los nodos, para evitar que los pods se programen o se ejecuten en los nodos, a menos que los pods tengan tolerancias coincidentes.

Configuración del clúster

Fundamentos

Kubernetes Version

La versión de Kubernetes instalada en los nodos de su clúster.

Para obtener detalles sobre cómo actualizar o revertir Kubernetes, consulte Actualización de Kubernetes.

Proveedor de red de contenedores

El Proveedor de red que utiliza el clúster.

Después de lanzar el clúster, no puedes cambiar tu proveedor de red. Por lo tanto, elige cuidadosamente qué proveedor de red deseas utilizar, ya que Kubernetes no permite cambiar entre proveedores de red. Una vez que se crea un clúster con un proveedor de red, cambiar de proveedores de red requeriría desmantelar todo el clúster y todas sus aplicaciones.

De forma predeterminada, Rancher es compatible con los siguientes proveedores de red:

Para más detalles sobre los diferentes proveedores de red y cómo configurarlos, por favor consulta nuestra documentación de RKE2.

Al utilizar cilium o multus,cilium como tu proveedor de interfaz de red de contenedor, asegúrate de que la opción Habilitar soporte IPv6 también esté habilitada.

Proveedor de nube

Puedes configurar un proveedor de nube de Kubernetes. Si deseas utilizar volúmenes y almacenamiento aprovisionados dinámicamente en Kubernetes, normalmente debes seleccionar el proveedor de nube específico para poder usarlo. Por ejemplo, si deseas utilizar Amazon EBS, necesitarías seleccionar el aws proveedor de nube.

Si el proveedor de nube que deseas utilizar no está listado como opción, necesitarás usar la opción de archivo de configuración para configurar el proveedor de nube. Por favor, consulta esta documentación sobre cómo configurar el proveedor de nube.

Plantilla de configuración de admisión de seguridad de pods

La plantilla de configuración de admisión de seguridad de pods predeterminada plantilla de configuración de admisión de seguridad de pods para el clúster.

Perfil de cumplimiento del trabajador

Selecciona un punto de referencia de cumplimiento para validar la configuración del sistema.

Aislamiento de red del proyecto

Si su proveedor de red permite el aislamiento de red del proyecto, puede elegir habilitar o deshabilitar la comunicación entre proyectos.

El aislamiento de red del proyecto está disponible si estás utilizando cualquier complemento de red de RKE2 que soporte la aplicación de políticas de red de Kubernetes, como Canal.

CoreDNS

Por defecto, CoreDNS se instala como el proveedor de DNS predeterminado. Si CoreDNS no está instalado, debe instalar usted mismo un proveedor de DNS alternativo. Consulta la documentación de RKE2 para configuraciones adicionales de CoreDNS.

Ingress
  • Ingress-NGINX

  • Traefik

Ingress-NGINX EOL: El controlador de la comunidad ingress-nginx alcanzó el final de su vida útil (EOL) en marzo de 2026 y queda obsoleto en RKE2 v1.36. Las versiones de RKE2 aprovisionadas por SUSE Rancher Prime continuarán recibiendo ingress-nginx soporte y correcciones de CVE (8+) durante todo el ciclo de vida de RKE2 v1.32, v1.33, v1.34, v1.35 y v1.36. Traefik es la ruta de migración recomendada para los entornos de SUSE Rancher RKE2, se recomienda migrar lo antes posible. Consulta Migrar de Ingress NGINX a Traefik en un clúster RKE2 provisionado por Rancher para más detalles.

Esta es la opción heredada de Ingress para habilitar Ingress-NGINX dentro del clúster. Consulta la documentación de RKE2 para opciones de configuración adicionales.

Si deseas exponer tus aplicaciones en una configuración de alta disponibilidad, y estás alojando tus nodos con un proveedor de nube que no tiene una función de balanceo de carga nativa, habilita esta opción para usar Traefik Ingress dentro del clúster. Consulta la documentación de RKE2 para opciones de configuración adicionales.

Servidor de Métricas

Opción para habilitar o deshabilitar Metrics Server.

Cada proveedor de nube capaz de lanzar un clúster utilizando RKE2 puede recopilar métricas y monitorizar tus nodos del clúster. Habilita esta opción para ver las métricas de tus nodos desde el portal de tu proveedor de nube.

Configuración de Complementos

Manifiestos adicionales de Kubernetes, gestionados como un Complemento, que se aplicarán al clúster al inicio. Consulta la documentación de RKE2 para obtener detalles.

Variables de Entorno del Agente

Opción para establecer variables de entorno para agentes de Rancher. Las variables de entorno se pueden establecer utilizando pares clave-valor. Consulta la documentación de RKE2 para más detalles.

etcd

Instantáneas Automáticas

Opción para habilitar o deshabilitar instantáneas recurrentes de etcd. Si está habilitado, los usuarios tienen la opción de configurar la frecuencia de las instantáneas. Para más detalles, consulta la documentación de RKE2. Ten en cuenta que con RKE2, las instantáneas se almacenan en cada nodo de etcd. Esto varía de RKE1, que solo almacena una instantánea por clúster.

Métricas

Opción para elegir si exponer las métricas de etcd al público o solo dentro del clúster.

Conectividad

CIDR del Clúster

CIDRs de red IPv4 y/o IPv6 a utilizar para IPs de pod (predeterminado: 10.42.0.0/16).

Valores de ejemplo:

  • Solo IPv4: 10.42.0.0/16

  • Solo IPv6: 2001:cafe:42::/56

  • Pila dual: 10.42.0.0/16,2001:cafe:42::/56

Para requisitos y limitaciones adicionales relacionados con la red de pila dual o solo IPv6, consulta los siguientes recursos:

  • Debes configurar el Service CIDR cuando crees el clúster por primera vez. No puedes habilitar el Service CIDR en un clúster existente después de que haya comenzado.

  • Al utilizar cilium o multus,cilium como tu proveedor de interfaz de red de contenedor, asegúrate de que la opción Habilitar soporte IPv6 también esté habilitada.

Service CIDR

CIDRs de red IPv4/IPv6 a utilizar para las IPs del servicio (predeterminado: 10.43.0.0/16).

Valores de ejemplo:

  • Solo IPv4: 10.43.0.0/16

  • Solo IPv6: 2001:cafe:43::/112

  • Pila dual: 10.43.0.0/16,2001:cafe:43::/112

Para requisitos y limitaciones adicionales relacionados con la red de pila dual o solo IPv6, consulta los siguientes recursos:

  • Debes configurar el Service CIDR cuando crees el clúster por primera vez. No puedes habilitar el Service CIDR en un clúster existente después de que haya comenzado.

  • Al utilizar cilium o multus,cilium como tu proveedor de interfaz de red de contenedor, asegúrate de que la opción Habilitar soporte IPv6 también esté habilitada.

DNS del clúster

IP de clúster IPv4 para el servicio coredns. Debería estar en el rango de tu service-cidr (predeterminado: 10.43.0.10).

Dominio del clúster

Selecciona el dominio para el clúster. El valor por defecto es cluster.local.

Rango de puertos del servicio NodePort

Opción para cambiar el rango de puertos que se pueden utilizar para servicios NodePort. El valor por defecto es 30000-32767.

Truncar nombres de host

Opción para truncar nombres de host a 15 caracteres o menos. Solo puedes establecer este campo durante la creación inicial del clúster. No puedes habilitar o deshabilitar el límite de 15 caracteres después de la creación del clúster.

Esta configuración solo afecta a los clústeres provisionados por máquina. Dado que los clústeres personalizados establecen nombres de host durante su propio proceso de creación de nodos, que ocurre fuera de Rancher, este campo no restringe la longitud del nombre de host del clúster personalizado.

Truncar nombres de host en un clúster mejora la compatibilidad con sistemas basados en Windows. Aunque Kubernetes permite nombres de host de hasta 63 caracteres de longitud, los sistemas que utilizan NetBIOS restringen los nombres de host a 15 caracteres o menos.

Nombres Alternativos de TLS

Añadir nombres de host o direcciones IPv4/IPv6 como Nombres Alternativos de Sujeto en el certificado TLS del servidor.

Preferencia de Pila

Elige la pila de red para el clúster. Esta opción afecta a:

  • La dirección utilizada para las sondas de salud y disponibilidad de componentes como Calico, etcd, kube-apiserver, kube-scheduler, kube-controller-manager y kubelet.

  • La URL del servidor en el authentication-token-webhook-config-file para el Punto de Acceso Autorizado del Clúster.

  • La configuración de advertise-client-urls para etcd durante la restauración de instantáneas.

Las opciones son ipv4, ipv6, dual:

  • Cuando se establece en ipv4, el clúster utiliza 127.0.0.1

  • Cuando se establece en ipv6, el clúster utiliza [::1]

  • Cuando se establece en dual, el clúster utiliza localhost

La preferencia de pila debe coincidir con la configuración de red del clúster:

  • Establecer en ipv4 para clústeres solo IPv4

  • Establecer en ipv6 para clústeres solo IPv6

  • Establecer en dual para clústeres de doble pila

Asegurarse de que la configuración de la dirección de retrobucle sea correcta es fundamental para la provisión exitosa del clúster. Para más información, consulta la página Requisitos del Nodo.

Punto de Acceso Autorizado del Clúster

El Punto de Acceso Autorizado del Clúster se puede utilizar para acceder directamente al servidor API de Kubernetes, sin requerir comunicación a través de Rancher.

Esto está habilitado por defecto en los clústeres de Kubernetes lanzados por Rancher, utilizando la IP del nodo con el rol controlplane y los certificados autofirmados predeterminados de Kubernetes.

Para más detalles sobre cómo funciona un punto de acceso autorizado del clúster y por qué se utiliza, consulta la sección de arquitectura.

Recomendamos utilizar un equilibrador de carga con el punto de acceso autorizado del clúster. Para más detalles, consulta la sección de arquitectura recomendada.

Registros

Selecciona el repositorio de imágenes del que se extraerán las imágenes de Rancher. Para más detalles y opciones de configuración, consulta la documentación de RKE2.

Estrategia de Actualización

Concurrencia del Plano de Control

Selecciona cuántos nodos pueden actualizar versión al mismo tiempo. Puede ser un número fijo o un porcentaje.

Concurrencia de Trabajadores

Selecciona cuántos nodos pueden actualizar versión al mismo tiempo. Puede ser un número fijo o un porcentaje.

Drenar Nodos (Plano de Control)

Opción para eliminar todos los pods del nodo antes de actualizar.

Drenar Nodos (Nodos de Trabajo)

Opción para eliminar todos los pods del nodo antes de actualizar.

Avanzadas

Opción para establecer opciones de kubelet para diferentes nodos. Para las opciones disponibles, consulta la Kubernetes documentación.

Referencia del Archivo de Configuración del Clúster

Editar clústeres en YAML te permite establecer las opciones disponibles en una instalación de RKE2, incluyendo las ya listadas en Opciones de Configuración en la UI de Rancher, así como establecer parámetros específicos de Rancher.

Ejemplo de fragmento de archivo de configuración de clúster yaml apiVersion: provisioning.cattle.io/v1 kind: Especificaciones del clúster: cloudCredentialSecretName: cattle-global-data:cc-s879v kubernetesVersion: v1.25.12+rke2r1 localClusterAuthEndpoint: {} rkeConfig: additionalManifest: "" chartValues: rke2-calico: {} etcd: snapshotRetention: 5 snapshotScheduleCron: 0 */5 * * * machineGlobalConfig: cni: calico disable-kube-proxy: false etcd-expose-metrics: false profile: null kube-apiserver-arg: - audit-policy-file=/etc/rancher/rke2/user-audit-policy.yaml - audit-log-path=/etc/rancher/rke2/user-audit.logs machinePools: - controlPlaneRole: true etcdRole: true machineConfigRef: kind: Amazonec2Config name: nc-test-pool1-pwl5h name: pool1 quantity: 1 unhealthyNodeTimeout: 0s workerRole: true machineSelectorConfig: - config: protect-kernel-defaults: false machineSelectorFiles: - fileSources: - configMap: name: '' secret: name: audit-policy items: - key: audit-policy path: /etc/rancher/rke2/user-audit-policy.yaml machineLabelSelector: matchLabels: rke.cattle.io/control-plane-role: 'true' registries: {} upgradeStrategy: controlPlaneConcurrency: "1" controlPlaneDrainOptions: deleteEmptyDirData: true enabled: true gracePeriod: -1 ignoreDaemonSets: true timeout: 120 workerConcurrency: "1" workerDrainOptions: deleteEmptyDirData: true enabled: true gracePeriod: -1 ignoreDaemonSets: true timeout: 120

additionalManifest

Especificar manifiestos adicionales para entregar a los nodos del plano de control.

El valor es una cadena, y se colocará en la vía /var/lib/rancher/rke2/server/manifests/rancher/addons.yaml en los nodos de destino.

Ejemplo:

additionalManifest: |-
  apiVersion: v1
  kind: Namespace
  metadata:
    name: name-xxxx

Si deseas personalizar los gráficos del sistema, deberías usar el campo chartValues como se describe a continuación.

Alternativas, como usar un HelmChartConfig para personalizar los gráficos del sistema a través de additionalManifest, pueden causar comportamientos inesperados, debido a tener múltiples HelmChartConfigs para el mismo gráfico.

chartValues

Especificar los valores para los gráficos del sistema instalados por RKE2.

Para más información sobre cómo RKE2 gestiona componentes empaquetados, por favor consulta documentación de RKE2.

Ejemplo:

chartValues:
    chart-name:
        key: value

machineGlobalConfig

Especificar configuraciones de RKE2. Cualquier cambio de configuración realizado aquí se aplicará a cada nodo. Las opciones de configuración disponibles en la versión independiente de RKE2 se pueden aplicar aquí.

Ejemplo:

machineGlobalConfig:
    etcd-arg:
        - key1=value1
        - key2=value2

Hay algunas opciones de configuración que no se pueden cambiar al aprovisionar a través de Rancher:

  • data-dir (carpeta para mantener el estado), que por defecto es /var/lib/rancher/rke2.

Para facilitar la colocación de archivos en los nodos de antemano, Rancher espera que se incluyan los siguientes valores en la configuración, mientras que RKE2 espera que los valores se introduzcan como rutas de archivo:

  • audit-policy-file

  • cloud-provider-config

  • registro-privado

Rancher entrega los archivos a la vía /var/lib/rancher/rke2/etc/config-files/<option> en los nodos de destino y establece las opciones adecuadas en el servidor RKE2.

Ejemplo:

apiVersion: provisioning.cattle.io/v1
kind: Cluster
spec:
  rkeConfig:
    machineGlobalConfig:
      audit-policy-file:
        apiVersion: audit.k8s.io/v1
        kind: Policy
        rules:
        - level: RequestResponse
          resources:
          - group: ""
            resources:
            - pods

machineSelectorConfig

machineSelectorConfig es lo mismo que machineGlobalConfig excepto que se puede especificar un selector de etiquetas con la configuración. La configuración solo se aplicará a los nodos que coincidan con el selector de etiquetas proporcionado.

Se permiten múltiples entradas de config, cada una especificando su propio machineLabelSelector. Un usuario puede especificar matchExpressions, matchLabels, ambos o ninguno. Omitir la sección machineLabelSelector de este campo tiene el mismo efecto que poner la configuración en la sección machineGlobalConfig.

Ejemplo:

machineSelectorConfig
  - config:
      config-key: config-value
    machineLabelSelector:
      matchExpressions:
        - key: example-key
          operator: string # Valid operators are In, NotIn, Exists and DoesNotExist.
          values:
            - example-value1
            - example-value2
      matchLabels:
        key1: value1
        key2: value2

machineSelectorFiles

Esta función está disponible en Rancher v2.7.2 y versiones posteriores.

Entregar archivos a los nodos, para que los archivos puedan estar en su lugar antes de iniciar los procesos del servidor o agente RKE2. El contenido del archivo se recupera de un secreto o un configmap. Los nodos de destino se filtran por el machineLabelSelector.

Ejemplo:

machineSelectorFiles:
  - fileSources:
      - secret:
          items:
            - key: example-key
              path: path-to-put-the-file-on-nodes
              permissions: 644 (optional)
              hash: base64-encoded-hash-of-the-content (optional)
          name: example-secret-name
    machineLabelSelector:
      matchExpressions:
        - key: example-key
          operator: string # Valid operators are In, NotIn, Exists and DoesNotExist.
          values:
            - example-value1
            - example-value2
      matchLabels:
        key1: value1
        key2: value2
  - fileSources:
      - configMap:
          items:
            - key: example-key
              path: path-to-put-the-file-on-nodes
              permissions: 644 (optional)
              hash: base64-encoded-hash-of-the-content (optional)
          name: example-configmap-name
    machineLabelSelector:
      matchExpressions:
        - key: example-key
          operator: string # Valid operators are In, NotIn, Exists and DoesNotExist.
          values:
            - example-value1
            - example-value2
      matchLabels:
        key1: value1
        key2: value2

El secreto o configmap debe cumplir con los siguientes requisitos:

  1. Debe estar en el espacio de nombres fleet-default donde existe el objeto Cluster.

  2. Debe tener la anotación rke.cattle.io/object-authorized-for-clusters: cluster-name1,cluster-name2, que permite a los clústeres de destino usarlo.

Rancher Dashboard proporciona un formulario fácil de usar para crear el secreto o configmap.

Ejemplo:

apiVersion: v1
data:
  audit-policy: >-
    IyBMb2cgYWxsIHJlcXVlc3RzIGF0IHRoZSBNZXRhZGF0YSBsZXZlbC4KYXBpVmVyc2lvbjogYXVkaXQuazhzLmlvL3YxCmtpbmQ6IFBvbGljeQpydWxlczoKLSBsZXZlbDogTWV0YWRhdGE=
kind: Secret
metadata:
  annotations:
    rke.cattle.io/object-authorized-for-clusters: cluster1
  name: name1
  namespace: fleet-default