Cofanie zmian w Apigee Edge 4.19.06

Jeśli podczas aktualizacji do Edge 4.19.06 wystąpi błąd, możesz przywrócić komponent, który go spowodował, a następnie spróbować ponownie przeprowadzić aktualizację.

Możesz wycofać zmiany Edge 4.19.06 do tych wersji do publikacji Feature Release:

  • Wersja 4.19.01
  • Wersja 4.18.05
  • Wersja 4.18.01

Istnieją 2 sytuacje, w których możesz chcieć przywrócić poprzednią wersję:

  1. Przywracanie poprzedniej wersji funkcji Na przykład z wersji 4.19.06 na 4.18.05.
  2. Przywróć poprzednią wersję aktualizacji w tej samej wersji. Na przykład z 4.19.01.02 na 4.19.01.01.

Więcej informacji znajdziesz w artykule na temat procesu publikowania Apigee Edge.

Kto może przywrócić poprzednią wersję

Użytkownik, który przywraca poprzednią wersję, powinien być tym samym użytkownikiem, który pierwotnie zaktualizował Edge, lub użytkownikiem działającym jako root.

Domyślnie komponenty Edge działają jako użytkownik „apigee”. W niektórych przypadkach komponenty Edge mogą być uruchamiane jako różni użytkownicy. Jeśli na przykład router musi mieć dostęp do portów uprzywilejowanych, takich jak te poniżej 1000, musisz uruchomić router jako root lub jako użytkownik z dostępem do tych portów. Możesz też uruchomić jeden komponent jako jeden użytkownik, a inny komponent jako inny użytkownik.

Komponenty ze wspólnym kodem

Te komponenty Edge współdzielą kod. Dlatego aby przywrócić którykolwiek z tych komponentów w węźle, musisz przywrócić wszystkie te komponenty, które znajdują się w tym węźle.

  • edge-management-server (serwer zarządzania)
  • edge-message-processor (procesor komunikatów)
  • edge-router (router)
  • edge-postgres-server (serwer Postgres)
  • edge-qpid-server (serwer Qpid)

Jeśli na przykład na węźle zainstalowano serwer zarządzania, router i procesor komunikatów, aby przywrócić dowolny z nich, musisz przywrócić wszystkie 3.

Przywracanie poprzedniej wersji funkcji

Aby przywrócić poprzednią wersję funkcji, wykonaj te czynności na każdym węźle, na którym znajduje się komponent:

  1. Pobierz plik bootstrap.sh dla wersji, do której chcesz wrócić:

    • Aby przywrócić wersję 4.19.01, pobierz bootstrap_4.19.01.sh:
      curl https://software.apigee.com/bootstrap_4.19.01.sh -o /tmp/bootstrap_4.19.01.sh 
    • Aby przywrócić wersję 4.18.05, pobierz bootstrap_4.18.05.sh:
      curl https://software.apigee.com/bootstrap_4.18.05.sh -o /tmp/bootstrap_4.18.05.sh 
    • Aby przywrócić wersję 4.18.01, pobierz bootstrap_4.18.01.sh:
      curl https://software.apigee.com/bootstrap_4.18.01.sh -o /tmp/bootstrap_4.18.01.sh 
  2. Zatrzymaj komponent, który chcesz wycofać:
    1. Aby przywrócić poprzednią wersję dowolnego komponentu ze wspólnym kodem w węźle, musisz zatrzymać je wszystkie, jak pokazano w tym przykładzie:
      /opt/apigee/apigee-service/bin/apigee-service edge-management-server stop
      /opt/apigee/apigee-service/bin/apigee-service edge-router stop
      /opt/apigee/apigee-service/bin/apigee-service edge-message-processor stop
      /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
    2. Aby przywrócić inny komponent w węźle, zatrzymaj tylko ten komponent:
      • /opt/apigee/apigee-service/bin/apigee-service component stop
  3. Jeśli wycofujesz Zarabianie, odinstaluj je ze wszystkich węzłów serwera zarządzania i procesora komunikatów:
    /opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
  4. Odinstaluj komponent, aby przywrócić poprzednią wersję w węźle:
    1. Aby wycofać dowolny z komponentów ze wspólnym kodem w węźle, musisz odinstalować je wszystkie, odinstalowując grupę komponentów edge-gateway, jak pokazano w tym przykładzie:
      /opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
    2. Aby wycofać dowolny inny komponent w węźle, odinstaluj tylko ten komponent, jak pokazano w tym przykładzie:
      /opt/apigee/apigee-service/bin/apigee-service component uninstall

      Gdzie component jest nazwą komponentu.

    3. Aby wycofać router brzegowy, musisz usunąć zawartość pliku /opt/nginx/conf.d i odinstalować grupę komponentów edge-gateway:
      cd /opt/nginx/conf.d
      rm -rf *
  5. Odinstaluj apigee-setup w wersji 4.19.06:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
  6. Zainstaluj wersję 4.19.01, 4.18.05 lub 4.18.01 narzędzia apigee-service i jego zależności. Ten przykład pokazuje, jak zainstalować wersję 4.18.01 apigee-service:
    sudo bash /tmp/bootstrap_4.18.01.sh apigeeuser=uName apigeepassword=pWord

    Gdzie uName i pWord to nazwa użytkownika i hasło otrzymane od Apigee. Jeśli pominiesz pWord, pojawi się prośba o jego podanie.

    Jeśli pojawi się błąd, upewnij się, że w kroku 1 został pobrany plik bootstrap.sh.

  7. Zainstaluj apigee-setup:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
  8. Zainstaluj starszą wersję komponentu:
    /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile

    Gdzie component to komponent do zainstalowania, a configFile to plik konfiguracji starszej wersji.

  9. Jeśli przywracasz Qpid, wyczyść iptables:
    sudo iptables -F
  10. Powtórz ten proces dla każdego węzła, który hostuje komponent, który chcesz przywrócić.

Przywracanie poprzedniej wersji aktualizacji

Aby przywrócić komponent do określonej wersji, wykonaj te czynności na każdym węźle, na którym znajduje się komponent:

  1. Pobierz konkretną wersję komponentu:
    /opt/apigee/apigee-service/bin/apigee-service component_version install

    Gdzie component_version to komponent i wersja aktualizacji do zainstalowania. Na przykład:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui-4.18.01-0.0.3749 install

    Jeśli używasz repozytorium online Apigee, możesz określić dostępne wersje komponentów za pomocą tego polecenia:

    yum --showduplicates list comp

    Na przykład:

    yum --showduplicates list edge-ui
  2. Użyj apigee-setup, aby zainstalować komponent:
    /opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile

    Na przykład:

    /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile

    Pamiętaj, że podczas instalacji podajesz tylko nazwę komponentu, a nie jego wersję.

  3. Powtórz ten proces dla każdego węzła, który hostuje komponent, który chcesz przywrócić.