Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Instalación con redes administradas por clústeres

Utilice este procedimiento para abrir un clúster con redes administradas por clúster. Las redes administradas por clústeres se refieren a una implementación en la que el instalador asistido instala un equilibrador de carga e entrada integrados en el clúster por usted.

La Figura 1 muestra un clúster de 3 nodos de plano de control y 2 nodos de trabajo que se ejecutan en servidores sin sistema operativo o máquinas virtuales en una configuración de red administrada por clúster en la que el equilibrador de carga (no se muestra) está integrado en el clúster. El tráfico del instalador asistido y el tráfico del plano de control de Kubernetes utilizan la red virtual de estructura 172.16.0.0/24. El tráfico de plano de control de Contrail y el tráfico de plano de datos de usuario utilizan la red virtual de estructura 10.16.0.0/24.

Figura 1: Clúster de CN2 OpenShift en servidores (o máquinas virtuales) sin sistema operativo con redes CN2 OpenShift Cluster on Bare Metal Servers (or VMs) with Cluster-Managed Networking administradas por clústeres

Una máquina independiente actúa como cliente del instalador asistido. El cliente del instalador asistido es donde utiliza comandos curl para emitir llamadas de API al servicio de instalador asistido para crear el clúster. En el ejemplo de este procedimiento, usamos el equipo cliente del instalador asistido para alojar un servidor DNS/DHCP para la subred también.

El administrador local se muestra adjunto a una red independiente en ambos diagramas. Esto es típico de muchas instalaciones en las que el administrador local administra la estructura y el clúster desde la LAN corporativa. En los procedimientos que siguen, nos referimos a la estación de administrador local como su equipo local.

Nota:

La conexión de todos los nodos es la estructura del centro de datos, que se muestra en el ejemplo como dos subredes. En instalaciones reales, la estructura del centro de datos es una red de conmutadores spine-and-leaf que proporcionan la conectividad física para el clúster.

En un centro de datos administrado por Apstra, especificaría esta conectividad a través de las redes virtuales superpuestas que crea en los conmutadores de estructura subyacentes.

Este procedimiento utiliza el servicio de instalación asistida alojado en Red Hat y cubre el caso de uso de enlace temprano más común en el que se registra el clúster antes de crear los hosts.

  1. Inicie sesión en el equipo cliente del instalador asistido. El equipo cliente del instalador asistido es donde se emiten llamadas a la API del instalador asistido al servicio de instalador asistido.
  2. Prepare la implementación estableciendo las variables de entorno que utilizará en pasos posteriores.
    1. Cree una clave SSH que utilizará para tener acceso a los nodos del clúster. Guarde la clave en una variable de entorno.
      En este ejemplo, almacenamos la clave SSH en su ubicación predeterminada ~/.ssh/id_rsa.pub.
    2. Descargue la imagen pull secret de su cuenta de Red Hat en su computadora local. El pull secret permite que su instalación acceda a los servicios y registros que sirven imágenes de contenedor para componentes de OpenShift.

      Si utiliza el instalador asistido alojado de Red Hat, puede descargar el archivo pull secret (pull-secret) de la página de descargas . Copie el archivo pull-secret en el equipo de cliente del instalador asistido. En este ejemplo, almacenamos el pull-secret en un archivo llamado pull-secret.txt.

      Elimine cualquier espacio en blanco, convierta el contenido al formato de cadena JSON y almacene en una variable de entorno, de la siguiente manera:

    3. Copie el token de acceso sin conexión de su cuenta de Red Hat. El token de API de OpenShift Cluster Manager le permite (en el equipo cliente del instalador asistido) interactuar con el servicio de API del instalador asistido alojado en Red Hat.
      El token es una cadena que puede copiar y pegar en una variable de entorno local. Si utiliza el instalador asistido alojado de Red Hat, puede copiar el token de API desde la página de descargas .
    4. Genere (actualizar) el token desde el OFFLINE_ACCESS_TOKEN. Utilizará este token generado cada vez que emita comandos de API.
      Nota:

      Este token caduca regularmente. Cuando este token expire, obtendrá una respuesta HTTP 400 cada vez que emita un comando de API. Actualice el token cuando expire o, alternativamente, actualice el token regularmente antes de que expire. No hay ningún daño en la actualización del token cuando no ha caducado.

    5. Configure las variables de entorno restantes.
      Cuadro 1 enumera todas las variables de entorno que debe establecer en este procedimiento, incluidas las descritas en los pasos anteriores.
      Ejemplo
      Tabla 1: Variables de entorno
      de descripción de variable
      CLUSTER_SSHKEY La clave ssh (pública) que generó. Esta clave se instalará en todos los nodos del clúster.
      PULL_SECRET La imagen pull secret que descargó, despojó y convirtió al formato de cadena JSON.
      OFFLINE_ACCESS_TOKEN El token de API de Administrador de clústeres de OpenShift que copió.
      TOKEN El token que generó (actualizó) desde el OFFLINE_ACCESS_TOKEN.
      CLUSTER_NAME El nombre al que desea llamar al clúster. Este es el nombre que aparecerá en la interfaz de usuario de Red Hat Hybrid Cloud Console.
      Nota:

      Este nombre debe estar en minúscula.

      mycluster
      CLUSTER_DOMAIN Dominio base que desea asignar al clúster. A los objetos de clúster se les asignarán nombres en este dominio. contrail.lan
      CLUSTER_NET La red de clústeres superpuestos. A los pods se les asignan direcciones IP en esta red. 10.128.0.0/14
      CLUSTER_SVC_NET La red de servicios de superposición. A los servicios se les asignan direcciones IP en esta red. 172.31.0.0/16
      CLUSTER_HOST_PFX La longitud del prefijo de subred para asignar direcciones IP desde CLUSTER_NET. Esto define el subconjunto de CLUSTER_NET direcciones IP que se usarán para la asignación de direcciones IP de pod. 23
      CLUSTER_MACHINE_NET La red de la máquina a la que se adjuntan los hosts. Esta es la red virtual de estructura para el tráfico del plano de control de Kubernetes. 172.16.0.0/24
      CLUSTER_API_VIP

      La dirección IP virtual que desea asignar al punto de conexión de LA API. Esta es la dirección IP de front-end que el equilibrador de carga interno utilizará para distribuir el tráfico de LA API a los nodos back-end.

      Seleccione una dirección IP dentro del CLUSTER_MACHINE_NET que no esté en uso.

      172.16.0.100
      CLUSTER_INGRESS_VIP

      La dirección IP virtual que desea asignar como la entrada. Esta es la dirección IP de front-end que el equilibrador de carga interno utilizará para distribuir el tráfico de la aplicación a los nodos back-end.

      Seleccione una dirección IP dentro del CLUSTER_MACHINE_NET que no esté en uso.

      172.16.0.101
      AI_URL La dirección URL del servicio de instalación asistida. En este ejemplo, se utiliza el instalador asistido alojado de Red Hat. https://api.openshift.com
  3. Registre el clúster con el servicio de instalación asistida. Al registrarse, le está informando al servicio del instalador asistido acerca de los atributos del clúster que desea crear. En respuesta, el servicio del instalador asistido crea un recurso de clúster y devuelve un identificador de clúster que identifica de forma única ese recurso de clúster.
    1. Cree el archivo que describe el clúster que desea crear. En este ejemplo, le damos nombre al archivo deployment.json.
      Nota:

      Asegúrese de especificar un <coreOS_version> (por ejemplo, 4.12.0) que se enumera en https://www.juniper.net/documentation/us/en/software/cn-cloud-native23.1/cn2-tested-integrations/index.html para el <openshift_version> (por ejemplo, 4.12) que está utilizando. También asegúrese de que la <openshift_version> versión especificada es compatible con la versión de CN2 que está instalando.

    2. Registre el clúster y guarde el CLUSTER_ID en una variable de entorno. Consulte el archivo deployment.json que acaba de crear.
    3. Actualice los atributos del clúster para especificar que desea que el clúster use CN2 como tecnología de red.
    4. Revise los cambios.
    Una vez registrado el clúster, puede apuntar su navegador a Red Hat Hybrid Cloud Console ( https://console.redhat.com/openshift) para ver el progreso de la instalación. Puede buscar el clúster por nombre o ID de clúster.
  4. Genere el ISO de arranque de descubrimiento. Utilizará esta ISO para arrancar los nodos del clúster.
    El ISO se personaliza según su infraestructura según el entorno de infraestructura que configure.
    1. Cree un archivo que describa el entorno de infraestructura. En este ejemplo, lo denominamos infra-envs.json.
      Con el enlace temprano, el entorno de infraestructura incluye los detalles del clúster.
    2. Indique al servicio del instalador asistido que cree el ISO de arranque de descubrimiento en función del entorno de infraestructura especificado. Consulte el archivo infra-envs.json que acaba de crear. A cambio, el servicio de instalación asistida asigna un identificador infraEnv que necesitará almacenar.
    3. Parchee el ISO con el certificado adecuado para el servidor de API extendido.
      Para ello, se aplica un archivo de encendido. Copie el contenido a continuación en un archivo infra-ignition.json . El contenido contiene un script codificado que configura el servidor de API extendido con el certificado adecuado.
      Aplique el archivo de encendido que acaba de crear.
    4. Descargue el ISO. En este ejemplo, lo llamamos ai-liveiso-$CLUSTER_ID.iso, haciendo referencia al identificador de clúster en el nombre.
  5. Arranque los tres nodos del plano de control con el ISO de arranque de descubrimiento.
    1. Elija el método de arranque más conveniente para su infraestructura. Asegúrese de que los equipos arranquen conectados a una red que tenga acceso al servicio de instalación asistida alojado de Red Hat.
      En la red de ejemplo que se muestra en la figura 1, los nodos tienen dos interfaces, con una interfaz conectada a la red 172.16.0.0/24 y la otra interfaz adjunta a la red 10.16.0.0/24.
      Nota:

      Configure el servidor DHCP para asignar direcciones IP en la red 10.16.0.0/24 (por ejemplo, 10.16.0.11 a 10.16.0.13 para los nodos del plano de control y 10.16.0.14 y 10.16.0.15 para los nodos de trabajo).

      Asegúrese de configurar el manifiesto 99-network-configmap.yaml de acuerdo con el paso 4.e en Antes de instalar.

    2. Compruebe el estado del clúster:
      El estado debe indicar cuándo los nodos están listos .
    3. Compruebe el estado de las validaciones:
      El estado de las validaciones muestra si ha definido el clúster correctamente. No debería haber errores en el resultado.
    4. Compruebe los hosts:
      El resultado muestra detalles de todos los nodos que ha arrancado.
      Puede filtrar información específica, como los IDENTIFICA de host:
      y funciones de host:
    5. Confirme que se asignaron las funciones.

      En su navegador, vaya a Red Hat Hybrid Cloud Console (https://console.redhat.com/openshift) y haga clic en su clúster para ver los detalles del clúster. Puede buscar el clúster por nombre de clúster o por ID de clúster.

      Pase al paso siguiente solo cuando los nodos (hosts) aparezcan y las funciones se hayan asignado correctamente como nodos del plano de control. Dado que solo iniciamos los 3 nodos del plano de control, verá las funciones asignadas en la interfaz de usuario como plano de control, trabajador.

  6. Establezca la dirección IP virtual para el tráfico de API.
  7. Repita el paso 5 para iniciar los nodos de trabajo.
    Cuando consulte las funciones de host, verá los nodos de trabajo en estado de asignación automática . Esto se espera. El servicio de instalación asistida asigna roles para estos nodos más tarde cuando instala el clúster.
  8. Si está ejecutando sus nodos de trabajo con una ruta de datos DPDK, etiquete a cada nodo de trabajo que ejecute una ruta de datos DPDK de la siguiente manera:
    donde $HOST_ID es el identificador de host del nodo de trabajo que desea ejecutar DPDK.
  9. Cargue los manifiestos de CN2 (que descargó antes de instalar) al servicio de instalación asistida. Asegúrese de incluir los manifiestos adicionales específicos de las redes administradas por clústeres.

    Para mayor comodidad, puede usar el siguiente script bash. El script da por sentado que ha colocado los manifiestos en el directorio de manifiestos . Si utiliza este script, asegúrese de que:

    • se colocan todos los manifiestos que desea usar en este directorio, incluidos todos los manifiestos que desea usar desde los subdirectorios
    • no coloca ningún otro archivo YAML en este directorio

    El script recorre todos los archivos *.yaml del directorio de manifiestos, los codifica en base64 y los aplica al clúster.

  10. Inicie la instalación del clúster.

    El servicio de instalación asistida crea el clúster según el recurso de clúster que haya definido. En primer lugar, el instalador asistido asigna uno de los nodos del plano de control como el nodo de arranque, que a su vez prepara los otros nodos. Uno por uno, verá que los nodos que no son de arranque se reinician en el clúster, primero se reiniciarán los nodos del plano de control que no son de arranque, luego los nodos de trabajo y, por último, el nodo de arranque.

    La instalación puede tardar una hora o más. Puede ver el progreso de la instalación en red Hat Hybrid Cloud Console (https://console.redhat.com/openshift).

    Si Red Hat Hybrid Cloud Console muestra el estancamiento de la instalación, inicie sesión en cada nodo con el nombre de usuario core y asegúrese de que el host pueda resolver los nombres de dominio, especialmente los que configuró en su servidor DNS/DHCP, así como en el servicio de instalación asistida de Red Hat y los nombres de dominio del repositorio de Juniper Networks. Los problemas de instalación más comunes se pueden remontar a errores de configuración de red, como la configuración dns incorrecta. Además, en algunos entornos, es posible que los nodos se apaguen en lugar de reiniciarse. En ese caso, inicie manualmente los nodos que se han apagado.

  11. Descargue el kubeconfig para el clúster.
    1. Descargue el kubeconfig a un archivo kubeconfig local.
    2. Copie el kubeconfig a ~/.kube/config. El kubeconfig debe estar en esa ubicación predeterminada ~/.kube/config, ya que el contrailstatus comando que utilizará más tarde espera que el kubeconfig esté en su ubicación predeterminada.
  12. Compruebe la instalación.
    1. Compruebe el estado de todos los pods. Confirme que todos los pods se encuentran en estado de ejecución o completado.
    2. Para aquellos pods que no estén en estado de ejecución o completado, use el comando kubectl describe para investigar más a fondo.

      Un problema común es no descargar una imagen. Si este es el caso:

      • compruebe que su red pueda llegar al depósito de Juniper Networks
      • comprobar que el nodo en el que reside el pod fallido está configurado para tener acceso a un servidor DNS
      • comprobar que el nodo donde reside el pod fallido puede hacer ping al repositorio por nombre de host
  13. (Opcional) Inicie sesión en la consola web de OpenShift para supervisar el clúster.
    La dirección URL de Web Console tiene el formato: https://console-openshift-console.apps.<cluster-name>.<cluster-domain>.
    1. Asegúrese de que el explorador en el que desea tener acceso a Web Console esté en un equipo que tenga acceso a la DIRECCIÓN URL de Web Console. Es posible que deba agregar una entrada para el nombre de host de esa consola al archivo /etc/hosts en esa máquina. Recuerde que esta asignación es la asignación *.apps.mycluster.contrail.lan que configuró en el servidor DNS en Antes de instalar.
    2. Descargue la contraseña kubeadmin.
    3. Inicie sesión en openShift Web Console con el nombre de usuario kubeadmin y la contraseña descargada.
Ha instalado correctamente OpenShift con CN2.