Actualiza el modo privado de Anthos

En esta página, se explica cómo actualizar el modo privado de Anthos.

Actualiza el clúster de administrador y el centro de administración de Anthos

Los operadores de infraestructura pueden actualizar el clúster de administrador y el centro de administración y sus componentes.

Prepare el entorno

  1. Ejecuta los siguientes comandos para descargar la versión nueva y configurar los permisos de ejecución:

    cd ~/
    # Download the script which helps download all the latest components
    export VERSION=UPGRADE_VERSION
    
    # Please use official 'INSTALLER_DIGEST' value from https://cloud.google.com/anthos/private-mode/docs/1.9/installing/infrastructure#download
    export INSTALLER_DIGEST=
    export INSTALLER=get-anthos-private-mode-$VERSION.sh
    gsutil cp gs://anthos-private-mode-release/$VERSION/$INSTALLER .
    if [[ -n "$INSTALLER_DIGEST" ]]; then echo "$INSTALLER_DIGEST $INSTALLER" | sha256sum -c; fi && chmod +x $INSTALLER && ./$INSTALLER
    
    # Note: ~/anthos-baremetal-private-mode should point to the new version.
    ls -al anthos-baremetal-private-mode
    cd ~/anthos-baremetal-private-mode
    

    Reemplaza UPGRADE_VERSION por la versión nueva a la que deseas actualizar.

  2. Sube las imágenes nuevas a tu registro privado con el siguiente comando. Asegúrate de usar el actl de la versión UPGRADE_VERSION.

    actl images push --private-registry=${PRIVATE_REGISTRY} \
      --images ~/anthos-baremetal-private-mode
    

    El proceso de carga omite de forma automática las imágenes que ya existen en el registro.

  3. Sube gráficos de Helm a Container Registry

Actualiza el clúster de administrador

Para actualizar el clúster de administrador, actualiza el archivo de configuración del clúster de administrador solo con los siguientes cambios y, luego, ejecuta el comando actl clusters baremetal upgrade a fin de completar la actualización.

  1. En el archivo YAML del administrador de configuración del clúster, actualiza la string de versión y agrega la anotación baremetal.cluster.gke.io/private-mode: "true".

    apiVersion: baremetal.cluster.gke.io/v1
    kind: Cluster
    metadata:
      name: admin
      namespace: cluster-admin
      annotations:
        baremetal.cluster.gke.io/private-mode: "true"
    spec:
      anthosBareMetalVersion: VERSION
    

    Reemplaza VERSION por el número de la nueva versión de Anthos en equipos físicos.

  2. Ejecuta el siguiente comando para actualizar el clúster de administrador. Asegúrate de usar el actl de la versión UPGRADE_VERSION.

    actl clusters baremetal upgrade admin --kubeconfig=ADMIN_KUBECONFIG
    

La actualización puede tardar entre 15 y 20 minutos en completarse, pero puede tomar más tiempo según el tamaño del clúster.

Centro de administración de actualizaciones

Los operadores de infraestructura pueden actualizar el Centro de administración en su totalidad o actualizar los subcomponentes individuales.

Opción 1: Actualiza todo el Centro de administración

Los operadores de infraestructura pueden actualizar todos los componentes del centro de administración, incluido el propio centro de administración.

  1. Verifica la versión del centro de administración para confirmar que sea una versión anterior:

    kubectl get AdminOperator admin-operator --kubeconfig=ADMIN_KUBECONFIG
    

    Reemplaza ADMIN_KUBECONFIG por la ruta de acceso del archivo kubeconfig del clúster de administrador.

  2. Opcional: Ejecuta la verificación de la solicitud preliminar para la actualización:

    actl platform management-center upgrade --preflight-check-only --kubeconfig=ADMIN_KUBECONFIG
    
  3. Inicia la actualización (por lo general, tarda entre 10 y 15 min en completarse):

    actl platform management-center upgrade --kubeconfig=ADMIN_KUBECONFIG
    
  4. Verifica la versión del centro de administración para confirmar que esté actualizada:

    kubectl get AdminOperator admin-operator --kubeconfig=ADMIN_KUBECONFIG
    

Opción 2: Actualiza los componentes individuales

Los operadores de infraestructura pueden administrar las actualizaciones de un componente específico que se ejecuta en el centro de administración. A partir de la versión 1.9, se pueden actualizar tres componentes individuales: el operador de Anthos Config Management, el operador de Anthos Service Mesh y Anthos en equipos físicos.

Después de subir las imágenes al registro de contenedores, debes publicar las especificaciones del paquete enviadas en la versión nueva. Por ejemplo, la especificación de paquetes del operador de Anthos Config Management y el de Anthos Service Mesh están disponibles en services/.

  1. Aplica la especificación del paquete para el nuevo operador de Anthos Config Management.

    kubectl apply -f ~/anthos-baremetal-private-mode/services/anthos-config-management/package-spec.yaml \
    --kubeconfig=ADMIN_KUBECONFIG
    
  2. Verifica el estado actual del componente del operador de Anthos Config Management.

    kubectl get adminoperator admin-operator \
      --kubeconfig=ADMIN_KUBECONFIG \
      -ojsonpath='{.status.components[?(@.name=="anthos-config-management")]}'
    

    Supón que el comando otorga la versión actual de 1.9.X y la restricción de la versión actual de <=1.9.X.

    {"name":"anthos-config-management","version":"1.9.X","versionConstraint":"<=1.9.X"}
    
  3. Para habilitar la versión nueva, edita las restricciones de la versión en el objeto administrador de operadores.

    kubectl edit AdminOperator admin-operator --kubeconfig=ADMIN_KUBECONFIG
    
  4. En el editor, ubica las políticas de actualización en spec.updateConfigOverride.policies y aumenta las versiones de los componentes según corresponda. Si se omite spec.updateConfigOverride o tiene un valor de struct vacío ({}), debes agregar la política de la siguiente manera.

    spec:
      updateConfigOverride:
        policies:
        - name: anthos-config-management
          versionConstraint: <=1.9.Y
    

Después de agregar la anulación, el centro de administración lanza el cambio para recoger la versión más reciente del operador de Anthos Config Management.

Ejecuta el siguiente comando para supervisar el lanzamiento de la versión nueva, que se espera que cambie de 1.9.X anterior a 1.9.Y.

kubectl get adminoperator admin-operator \
  --kubeconfig=ADMIN_KUBECONFIG \
  -ojsonpath='{.status.components[?(@.name=="anthos-config-management")].version}' \
  --watch

Cuando se completa el lanzamiento, los administradores de plataforma pueden usar el nuevo operador de Anthos Config Management a través del centro de administración.

Cambiar a una versión superior de clústeres de usuario

Los administradores de plataforma pueden actualizar los clústeres de usuario mediante la herramienta de línea de comandos de actl, el centro de administración o la API.

actl

Ejecuta el siguiente comando para actualizar un clúster de usuario:

actl clusters baremetal upgrade CLUSTER_NAME --kubeconfig ADMIN_KUBECONFIG

Console

  1. En la consola del centro de administración, ve al menú Panel.
  2. Haz clic en la pestaña Actualizaciones para ver todas las actualizaciones disponibles.
  3. Haz clic en Ver actualizaciones para el clúster que deseas actualizar.
  4. Haz clic en Actualizar para ver los detalles, como la versión, la descripción y un vínculo a las notas de la versión.
  5. Haz clic en Continuar para confirmar.
  6. Haz clic en Actualizar para comenzar a actualizar el clúster.

La entrada de la lista de actualización mostrará Upgrade in progress hasta que finalice la actualización.

API

Puedes actualizar un clúster de usuario si modificas la string de versión en el recurso Cluster.

  1. Ejecuta el siguiente comando a fin de editar el recurso Cluster para un clúster de usuario.

    kubectl edit cluster CLUSTER_NAME -n cluster-CLUSTER_NAME --kubeconfig=ADMIN_KUBECONFIG
    
  2. Actualiza la string de versión en spec.anthosBareMetalVersion y los controladores funcionarán en las actualizaciones.

    apiVersion: baremetal.cluster.gke.io/v1
    kind: Cluster
    metadata:
      name: CLUSTER_NAME
      namespace: cluster-CLUSTER_NAME
      annotations:
        baremetal.cluster.gke.io/private-mode: "true"
    spec:
      type: user
      anthosBareMetalVersion: VERSION
    

    Reemplaza VERSION por el número de la nueva versión de Anthos en equipos físicos.

¿Qué sigue?