Skip to main content
La version française est une traduction automatique. La version anglaise prévaut sur la française en cas de divergence.

Mettez à niveau Astra Control Center

Contributeurs

Pour mettre à niveau Astra Control Center, téléchargez les images d'installation et suivez ces instructions. Vous pouvez utiliser cette procédure pour mettre à niveau Astra Control Center dans des environnements connectés à Internet ou à air comprimé.

Ces instructions décrivent le processus de mise à niveau d'Astra Control Center, qui passe de la deuxième version la plus récente à cette version actuelle. Vous ne pouvez pas effectuer une mise à niveau directement à partir d'une version qui est à au moins deux versions derrière la version actuelle. Si la version d'Astra Control Center installée est plusieurs versions derrière la dernière version, vous devrez peut-être effectuer des mises à niveau de chaîne vers des versions plus récentes jusqu'à ce que votre Astra Control Center installée ne soit qu'une seule version derrière la dernière version. Pour obtenir la liste complète des versions publiées, reportez-vous au "notes de version".

Avant de commencer

Avant de procéder à la mise à niveau, assurez-vous que votre environnement respecte toujours le "Configuration minimale requise pour le déploiement d'Astra Control Center". Votre environnement doit disposer des éléments suivants :

  • Un activé "De provisionnement Astra Control" Avec Astra Trident en cours d'exécution

    1. Déterminez la version d'Astra Trident que vous exécutez :

      kubectl get tridentversion -n trident
      Remarque Si vous exécutez Astra Trident 23.01 ou une version antérieure, utilisez-les "instructions" Pour effectuer une mise à niveau vers une version plus récente d'Astra Trident avant de passer à Astra Control Provisioner. Vous pouvez effectuer une mise à niveau directe vers Astra Control Provisioner 24.02 si votre Astra Trident se trouve dans une fenêtre à quatre versions de la version 24.02. Par exemple, vous pouvez effectuer une mise à niveau directe d'Astra Trident 23.04 vers Astra Control Provisioner 24.02.
    2. Vérifiez que le mécanisme de provisionnement Astra Control a été utilisé "activé". ASTRA Control Provisioner ne fonctionnera pas avec les versions d'Astra Control Center antérieures à 23.10. Mettez à niveau votre mécanisme de provisionnement Astra Control afin qu'il dispose de la même version que l'Astra Control Center que vous mettez à niveau pour accéder aux toutes dernières fonctionnalités.

  • Une distribution Kubernetes prise en charge

    Déterminez la version Kubernetes que vous exécutez :

    kubectl get nodes -o wide
  • Ressources du cluster suffisantes

    Déterminer les ressources disponibles du cluster :

    kubectl describe node <node name>
  • Une classe de stockage par défaut

    Déterminez votre classe de stockage par défaut :

    kubectl get storageclass
  • Services API sains et disponibles

    Assurez-vous que tous les services API sont en état de santé et disponibles :

    kubectl get apiservices
  • * (Registres locaux uniquement) Un registre local que vous pouvez utiliser pour envoyer et télécharger des images Astra Control Center*

  • * (OpenShift uniquement) opérateurs de grappes sains et disponibles*

    S'assurer que tous les opérateurs du groupe d'instruments sont en état de fonctionnement et disponibles.

    kubectl get clusteroperators

Vous devez également tenir compte des points suivants :

Astuce Effectuez les mises à niveau dans une fenêtre de maintenance lorsque les planifications, les sauvegardes et les snapshots ne sont pas en cours d'exécution.
  • Accès au registre d'images NetApp Astra Control :
    Vous avez la possibilité d'obtenir des images d'installation et des améliorations de fonctionnalités pour Astra Control, telles que Astra Control Provisioner, à partir du registre d'images NetApp.

    1. Notez l'ID de votre compte Astra Control dont vous aurez besoin pour vous connecter au registre.

      Votre ID de compte s'affiche dans l'interface utilisateur web d'Astra Control Service. Sélectionnez l'icône de figure en haut à droite de la page, sélectionnez API Access et notez votre ID de compte.

    2. A partir de la même page, sélectionnez générer jeton API et copiez la chaîne de jeton API dans le presse-papiers et enregistrez-la dans votre éditeur.

    3. Connectez-vous au registre Astra Control :

      docker login cr.astra.netapp.io -u <account-id> -p <api-token>
  • Déploiements de maillage de service Istio
    Si vous avez installé un maillage de service Istio pendant l'installation d'Astra Control Center, cette mise à niveau d'Astra Control Center inclura le maillage de service Istio. Si vous n'avez pas encore de maillage de service, vous ne pouvez en installer qu'un pendant un "déploiement initial" D'Astra Control Center.

Description de la tâche

Le processus de mise à niveau d'Astra Control Center vous guide à travers les étapes de haut niveau suivantes :

Remarque Déconnectez-vous de l'interface utilisateur de l'Astra Control Center avant de commencer la mise à niveau.
Important Ne supprimez pas l'opérateur du centre de contrôle Astra (par exemple, kubectl delete -f astra_control_center_operator_deploy.yaml) À tout moment pendant la mise à niveau ou l'opération Astra Control Center pour éviter de supprimer des modules.

Téléchargez et extrayez Astra Control Center

Téléchargez les images d'Astra Control Center à partir de l'un des emplacements suivants :

  • Registre d'images du service Astra Control : utilisez cette option si vous n'utilisez pas de registre local avec les images d'Astra Control Center ou si vous préférez cette méthode au téléchargement du bundle à partir du site de support NetApp.

  • Site de support NetApp : utilisez cette option si vous utilisez un registre local avec les images du Centre de contrôle Astra.

Registre d'images Astra Control
  1. Connectez-vous à Astra Control Service.

  2. Sur le tableau de bord, sélectionnez Deploy a autogéré instance d'Astra Control.

  3. Suivez les instructions pour vous connecter au registre d'images Astra Control, extraire l'image d'installation d'Astra Control Center et extraire l'image.

Site de support NetApp
  1. Téléchargez le pack contenant Astra Control Center (astra-control-center-[version].tar.gz) du "Page de téléchargements d'Astra Control Center".

  2. (Recommandé mais facultatif) Téléchargez le lot de certificats et de signatures pour Astra Control Center (astra-control-center-certs-[version].tar.gz) pour vérifier la signature du paquet.

    tar -vxzf astra-control-center-certs-[version].tar.gz
    openssl dgst -sha256 -verify certs/AstraControlCenter-public.pub -signature certs/astra-control-center-[version].tar.gz.sig astra-control-center-[version].tar.gz

    La sortie s'affiche Verified OK une fois la vérification terminée.

  3. Extraire les images du pack Astra Control Center :

    tar -vxzf astra-control-center-[version].tar.gz

Suivez les étapes supplémentaires si vous utilisez un registre local

Si vous prévoyez d'envoyer le bundle Astra Control Center vers votre registre local, vous devez utiliser le plug-in de ligne de commande NetApp Astra kubectl.

Retirez le plug-in NetApp Astra kubectl et réinstallez-le

Vous devez utiliser la dernière version du plug-in de ligne de commande NetApp Astra kubectl pour envoyer les images vers un référentiel Docker local.

  1. Déterminez si le plug-in est installé :

    kubectl astra
  2. Faites l'une des actions suivantes :

    • Si le plug-in est installé, la commande doit renvoyer l'aide du plug-in kubectl et vous pouvez supprimer la version existante de kubectl-astra : delete /usr/local/bin/kubectl-astra.

    • Si la commande renvoie une erreur, le plug-in n'est pas installé et vous pouvez passer à l'étape suivante pour l'installer.

  3. Installez le plug-in :

    1. Répertoriez les binaires NetApp Astra kubectl disponibles et notez le nom du fichier dont vous avez besoin pour votre système d'exploitation et votre architecture de processeur :

      Remarque La bibliothèque de plug-ins kubectl fait partie du bundle tar et est extraite dans le dossier kubectl-astra.
    ls kubectl-astra/
    1. Déplacez le bon binaire dans le chemin actuel et renommez-le kubectl-astra:

      cp kubectl-astra/<binary-name> /usr/local/bin/kubectl-astra

Ajoutez les images à votre registre

  1. Si vous prévoyez d'envoyer le bundle Astra Control Center vers votre registre local, suivez la séquence d'étapes appropriée pour votre moteur de mise en conteneurs :

    Docker
    1. Accédez au répertoire racine du tarball. Vous devriez voir le acc.manifest.bundle.yaml et les répertoires suivants :

      acc/
      kubectl-astra/
      acc.manifest.bundle.yaml

    2. Envoyez les images du package dans le répertoire d'images Astra Control Center vers votre registre local. Effectuez les remplacements suivants avant d'exécuter le push-images commande :

      • Remplacez <BUNDLE_FILE> par le nom du fichier bundle Astra Control (acc.manifest.bundle.yaml).

      • Remplacer <MY_FULL_REGISTRY_PATH> par l'URL du référentiel Docker, par exemple "https://<docker-registry>".

      • Remplacez <MY_REGISTRY_USER> par le nom d'utilisateur.

      • Remplacez <MY_REGISTRY_TOKEN> par un jeton autorisé pour le registre.

        kubectl astra packages push-images -m <BUNDLE_FILE> -r <MY_FULL_REGISTRY_PATH> -u <MY_REGISTRY_USER> -p <MY_REGISTRY_TOKEN>
    Podman
    1. Accédez au répertoire racine du tarball. Vous devriez voir ce fichier et ce répertoire:

      acc/
      kubectl-astra/
      acc.manifest.bundle.yaml

    2. Connectez-vous à votre registre :

      podman login <YOUR_REGISTRY>
    3. Préparez et exécutez l'un des scripts suivants qui est personnalisé pour la version de Podman que vous utilisez. Remplacez <MY_FULL_REGISTRY_PATH> par l'URL de votre référentiel qui inclut tous les sous-répertoires.

      Podman 4
      export REGISTRY=<MY_FULL_REGISTRY_PATH>
      export PACKAGENAME=acc
      export PACKAGEVERSION=24.02.0-69
      export DIRECTORYNAME=acc
      for astraImageFile in $(ls ${DIRECTORYNAME}/images/*.tar) ; do
      astraImage=$(podman load --input ${astraImageFile} | sed 's/Loaded image: //')
      astraImageNoPath=$(echo ${astraImage} | sed 's:.*/::')
      podman tag ${astraImageNoPath} ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
      podman push ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
      done
      Podman 3
      export REGISTRY=<MY_FULL_REGISTRY_PATH>
      export PACKAGENAME=acc
      export PACKAGEVERSION=24.02.0-69
      export DIRECTORYNAME=acc
      for astraImageFile in $(ls ${DIRECTORYNAME}/images/*.tar) ; do
      astraImage=$(podman load --input ${astraImageFile} | sed 's/Loaded image: //')
      astraImageNoPath=$(echo ${astraImage} | sed 's:.*/::')
      podman tag ${astraImageNoPath} ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
      podman push ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
      done
      Remarque Le chemin d'accès à l'image que le script crée doit ressembler aux éléments suivants, selon la configuration de votre registre :
      https://downloads.example.io/docker-astra-control-prod/netapp/astra/acc/24.02.0-69/image:version
  2. Modifier le répertoire :

    cd manifests

Poser le conducteur du centre de commande Astra mis à jour

  1. (Registres locaux uniquement) si vous utilisez un registre local, procédez comme suit :

    1. Ouvrez le déploiement de l'opérateur Astra Control Center YAML :

      vim astra_control_center_operator_deploy.yaml
      Remarque Un échantillon annoté YAML suit ces étapes.
    2. Si vous utilisez un registre qui nécessite une authentification, remplacez ou modifiez la ligne par défaut de imagePullSecrets: [] avec les éléments suivants :

      imagePullSecrets: [{name: astra-registry-cred}]
    3. Changer ASTRA_IMAGE_REGISTRY pour le kube-rbac-proxy image dans le chemin du registre où vous avez poussé les images dans un étape précédente.

    4. Changer ASTRA_IMAGE_REGISTRY pour le acc-operator image dans le chemin du registre où vous avez poussé les images dans un étape précédente.

    5. Ajoutez les valeurs suivantes à la env section :

      - name: ACCOP_HELM_UPGRADETIMEOUT
        value: 300m
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      labels:
        control-plane: controller-manager
      name: acc-operator-controller-manager
      namespace: netapp-acc-operator
    spec:
      replicas: 1
      selector:
        matchLabels:
          control-plane: controller-manager
      strategy:
        type: Recreate
      template:
        metadata:
          labels:
            control-plane: controller-manager
        spec:
          containers:
          - args:
            - --secure-listen-address=0.0.0.0:8443
            - --upstream=http://127.0.0.1:8080/
            - --logtostderr=true
            - --v=10
            image: ASTRA_IMAGE_REGISTRY/kube-rbac-proxy:v4.8.0
            name: kube-rbac-proxy
            ports:
            - containerPort: 8443
              name: https
          - args:
            - --health-probe-bind-address=:8081
            - --metrics-bind-address=127.0.0.1:8080
            - --leader-elect
            env:
            - name: ACCOP_LOG_LEVEL
              value: "2"
            - name: ACCOP_HELM_UPGRADETIMEOUT
              value: 300m
            image: ASTRA_IMAGE_REGISTRY/acc-operator:24.02.68
            imagePullPolicy: IfNotPresent
            livenessProbe:
              httpGet:
                path: /healthz
                port: 8081
              initialDelaySeconds: 15
              periodSeconds: 20
            name: manager
            readinessProbe:
              httpGet:
                path: /readyz
                port: 8081
              initialDelaySeconds: 5
              periodSeconds: 10
            resources:
              limits:
                cpu: 300m
                memory: 750Mi
              requests:
                cpu: 100m
                memory: 75Mi
            securityContext:
              allowPrivilegeEscalation: false
          imagePullSecrets: []
          securityContext:
            runAsUser: 65532
          terminationGracePeriodSeconds: 10
  2. Installez le nouveau conducteur du centre de contrôle Astra :

    kubectl apply -f astra_control_center_operator_deploy.yaml
    Exemple de réponse :
    namespace/netapp-acc-operator unchanged
    customresourcedefinition.apiextensions.k8s.io/astracontrolcenters.astra.netapp.io configured
    role.rbac.authorization.k8s.io/acc-operator-leader-election-role unchanged
    clusterrole.rbac.authorization.k8s.io/acc-operator-manager-role configured
    clusterrole.rbac.authorization.k8s.io/acc-operator-metrics-reader unchanged
    clusterrole.rbac.authorization.k8s.io/acc-operator-proxy-role unchanged
    rolebinding.rbac.authorization.k8s.io/acc-operator-leader-election-rolebinding unchanged
    clusterrolebinding.rbac.authorization.k8s.io/acc-operator-manager-rolebinding configured
    clusterrolebinding.rbac.authorization.k8s.io/acc-operator-proxy-rolebinding unchanged
    configmap/acc-operator-manager-config unchanged
    service/acc-operator-controller-manager-metrics-service unchanged
    deployment.apps/acc-operator-controller-manager configured
  3. Vérifiez que les pods sont en cours d'exécution :

    kubectl get pods -n netapp-acc-operator

Mettez à niveau Astra Control Center

  1. Modifiez la ressource personnalisée Astra Control Center (CR) :

    kubectl edit AstraControlCenter -n [netapp-acc or custom namespace]
    Remarque Un échantillon annoté YAML suit ces étapes.
  2. Modifier le numéro de version de l'Astra (astraVersion intérieur de spec) de 23.10.0 à 24.02.0:

    Remarque Vous ne pouvez pas effectuer une mise à niveau directement à partir d'une version qui est à au moins deux versions derrière la version actuelle. Pour obtenir la liste complète des versions publiées, reportez-vous au "notes de version".
    spec:
      accountName: "Example"
      astraVersion: "[Version number]"
  3. Modifiez le registre d'images :

    • (Registres locaux uniquement) si vous utilisez un registre local, vérifiez que le chemin du registre d'images correspond au chemin du registre auquel vous avez transmis les images dans un étape précédente. Mise à jour imageRegistry intérieur de spec si le registre local a changé depuis votre dernière installation.

    • (Registre d'images Astra Control) utilisez le registre d'images Astra Control (cr.astra.netapp.io) Vous avez utilisé pour télécharger le bundle Astra Control mis à jour.

        imageRegistry:
          name: "[cr.astra.netapp.io or your_registry_path]"
  4. Ajoutez les éléments suivants à votre crds configuration à l'intérieur de spec:

    crds:
      shouldUpgrade: true
  5. Ajoutez les lignes suivantes dans additionalValues intérieur de spec Dans le CR Astra Control Center :

    additionalValues:
        nautilus:
          startupProbe:
            periodSeconds: 30
            failureThreshold: 600
        keycloak-operator:
          livenessProbe:
            initialDelaySeconds: 180
          readinessProbe:
            initialDelaySeconds: 180
  6. Enregistrez et quittez l'éditeur de fichiers. Les modifications seront appliquées et la mise à niveau commencera.

  7. (Facultatif) Vérifiez que les modules se terminent et deviennent disponibles à nouveau :

    watch kubectl get pods -n [netapp-acc or custom namespace]
  8. Attendez que les conditions d'état de l'Astra Control indiquent que la mise à niveau est terminée et prête (True) :

    kubectl get AstraControlCenter -n [netapp-acc or custom namespace]

    Réponse :

    NAME    UUID                                      VERSION     ADDRESS         READY
    astra   9aa5fdae-4214-4cb7-9976-5d8b4c0ce27f      24.02.0-69   10.111.111.111  True
    Remarque Pour surveiller le statut de la mise à niveau pendant l'opération, exécutez la commande suivante : kubectl get AstraControlCenter -o yaml -n [netapp-acc or custom namespace]
    Remarque Pour inspecter les journaux de l'opérateur de l'Astra Control Center, exécutez la commande suivante :
    kubectl logs deploy/acc-operator-controller-manager -n netapp-acc-operator -c manager -f

Vérifiez l'état du système

  1. Connectez-vous à Astra Control Center.

  2. Vérifiez que la version a été mise à niveau. Consultez la page support de l'interface utilisateur.

  3. Vérifiez que tous vos clusters et applications gérés sont toujours présents et protégés.