Upgrade di Apigee hybrid

Eseguire l'upgrade a una nuova versione

Per eseguire l'upgrade di Apigee Hybrid a una nuova versione:

Scarica e installa una nuova versione di apigeectl.

apigeectl è l'interfaccia a riga di comando (CLI) per installare e gestire Apigee Hybrid in un cluster Kubernetes.

Scarica la versione di apigeectl a cui vuoi eseguire l'upgrade:

  1. Scarica il pacchetto della release per il tuo sistema operativo:

    Mac 64 bit:

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

    Linux a 64 bit

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

    Mac a 32 bit:

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

    Linux a 32 bit

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/version_number/apigeectl_linux_32.tar.gz
  2. Identifica la directory di installazione di base creata durante l'installazione originale di Apigee hybrid. La directory di base è la directory in cui si trova la directory $APIGEEGTL_HOME. Nell'esempio seguente, la directory di base è /Users/myhome/hybrid:

    echo $APIGEECTL_HOME
    /Users/myhome/hybrid/apigeectl
  3. Estrai i contenuti del file gzip scaricato nella directory di base di Apigee hybrid:

    tar xvzf filename.tar.gz -C path-to-base-directory
  4. cd alla directory di base.
  5. Per impostazione predefinita, i contenuti del file tar vengono espansi in una directory con la versione e la piattaforma nel nome. Ad esempio: ./apigeectl_1.2.0-f7b96a8_linux_64.

  6. Rinomina la directory apigeectl corrente. Ad esempio, se la versione corrente è 1.1.1, rinomina la directory apigeectl in apigeectl_1.1.1.
  7. Rinomina la directory di installazione appena estratta in apigeectl. Ora è qui che punta l'ambiente $APIGEECTL_HOME.
  8. Ripulisci i job completati per lo spazio dei nomi dell'ambiente di runtime ibrido, dove namespace è lo spazio dei nomi specificato nel file degli override, se ne hai specificato uno. In caso contrario, lo spazio dei nomi predefinito è apigee:
    kubectl delete job -n namespace \
      $(kubectl get job -n namespace -o=jsonpath='{.items[?(@.status.succeeded==1)].metadata.name}')
  9. Elimina i job completati per lo spazio dei nomi apigee-system:
    kubectl delete job -n apigee-system \
      $(kubectl get job -n apigee-system -o=jsonpath='{.items[?(@.status.succeeded==1)].metadata.name}')
  10. Elimina i job completati per lo spazio dei nomi istio-system:
    kubectl delete job -n istio-system \
      $(kubectl get job -n istio-system -o=jsonpath='{.items[?(@.status.succeeded==1)].metadata.name}')
  11. cd alla directory ./hybrid-files:
  12. Inizializza apigeectl per la nuova versione:
    $APIGEECTL_HOME/apigeectl init -f my-overrides.yaml
  13. Controlla per determinare quando l'inizializzazione è completa:
    $APIGEECTL_HOME/apigeectl check-ready -f my-overrides.yaml
  14. Quando check-ready passa, esegui apigeectl apply:
    $APIGEECTL_HOME/apigeectl apply -f my-overrides.yaml
  15. Esegui di nuovo check-ready per determinare quando l'upgrade è completato.

Rollback di un upgrade

Per eseguire il rollback di un upgrade precedente:

  1. Elimina i job completati:
    kubectl delete job -n namespace $(kubectl get job -n namespace -o=jsonpath='{.items[?(@.status.succeeded==1)].metadata.name}')
  2. Nella directory principale dell'installazione di cui vuoi eseguire il rollback, esegui apigeectl init e poi apigeectl apply:
      $APIGEECTL_HOME/apigeectl init -f my-overrides.yaml
      $APIGEECTL_HOME/apigeectl apply -f my-overrides.yaml