31 Elemental #
31.1 Comunes #
31.1.1 Exposición del servicio Rancher #
Cuando se utiliza RKE2 o K3s, es necesario exponer los servicios (Rancher en
este contexto) desde el clúster de gestión, ya que no están expuestos de
forma predeterminada. En RKE2, hay un controlador Ingress NGINX, y en k3s
utiliza Traefik. El flujo de trabajo actual sugiere utilizar MetalLB para
anunciar un servicio (con el modo L2 o con BGP) y el controlador de Ingress
correspondiente para crear un objeto Ingress a través de
HelmChartConfig
, ya que la creación de un nuevo objeto
Ingress anularía la configuración existente.
Instale Rancher Prime (mediante Helm) y configure los valores necesarios.
hostname: rancher-192.168.64.101.sslip.io replicas: 1 bootstrapPassword: Admin global.cattle.psp.enabled: "false"
SugerenciaSiga las instrucciones para la instalación de Rancher de la documentación para obtener más detalles.
Cree un servicio LoadBalancer para exponer Rancher.
kubectl apply -f - <<EOF apiVersion: helm.cattle.io/v1 kind: HelmChartConfig metadata: name: rke2-ingress-nginx namespace: kube-system spec: valuesContent: |- controller: config: use-forwarded-headers: "true" enable-real-ip: "true" publishService: enabled: true service: enabled: true type: LoadBalancer externalTrafficPolicy: Local EOF
Cree un pool de direcciones IP para el servicio utilizando la dirección IP que hemos configurado anteriormente en los valores de Helm.
kubectl apply -f - <<EOF apiVersion: metallb.io/v1beta1 kind: IPAddressPool metadata: name: ingress-ippool namespace: metallb-system spec: addresses: - 192.168.64.101/32 serviceAllocation: priority: 100 serviceSelectors: - matchExpressions: - {key: app.kubernetes.io/name, operator: In, values: [rke2-ingress-nginx]} EOF
Crear un anuncio L2 para el pool de direcciones IP.
kubectl apply -f - <<EOF apiVersion: metallb.io/v1beta1 kind: L2Advertisement metadata: name: ingress-l2-adv namespace: metallb-system spec: ipAddressPools: - ingress-ippool EOF
Asegúrese de que Elemental se ha instalado correctamente.
Instale el operador de Elemental y la interfaz del usuario de Elemental en los nodos de gestión.
Añada la configuración de Elemental en el nodo descendente junto con un código de registro, ya que eso hará que Edge Image Builder incluya la opción de registro remoto para el equipo.
Consulte la Sección 2.5, “Instalación de Elemental” y la Sección 2.6, “Configuración de Elemental” para obtener información adicional y ejemplos.
31.2 Específicos del hardware #
31.2.1 Trusted Platform Module #
Es necesario gestionar correctamente la configuración del módulo de plataforma segura Trusted Platform Module (TPM). Si no se hace, se producirán errores como este:
Nov 25 18:17:06 eled elemental-register[4038]: Error: registering machine: cannot generate authentication token: opening tpm for getting attestation data: TPM device not available
Esto se puede mitigar con uno de estos enfoques:
Habilite TPM en la configuración de la máquina virtual
Ejemplo con UTM en MacOS
Emule TPM utilizando un valor negativo para la semilla de TPM en el recurso
MachineRegistration
.
apiVersion: elemental.cattle.io/v1beta1
kind: MachineRegistration
metadata:
name: ...
namespace: ...
spec:
...
elemental:
...
registration:
emulate-tpm: true
emulated-tpm-seed: -1
Inhabilite TPM en el recurso
MachineRegistration
.
apiVersion: elemental.cattle.io/v1beta1
kind: MachineRegistration
metadata:
name: ...
namespace: ...
spec:
...
elemental:
...
registration:
emulate-tpm: false