Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Administrar Contrail de varios clústeres

RESUMEN  Aprenda a realizar tareas de administración de ciclo de vida específicas de una instalación de varios clústeres.

En esta sección, se tratan las tareas específicas de una instalación de varios clústeres. Si desea realizar tareas de administración en un clúster específico (como agregar y quitar nodos dentro de un clúster y actualizar un clúster) dentro de la instalación de varios clústeres, consulte Administrar Contrail de clúster único.

Adjuntar un clúster de carga de trabajo

Utilice este procedimiento para crear un clúster de carga de trabajo distribuido y adjuntarlo al clúster central. Ejecute estos comandos en el clúster de carga de trabajo distribuido o en el clúster central como se especifica en cada paso.
  1. Asegúrese de que ha preparado el clúster de carga de trabajo distribuido como se describe en Antes de instalar.
  2. Cree el clúster de cargas de trabajo distribuidas.

    Cree un clúster nuevo. Puede seguir el procedimiento en Crear un clúster de Kubernetes o usar sus propios métodos para crear un clúster. El clúster debe tener las siguientes características:

    • El clúster no tiene ningún complemento CNI.
    • Desactive el DNS local del nodo.
    • Si está ejecutando DPDK, active multus versión 0.3.1.
    • En una configuración de varios clústeres, debe configurar diferentes subredes de pod y servicio en cada clúster. Estas subredes deben ser únicas en todo el clúster múltiple.
    • En una configuración de varios clústeres, debe configurar nombres de nodo diferentes para los nodos de cada clúster. Los nombres de nodo deben ser únicos en todo el multi clúster.
  3. Instale los componentes de Contrail en el clúster de cargas de trabajo distribuidas.
    1. En el clúster de carga de trabajo, cree el espacio de nombres de contrail-deploy.
    2. En el clúster de carga de trabajo, copie el kubeconfig del clúster central. Lo llamaremos kubeconfig de clústeres centrales aquí.
    3. En el clúster de carga de trabajo, cree un secreto de Kubernetes desde el kubeconfig del clúster central y nombre al secreto central-kubeconfig.
      Nota:

      Debe nombrar el secreto central-kubeconfig.

      Nota:

      Debe especificar la ruta absoluta al archivo central-cluster-kubeconfig .

    4. En el clúster de carga de trabajo, aplique el manifiesto del implementador. El implementador proporciona administración del ciclo de vida de los componentes de Contrail.
      Este manifiesto incluye una referencia al central-kubeconfig secreto que creó en el subsép anterior.
    5. Compruebe que el contrail-deployer haya surgido. Esto puede tardar unos minutos.
  4. En el clúster central, conecte el nuevo clúster de carga de trabajo mediante la creación de un kubemanager para el nuevo clúster de carga de trabajo.
    1. En el clúster central, copie el kubeconfig del clúster de carga de trabajo distribuido. Llamaremos a esta carga de trabajo-cluster-kubeconfig aquí.
    2. En el clúster central, cree un secreto de Kubernetes desde el clúster de carga de trabajo distribuido kubeconfig y elija un nombre significativo para el secreto (por ejemplo, workload-kubeconfig).
    3. Cree el manifiesto kubemanager con el siguiente contenido. Elija un nombre significativo para el manifiesto (por ejemplo, kubemanager-cluster1.yaml).
      Cuadro 1 explica los parámetros que debe establecer.
      Tabla 1: Kubemanager CRD
      Ejemplo de significado de parámetro
      Nombre El nombre del recurso personalizado. kubemanager-cluster1
      Imagen El depósito donde se sacan las imágenes hub.juniper.net/cn2/contrail-k8s-kubemanager:22.1.0.93
      podV4Subnet La subred pod IPv4 que configuró anteriormente para el clúster de carga de trabajo distribuida.

      Esta subred debe ser única en todo el clúster múltiple.

      10.234.64.0
      serviceV4Subnet La subred de servicio IPv4 que configuró anteriormente para el clúster de carga de trabajo distribuida.

      Esta subred debe ser única en todo el clúster múltiple.

      10.234.0.0/18
      podV6Subnet La subred pod IPv6 que configuró anteriormente para el clúster de carga de trabajo distribuido.

      Esta subred debe ser única en todo el clúster múltiple.

      fd85:ee78:d8a6:8608::1:0000/112
      serviceV6Subnet La subred de servicio IPv6 que configuró anteriormente para el clúster de carga de trabajo distribuido.

      Esta subred debe ser única en todo el clúster múltiple.

      fd85:ee78:d8a6:8608::1000/116
      clusterName El nombre del clúster de carga de trabajo. clúster de carga de trabajo
      kubeconfigSecretName El nombre del secreto que contiene el token kubeconfig del clúster de carga de trabajo. carga de trabajo-kubeconfig
      enableNad Verdadero o falso (para habilitar o no la definición de dirección de red) Verdad
      listenerPort El puerto que el controlador Contrail escucha para las comunicaciones con este clúster de carga de trabajo.

      Establezca el puerto para el primer clúster de carga de trabajo en 19446 e incremente en 1 para cada clúster de carga de trabajo posterior.

      19446
      constanteRouteTargetNumber El destino de la ruta para este clúster de carga de trabajo.

      Establezca el destino de ruta para el primer clúster de carga de trabajo en 7699 e incremente en 100 para cada clúster de carga de trabajo subsiguiente.

      7699
    4. En el clúster central, aplique el manifiesto kubemanager que acaba de crear.
    5. En el clúster central, compruebe que puede ver los espacios de nombres del clúster de carga de trabajo.

      Los espacios de nombres tienen el siguiente formato: <kubemanager-name>-<workload-cluster-name>-<namespace>. Por ejemplo:

  5. En el clúster de carga de trabajo, modifique el manifiesto deployer_ha_kernel.yaml según sea necesario. El manifiesto deployer_ha_kernel.yaml que proporcionamos es una muestra que es posible que deba adaptar a su configuración.

    El archivo deployer_ha_kernel.yaml proporcionado especifica diferentes redes para los distintos nodos de clúster, que es diferente de nuestro clúster de ejemplo. En nuestro clúster, todos los nodos del clúster se conectan a la misma red de datos. Tendremos que modificar deployer_ha_kernel.yaml para eliminar las redes adicionales y la configuración de nodos adicionales.

    1. Elimine las redes adicionales.

      Edite deployer_ha_kernel.yaml para quitar las siguientes líneas que definen el contrail-network-config ConfigMap:

    2. Quite las siguientes líneas que definen el contrail-vrouter-nodes-7 vRouter:
    3. Del mismo modo, elimine la contrail-vrouter-nodes-8 sección por completo
    4. Del mismo modo, elimine la contrail-vrouter-nodes-14 sección por completo
    5. Agregue la siguiente contrail-vrouter-nodes sección al final:
  6. Por último, en el clúster de carga de trabajo, instale el vRouter.

    Después de unos minutos, verifique que todos los grupos estén en marcha:

Ahora creó y adjuntó un clúster de carga de trabajo distribuido al clúster central.

Desvincular un clúster de carga de trabajo

Utilice este procedimiento para separar un clúster de carga de trabajo distribuido del clúster central.
  1. En el clúster central, elimine el kubemanager asociado.
  2. En el clúster de carga de trabajo distribuido que va a eliminar, elimine los vRouters.
  3. En el clúster central, elimine los espacios de nombres del clúster de carga de trabajo distribuido.
    Enumera los espacios de nombres y elimine todos los espacios de nombres asociados con el clúster de carga de trabajo distribuida.
  4. En el clúster central, elimine el secreto asociado con el clúster de carga de trabajo que va a separar.
    donde <secret-name> es el secreto que creó al adjuntar el clúster de carga de trabajo al clúster central anteriormente. En nuestro ejemplo, lo workload-kubeconfigllamamos .

Desinstalar Contrail

Utilice este procedimiento para desinstalar Contrail del clúster central y de los clústeres de carga de trabajo.
  1. Siga los pasos de Separar un clúster de carga de trabajo para desvincular el clúster de carga de trabajo que desea eliminar.
  2. Desinstale Contrail en el clúster de cargas de trabajo.
    1. Siga los pasos de Desinstalar Contrail para desinstalar Contrail en el clúster de carga de trabajo.

      Ignore cualquier error de NotFound porque esos recursos ya se eliminaron.

    2. En el clúster de carga de trabajo, verifique que todos los recursos relacionados con el espacio de nombres de red pod predeterminado del clúster de carga de trabajo distribuido hayan desaparecido y verifique que todos los recursos relacionados con el espacio de nombres de Contrail hayan desaparecido.

    Si todo lo que desea hacer es desinstalar Contrail del clúster de carga de trabajo, entonces listo. Si también desea desinstalar Contrail del clúster central, continúe con el paso siguiente.

  3. Desinstale Contrail en el clúster central.
    1. Siga los pasos de Desinstalar Contrail para desinstalar Contrail en el clúster central.

      Ignore cualquier error de NotFound porque esos recursos ya se eliminaron.

    2. En el clúster central, compruebe que se eliminan todos los recursos relacionados con los espacios de nombres contrail, contrail-system y contrail-deploy.