Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Antes de instalar

  1. Configure una cuenta con Red Hat y configure una cuenta con Juniper Networks.
    Necesitará la cuenta de Red Hat para usar el servicio de instalador asistido alojado y la cuenta de Juniper Networks para descargar los manifiestos, paquetes de contenedores y herramientas de Contrail.
  2. Configure la red de estructura y conecte sus nodos a la estructura dependiendo de si realiza la instalación con redes administradas por el usuario (Figura 1) o con redes administradas por clúster (Figura 1).
  3. Configure el equipo cliente del instalador asistido.
    1. Instale un sistema operativo nuevo en el equipo cliente del instalador asistido, configurando el sistema operativo mínimamente para lo siguiente:
      • dirección IP estática y máscara (por ejemplo, 172.16.0.10/24) y puerta de enlace
      • acceso a uno o más servidores DNS
      • Conectividad SSH, incluido el acceso SSH raíz
      • NTP
      • rizo
      • JQ
      El equipo cliente del instalador asistido utilizado en nuestros ejemplos ejecuta un sistema operativo RHEL.
    2. Instale Helm 3.0 o posterior (opcional). Helm es necesario si desea instalar Contrail Analytics.
      Los siguientes pasos se copian de https://helm.sh/docs/intro/install/ para su comodidad:
      • Descargue el script get_helm.sh:

      • Instale Helm.

  4. Descargue el paquete de manifiestos y herramientas de Contrail Networking de Juniper Networks.
    1. Descargue el paquete de manifiestos y herramientas de Contrail Networking (consulte Manifiestos y herramientas) en el equipo local.
    2. Copie el paquete de manifiestos y herramientas descargado en el equipo cliente del instalador asistido y extráigalo.
    3. Identifique los manifiestos que desea usar y cópielos en un directorio independiente. Para obtener una explicación de los manifiestos, consulte Manifiestos y herramientas para su lanzamiento.
      Asegúrese de copiar todos los manifiestos que planea usar, incluidos los manifiestos de los subdirectorios, si corresponde. En nuestro ejemplo, copiamos los manifiestos en un directorio de manifiestos . No copie los subdirectorios en sí. El directorio de manifiestos debe ser un directorio plano.
    4. Rellene los manifiestos con las credenciales de inicio de sesión del repositorio.

      Si está ejecutando la versión 22.1, este paso no se aplica a usted. Los manifiestos de la versión 22.1 se rellenan previamente con credenciales de trabajo.

      Si está ejecutando la versión 22.2 o superior, deberá agregar sus credenciales de inicio de sesión del repositorio a los manifiestos de contrail-manifests-openshift/auth-registry . Consulte Configurar credenciales del repositorio.

    5. Personalice los manifiestos para su entorno según sea necesario.

      Si ejecuta los nodos del clúster en máquinas virtuales, edite los siguientes archivos para hacer referencia a los nombres reales de las interfaces. Estos manifiestos deshabilitan las descargas de suma de comprobación en la interfaz con nombre de la máquina virtual. (Por lo general, la descarga de suma de comprobación solo se admite en NIC reales en servidores sin sistema operativo).

      • 99-disable-offload-master.yaml: este manifiesto deshabilita la descarga en los nodos del plano de control en la interfaz utilizada para el tráfico del plano de control de Kubernetes. Esta es la interfaz que se conecta a la red 172.16.0.0/24 en nuestros ejemplos.
      • 99-disable-offload-worker.yaml: este manifiesto deshabilita la descarga en los nodos de trabajo en la interfaz utilizada para el tráfico del plano de control de Kubernetes. Esta es la interfaz que se conecta a la red 172.16.0.0/24 en nuestros ejemplos.
      • 99-disable-offload-master-vrrp.yaml (versión 22.2 o superior) o 99-disable-offload-master-ens4.yaml (versión 22.1): este manifiesto deshabilita la descarga en los nodos del plano de control de la interfaz utilizada para el plano de control de Contrail y el tráfico del plano de datos de usuario. Inclúyalo solo cuando ejecute una interfaz independiente para el control de Contrail y el tráfico de datos (por ejemplo, cuando se utilizan redes administradas por clústeres). Esta es la interfaz que se conecta a la red 10.16.0.0/24 en nuestro ejemplo de redes administradas por clúster.
      • 99-disable-offload-worker-vrrp.yaml (versión 22.2 o superior) o 99-disable-offload-worker-ens4.yaml (versión 22.1): este manifiesto deshabilita la descarga en los nodos de trabajo en la interfaz utilizada para el plano de control de Contrail y el tráfico del plano de datos de usuario. Inclúyalo solo cuando ejecute una interfaz independiente para el control de Contrail y el tráfico de datos (por ejemplo, cuando se utilizan redes administradas por clústeres). Esta es la interfaz que se conecta a la red 10.16.0.0/24 en nuestro ejemplo de redes administradas por clúster.

      Busque la línea ExecStart=/sbin/ethtool -K ens3 tx off o ExecStart=/sbin/ethtool -K ens4 tx off en estos manifiestos y cambie el nombre de la interfaz para que coincida con el nombre de la interfaz en el plano de control o nodo de trabajo, según corresponda.

    6. Especifique la red de control y datos de Contrail si usa redes administradas por clúster.
      Edite el archivo siguiente para hacer referencia a la subred y la puerta de enlace que está usando para el plano de control de Contrail y el tráfico del plano de datos de usuario:
      • 99-network-configmap.yaml: este manifiesto especifica la red para el plano de control de Contrail y el tráfico del plano de datos de usuario. Descomente la especificación ConfigMap de contrail-network-config en el manifiesto y especifique la subred y la puerta de enlace adecuadas (por ejemplo, 10.16.0.0/24 y 10.16.0.254).
  5. Instale contrailstatus en el equipo cliente del instalador asistido. Contrailstatus es un complemento kubectl que puede usar para consultar microservicios de Contrail y recursos específicos de Contrail.
    Contrailstatus se empaqueta dentro del paquete de herramientas descargado. Cambie los permisos en el ejecutable kubectl-contrailstatus y cópielo en /usr/local/bin.
  6. Instale un equilibrador de carga (si está ejecutando redes administradas por el usuario). Este paso no es necesario cuando se ejecuta con redes administradas por clúster.
    En este ejemplo, ejecutamos haxproxy en la máquina cliente del instalador asistido. Puede optar por ejecutar un equilibrador de carga diferente para su instalación.
    1. Instale el equilibrador de carga.
      Por ejemplo:
    2. Configure el equilibrador de carga.
      Utilizamos una única dirección IP (172.16.0.10) que distribuye la API y el tráfico de entrada a los nodos del clúster.
      Tabla 1: Ejemplos de entradas del equilibrador de carga
      Tipo de tráfico Front-end Back End

      API

      172.16.0.10:6443

      172.16.0.11:6443

      172.16.0.12:6443

      172.16.0.13:6443

      api-int

      172.16.0.10:22623

      172.16.0.11:22623

      172.16.0.12:22623

      172.16.0.13:22623

      https (en inglés)

      172.16.0.10:443

      172.16.0.14:443

      172.16.0.15:443

      HTTP

      172.16.0.10:80

      172.16.0.14:80

      172.16.0.15:80

      Aquí hay un fragmento de ejemplo de configuración haproxy ( /etc/haproxy/haproxy.cfg) que realiza las asignaciones anteriores:
    3. Inicie el equilibrador de carga.
      Por ejemplo:
      Nota:

      Si está ejecutando con selinux, es posible que deba permitir explícitamente que haproxy escuche en los puertos (setsebool -P haproxy_connect_any 1).

  7. Instale un servidor DNS/DHCP en su red para servir a los nodos de Kubernetes.
    En este ejemplo, ejecutamos dnsmasq en el equipo cliente del instalador asistido. Puede optar por ejecutar un servidor DNS/DHCP diferente para su instalación.
    1. Instale el servidor DNS/DHCP.
      Dnsmasq está preinstalado en algunos paquetes de RHEL OS. Si no está preinstalado, puede instalarlo de la siguiente manera:
    2. Configure el nombre de dominio y las entradas DHCP.
      Dirección
      Tabla 2: Ejemplos de asignaciones DHCP
      IP del nombre de dominio completo
      ocp1.mycluster.contrail.lan 172.16.0.11
      ocp2.mycluster.contrail.lan 172.16.0.12
      ocp3.mycluster.contrail.lan 172.16.0.13
      ocp4.mycluster.contrail.lan 172.16.0.14
      ocp5.mycluster.contrail.lan 172.16.0.15
      Nota:

      Cuando se utiliza el servicio de instalador asistido, el nombre de dominio completo se construye de la siguiente manera: <hostname>.<cluster name>.<domain name>

      En este ejemplo, usamos ocpn como nombre de host, mycluster como nombre de clúster y contrail.lan como nombre de dominio.

    3. Configure las entradas DNS.
      Tabla 3: Ejemplos de entradas DNS
      Dirección IP del nombre de host Nota
      ocp1.mycluster.contrail.lan 172.16.0.11 Igual que la asignación DHCP
      ocp2.mycluster.contrail.lan 172.16.0.12 Igual que la asignación DHCP
      ocp3.mycluster.contrail.lan 172.16.0.13 Igual que la asignación DHCP
      ocp4.mycluster.contrail.lan 172.16.0.14 Igual que la asignación DHCP
      ocp5.mycluster.contrail.lan 172.16.0.15 Igual que la asignación DHCP
      api.mycluster.contrail.lan 172.16.0.10 Equilibrador de carga para tráfico de API externo. Obligatorio solo para redes administradas por el usuario.
      api-int.mycluster.contrail.lan 172.16.0.10 Equilibrador de carga para el tráfico interno de la API. Obligatorio solo para redes administradas por el usuario.
      apps.mycluster.contrail.lan 172.16.0.10 Equilibrador de carga para el tráfico de entrada. Obligatorio solo para redes administradas por el usuario.
      *.apps.mycluster.contrail.lan 172.16.0.10 Equilibrador de carga para el tráfico de entrada. Obligatorio solo para redes administradas por el usuario.
      Aquí hay un fragmento de ejemplo de la configuración de dnsmasq ( /etc/dnsmasq.conf) que realiza las asignaciones anteriores:
    4. Inicie el servidor DNS/DHCP.
      Por ejemplo:
  8. Descargue la herramienta de interfaz de línea de comandos (oc) OpenShift de Red Hat. Este paquete incluye kubectl.
    1. En el navegador de su computadora local, vaya a https://console.redhat.com/openshift/downloads#tool-oc y descargue la herramienta de interfaz de línea de comandos (oc) OpenShift.
    2. Copie el paquete descargado en el equipo cliente del instalador asistido y descomítelo.
    3. Copie los ejecutables oc y kubectl en un directorio de su ruta (por ejemplo, /usr/local/bin).