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.

Referencia del clúster

Una Cluster definición incluye un kubernetesVersion y una lista de machinePools para desplegar el clúster.

Para saber cómo seleccionar un kubernetesVersion, por favor consulta nuestra página de Kubernetes Versions.

Un machinePool es un conjunto de configuraciones con un ObjectReference para que el clúster se despliegue en esos machinePools con los roles adecuados (etcd, plano de control, trabajador) con una cantidad (cuántos nodos desplegar de este grupo) y algunas configuraciones adicionales (configuración de actualización continua, nodos no saludables máximos, etc…​).

Haga clic aquí para obtener más información
Ejemplo
kind: Cluster
apiVersion: provisioning.cattle.io/v1
metadata:
  name: ...
  namespace: ...
spec:
  rkeConfig:
    machinePools:
      - name: ...
        controlPlaneRole: ...
        etcdRole: ...
        workerRole: ...
        quantity: ...
        machineConfigRef:
          apiVersion: elemental.cattle.io/v1beta1
          kind: MachineInventorySelectorTemplate
          name: ...
      - name: ...
        controlPlaneRole: ...
        etcdRole: ...
        workerRole: ...
        quantity: ...
        machineConfigRef:
          apiVersion: elemental.cattle.io/v1beta1
          kind: MachineInventorySelectorTemplate
          name: ...

También es posible deshabilitar componentes del clúster a través del objeto Cluster en spec.rkeConfig.machineGlobalConfig, por ejemplo:

Haga clic aquí para obtener más información
Ejemplo de desactivación de servicio
kind: Cluster
apiVersion: provisioning.cattle.io/v1
metadata:
  name: ...
  namespace: ...
spec:
  rkeConfig:
    machinePools:
      - name: ...
        controlPlaneRole: ...
        etcdRole: ...
        workerRole: ...
        quantity: ...
        machineConfigRef:
          apiVersion: elemental.cattle.io/v1beta1
          kind: MachineInventorySelectorTemplate
          name: ...
    machineGlobalConfig:
      disable:
        - servicelb
        - ...

rkeConfig.machinePools

Una lista de machinePools. Se requiere un mínimo de 1 machinePools para que el clúster se despliegue.

Referencia de especificación de machinePools

Key Tipo Valor por defecto Descripción

controlPlaneRole

bool

false

Establecer máquinas en este grupo como plano de control

etcdRole

bool

false

Establecer máquinas en este grupo como etcd

workerRole

bool

false

Establecer máquinas en este grupo como trabajador

name

cadena

nil

Nombre para este grupo

cantidad

int

nil

Número de máquinas a desplegar desde este grupo

unhealthyNodeTimeout

int

nil

Tiempo de espera para las comprobaciones de salud de nodos no saludables

machineConfigRef

int

ObjectReference

Referencia a un objeto utilizado para saber qué nodos forman parte de este grupo

Se requiere un mínimo de quantity establecido en uno para que este grupo sea utilizado. Básicamente se traduce en cuántos nodos de este grupo se van a configurar para este clúster.

Haga clic aquí para obtener más información
Ejemplo
kind: Cluster
apiVersion: provisioning.cattle.io/v1
metadata:
  name: cluster-example
  namespace: example-default
spec:
  rkeConfig:
    machinePools:
      - name: examplePool
        controlPlaneRole: true
        etcdRole: true
        workerRole: false
        quantity: 3
        unhealthyNodeTimeout: 0s
        machineConfigRef:
          apiVersion: elemental.cattle.io/v1beta1
          kind: MachineInventorySelectorTemplate
          name: exampleSelector

Referencia de especificación machineConfigRef

Un machineConfigRef es un ObjectReference genérico de k8s que generalmente contiene un kind name y apiVersion para apuntar a un objeto diferente.

En SUSE® Rancher Prime: OS Manager, lo establecemos en un MachineInventorySelectorTemplate. Esto nos permite apuntar a más de un objeto utilizando el selector.

Ejemplo

El ejemplo a continuación crea un clúster que utiliza 2 machinePool diferentes para asignar diferentes nodos como plano de control y trabajadores, basándose en 2 MachineInventorySelectorTemplate diferentes que seleccionan sus nodos según una etiqueta MachineInventory (ubicación):

warning

Las etiquetas para el ejemplo son etiquetas establecidas manualmente, no son establecidas automáticamente por SUSE® Rancher Prime: OS Manager.

Ejemplo de un clúster con más de un machinePool
Unresolved include directive in modules/es/pages/references/cluster-reference.adoc - include::example$clusters/clusters-several-machinepools.yml[]