Mettre à niveau Apigee hybrid

Mise à niveau vers une nouvelle version

Pour mettre à niveau Apigee hybrid vers une nouvelle version, procédez comme suit :

Téléchargez et installez une nouvelle version de apigeectl.

apigeectl est l'interface de ligne de commande (CLI) pour installer et gérer Apigee hybrid dans un cluster Kubernetes.

Téléchargez la version de apigeectl que vous souhaitez mettre à niveau :

  1. Téléchargez le package de version pour votre système d'exploitation :

    Mac 64 bits :

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/version_number/apigeectl_mac_64.tar.gz

    Linux 64 bits :

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/version_number/apigeectl_linux_64.tar.gz

    Mac 32 bits :

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/version_number/apigeectl_mac_32.tar.gz

    Linux 32 bits :

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/version_number/apigeectl_linux_32.tar.gz
  2. Identifiez le répertoire d'installation de base créé lors de l 'installation initiale d'Apigee hybrid. Le répertoire de base est le répertoire dans lequel se trouve le répertoire $APIGEEGTL_HOME. Dans l'exemple suivant, le répertoire de base est /Users/myhome/hybrid :

    echo $APIGEECTL_HOME
    /Users/myhome/hybrid/apigeectl
  3. Extrayez le contenu du fichier gzip téléchargé dans le répertoire de base Apigee hybrid :

    tar xvzf filename.tar.gz -C path-to-base-directory
  4. cd dans le répertoire de base.
  5. Le contenu du fichier tar est, par défaut, développé dans un répertoire dont le nom contient la version et la plate-forme. Exemple : ./apigeectl_1.2.0-f7b96a8_linux_64.

  6. Renommez le répertoire apigeectl actuel. Par exemple, si la version actuelle est 1.1.1, renommez le répertoire apigeectl en apigeectl_1.1.1.
  7. Renommez le répertoire d'installation que vous venez d'extraire en apigeectl. Il s'agit maintenant de l'emplacement vers lequel l'environnement $APIGEECTL_HOME pointe.
  8. Nettoyez les tâches terminées pour l'espace de noms d'exécution hybride, où namespace correspond à l'espace de noms spécifié dans votre fichier de remplacement, si vous avez spécifié un espace de noms. Si ce n'est pas le cas, l'espace de noms par défaut est apigee :
    kubectl delete job -n namespace \
      $(kubectl get job -n namespace -o=jsonpath='{.items[?(@.status.succeeded==1)].metadata.name}')
  9. Nettoyez les tâches terminées pour l'espace de noms apigee-system :
    kubectl delete job -n apigee-system \
      $(kubectl get job -n apigee-system -o=jsonpath='{.items[?(@.status.succeeded==1)].metadata.name}')
  10. Nettoyez les tâches terminées pour l'espace de noms istio-system :
    kubectl delete job -n istio-system \
      $(kubectl get job -n istio-system -o=jsonpath='{.items[?(@.status.succeeded==1)].metadata.name}')
  11. cd dans le répertoire ./hybrid-files :
  12. Initialisez apigeectl pour la nouvelle version :
    $APIGEECTL_HOME/apigeectl init -f my-overrides.yaml
  13. Vérifiez si l'initialisation est terminée :
    $APIGEECTL_HOME/apigeectl check-ready -f my-overrides.yaml
  14. Lorsque check-ready réussit, exécutez apigeectl apply :
    $APIGEECTL_HOME/apigeectl apply -f my-overrides.yaml
  15. Exécutez à nouveau check-ready pour déterminer quand la mise à niveau est terminée.

Effectuer un rollback de la mise à niveau

Suivez ces étapes ci-dessous pour effectuer le rollback vers une mise à niveau précédente :

  1. Nettoyez les tâches terminées :
    kubectl delete job -n namespace $(kubectl get job -n namespace -o=jsonpath='{.items[?(@.status.succeeded==1)].metadata.name}')
  2. Dans le répertoire racine de l'installation vers laquelle vous souhaitez effectuer un rollback, exécutez apigeectl init, puis apigeectl apply.
      $APIGEECTL_HOME/apigeectl init -f my-overrides.yaml
      $APIGEECTL_HOME/apigeectl apply -f my-overrides.yaml