Antes de actualizar un clúster de TKG, el escalador automático debe estar en pausa. Después de actualizar la versión de TKr del clúster, debe actualizar la versión del paquete del escalador automático para que coincida con la versión secundaria de TKr.

Requisitos

En esta tarea, se supone que se instaló el escalador automático de clústeres en un clúster de TKG. Consulte Instalar el escalador automático de clústeres mediante Kubectl.

Antes de actualizar el clúster: poner en pausa el escalador automático

Antes de actualizar un clúster de TKG con el escalador automático instalado, primero debe poner en pausa el paquete del escalador automático.
  1. Ponga en pausa el paquete del escalador automático de clústeres estableciendo el valor booleano paused en true en el secreto de autoscaler-data-values.yaml.
    ---
    apiVersion: v1
    kind: Secret
    metadata:
      name: autoscaler-data-values
      namespace: tkg-system
    stringData:
      values.yml: |
        ---
        arguments:
          ignoreDaemonsetsUtilization: true
          maxNodeProvisionTime: 15m
          maxNodesTotal: 0
          metricsPort: 8085
          scaleDownDelayAfterAdd: 10m
          scaleDownDelayAfterDelete: 10s
          scaleDownDelayAfterFailure: 3m
          scaleDownUnneededTime: 10m
        clusterConfig:
          clusterName: "gc1"
          clusterNamespace: "cluster"
        paused: true
  2. Aplique las actualizaciones al secreto de autoscaler-data-values.
    kubectl apply -f autoscaler-data-values.yaml

Actualizar el clúster

Una vez que el escalador automático esté en pausa, continúe con la actualización del clúster.
  1. Actualice la versión de Kubernetes del clúster de TKG.

    Consulte Actualizar un clúster de TKG mediante el cambio de la versión de TKR.

Después de actualizar el clúster: actualizar la versión del paquete del escalador automático

Después de actualizar el clúster, actualice la versión del paquete del escalador automático para que coincida con la versión secundaria de TKr y deshabilite la pausa.
  1. Elija la versión del escalador automático correspondiente.

    Las versiones secundarias de TKr y del paquete del escalador automático deben coincidir. Por ejemplo, si actualizó el clúster a TKr v1.28.8, deberá utilizar el paquete del escalador automático v1.28.x.

  2. Para actualizar los recursos del escalador automático, establezca la versión del escalador automático de destino y restablezca la pausa a false.
    #autoscaler-package-upgrade.yaml
    ---
    apiVersion: packaging.carvel.dev/v1alpha1
    kind: PackageInstall
    metadata:
      name: autoscaler
      namespace: tkg-system
    spec:
      serviceAccountName: autoscaler-sa
      packageRef:
        refName: cluster-autoscaler.tanzu.vmware.com
        versionSelection:
          constraints: 1.28.0+vmware.1-tkg.1
      values:
      - secretRef:
          name: autoscaler-data-values
    ---
    apiVersion: v1
    kind: Secret
    metadata:
      name: autoscaler-data-values
      namespace: tkg-system
    stringData:
      values.yml: |
        ---
        arguments:
          ignoreDaemonsetsUtilization: true
          maxNodeProvisionTime: 15m
          maxNodesTotal: 0
          metricsPort: 8085
          scaleDownDelayAfterAdd: 10m
          scaleDownDelayAfterDelete: 10s
          scaleDownDelayAfterFailure: 3m
          scaleDownUnneededTime: 10m
        clusterConfig:
          clusterName: "gc1"
          clusterNamespace: "cluster"
        paused: false
  3. Aplique las actualizaciones al paquete del escalador automático.
    kubectl apply -f autoscaler-package-upgrade.yaml
  4. Compruebe que el pod del escalador automático se ejecuta en el espacio de nombres kube-system.
  5. Pruebe el escalador automático de clústeres.

    Prueba del escalador automático de clústeres.