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 instalación asistida alojado, y necesitará la cuenta de Juniper Networks para descargar los manifiestos de CN2 desde el sitio de descargas de Juniper Networks ( https://support.juniper.net/support/downloads/?p=contrail-networking) y acceder al depósito de contenedores en https://enterprise-hub.juniper.net.
  2. Configure la red de estructura y conecte sus nodos a la estructura dependiendo de si está instalando redes administradas por el usuario (Figura 1) o redes administradas por clústeres (Figura 1).
  3. Configure el equipo cliente del instalador asistido.
    1. Instale un so nuevo en el equipo cliente del instalador asistido, configurando el SO 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
      • Enrollamiento
      • Jq
      El equipo cliente de instalación asistida utilizado en nuestros ejemplos está ejecutando un OS 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:

      • Instalar Helm.

  4. Descargue los manifiestos de CN2 de Juniper Networks.
    1. Descargue los manifiestos de CN2 (consulte Manifiestos) en su equipo local.
    2. Copie los manifiestos y el paquete de herramientas descargados en el equipo cliente del instalador asistido y extraiga.
    3. Identifique los manifiestos que desea usar y cópielos en un directorio independiente. Para obtener una explicación de los manifiestos, consulte Manifiestos de la versión.
      Asegúrese de copiar todos los manifiestos que planea usar, incluidos los manifiestos de los subdirectorios, si corresponde. En nuestro ejemplo, copiamos los manifiestos a un directorio de manifiestos . No copie los subdirectorios ellos mismos. El directorio de manifiestos debe ser un directorio plano.
    4. Complete los manifiestos con las credenciales de inicio de sesión del repositorio.

      Agregue sus credenciales de inicio de sesión de repositorio a los manifiestos contrail-manifests-openshift/auth-registry . Consulte Configurar credenciales de depósito.

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

      Si está ejecutando los nodos del clúster en máquinas virtuales, edite los archivos siguientes para hacer referencia a los nombres reales de sus interfaces. Estos manifiestos deshabilitan las cargas de suma de comprobación en la interfaz denominada en 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 de la interfaz utilizada para el tráfico del plano de control de Kubernetes. Esta es la interfaz que se adjunta 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 adjunta a la red 172.16.0.0/24 en nuestros ejemplos.
      • 99-disable-offload-master-vrrp.yaml: este manifiesto deshabilita la descarga en los nodos del plano de control de la interfaz utilizada para el tráfico del plano de control y del plano de datos del usuario de Contrail. Incluí esto solo cuando se ejecuta una interfaz independiente para el control Contrail y el tráfico de datos (como cuando se utilizan redes administradas por clústeres). Esta es la interfaz que se adjunta a la red 10.16.0.0/24 en nuestro ejemplo de redes administradas por clústeres.
      • 99-disable-offload-worker-vrrp.yaml : 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 del usuario. Incluí esto solo cuando se ejecuta una interfaz independiente para el control Contrail y el tráfico de datos (como cuando se utilizan redes administradas por clústeres). Esta es la interfaz que se adjunta a la red 10.16.0.0/24 en nuestro ejemplo de redes administradas por clústeres.

      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 interfaz en su plano de control o nodo de trabajo, según corresponda.

    6. Especifique la red de datos y el control Contrail si utiliza redes administradas por clústeres.
      Edite el archivo siguiente para hacer referencia a la subred y la puerta de enlace que está utilizando para el plano de control de Contrail y el tráfico de plano de datos del usuario:
      • 99-network-configmap.yaml: este manifiesto especifica la red para el plano de control de Contrail y el tráfico de plano de datos del usuario. Desajuste 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).
    7. Si está integrando CN2 con Juniper Apstra, configure sus credenciales de inicio de sesión de Juniper Apstra.

      Configure sus credenciales de inicio de sesión de Apstra en el manifiesto contrail-manifests-openshift/plugins/111-apstra-secret.yaml . Asegúrese de que el nombre de usuario y la contraseña que especifique estén codificados en base64. Para obtener más información, consulte https://www.juniper.net/documentation/us/en/software/cn-cloud-native23.2/cn-cloud-native-feature-guide/index.html.

  5. Instale contrailstatus en el equipo cliente del instalador asistido. Contrailstatus es un complemento kubectl que puede usar para consultar microservicios de CN2 y recursos específicos de CN2.
    El ejecutable contrailstatus se empaqueta dentro del paquete de herramientas descargado. Extraiga y copie el ejecutable kubectl-contrailstatus a /usr/local/bin.
  6. Instale un equilibrador de carga (si se ejecuta con redes administradas por el usuario). Este paso no es necesario cuando se ejecuta con redes administradas por clústeres.
    En este ejemplo, ejecutamos haxproxy en el equipo cliente del instalador asistido. Puede elegir ejecutar un equilibrador de carga diferente para su instalación.
    1. Instale el equilibrador de carga.
      Por ejemplo:
    2. Configure el equilibrador de carga.
      Usamos 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: Entradas de ejemplo 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

      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

      Este es 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 se ejecuta 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 ejecutar un servidor DNS/DHCP diferente para su instalación.
    1. Instale el servidor DNS/DHCP.
      Dnsmasq está preinstalado en algunos paquetes RHEL OS. Si no está preinstalado, puede instalarlo de la siguiente manera:
    2. Configure el nombre de dominio y las entradas DHCP.
      Tabla 2: Asignación de ejemplo de DHCP
      Dirección IP de 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 instalación asistida, 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 nombre de clúster y contrail.lan nombre de dominio.

    3. Configure sus entradas DNS.
      de
      Tabla 3: Entradas DNS de ejemplo
      Notala dirección IP del nombre de host
      ocp1.mycluster.contrail.lan 172.16.0.11 Igual que la asignación de DHCP
      ocp2.mycluster.contrail.lan 172.16.0.12 Igual que la asignación de DHCP
      ocp3.mycluster.contrail.lan 172.16.0.13 Igual que la asignación de DHCP
      ocp4.mycluster.contrail.lan 172.16.0.14 Igual que la asignación de DHCP
      ocp5.mycluster.contrail.lan 172.16.0.15 Igual que la asignación de 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 tráfico interno de 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.
      Este es un fragmento de ejemplo de configuración 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) de 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) de OpenShift.
    2. Copie el paquete descargado en el equipo de cliente del instalador asistido y desentar.
    3. Copie los ejecutables oc y kubectl en un directorio de su ruta (por ejemplo, /usr/local/bin).