Cofnij zmiany w Apigee Edge 4.51.00

Jeśli podczas aktualizacji do wersji Edge 4.51.00 wystąpi błąd, możesz cofnąć zmianę komponentu, który spowodował błąd, a następnie ponownie spróbować przeprowadzić aktualizację.

Możesz przywrócić Edge 4.51.00 do jednej z tych wersji funkcji:

  • Wersja 4.50.00
  • Wersja 4.19.06

Możesz wykonać cofnięcie zmian w 2 sytuacjach:

  1. Przywrócić poprzednią wersję funkcji. Na przykład z 4,51,00 na 4,50,00.
  2. Przywróć poprzednią wersję aktualizacji w tej samej wersji. Na przykład z 4.50.00.02 na 4.50.00.01.

Więcej informacji znajdziesz w artykule Proces publikowania Apigee Edge.

Kto może cofnąć zmiany

Użytkownik wykonujący wycofanie 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óżne użytkownicy. Jeśli na przykład Router musi uzyskać 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 jako inny użytkownik.

Komponenty z kodem wspólnym

Te komponenty Edge korzystają z wspólnego kodu. Dlatego aby cofnąć zmiany w dowolnym z tych komponentów na węźle, musisz cofnąć zmiany we wszystkich komponentach na 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 (Qpid Server)

Jeśli na przykład masz na węźle zainstalowane serwer zarządzania, router i przetwarzacz wiadomości, aby cofnąć zmiany w jednym z nich, musisz cofnąć zmiany we wszystkich trzech.

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 przywrócić:

    • Aby przywrócić wersję 4.50.00, pobierz bootstrap_4.50.00.sh:
      curl https://software.apigee.com/bootstrap_4.50.00.sh -o /tmp/bootstrap_4.50.00.sh 
    • Aby przywrócić wersję 4.19.06, pobierz bootstrap_4.19.06.sh:
      curl https://software.apigee.com/bootstrap_4.19.01.sh -o /tmp/bootstrap_4.19.01.sh 
  2. Zatrzymaj komponent, aby cofnąć zmiany:
    1. Aby cofnąć dowolny z komponentów z kodem wspólnym w węźle, musisz je wszystkie zatrzymać, jak 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 cofnąć dowolny inny komponent na węźle, zatrzymaj tylko ten komponent:
      • /opt/apigee/apigee-service/bin/apigee-service component stop
  3. Jeśli wycofujesz Monetyzację, odinstaluj ją ze wszystkich węzłów serwera zarządzania i procesora wiadomości:
    /opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
  4. Odinstaluj komponent, aby cofnąć zmiany na węźle:
    1. Aby wycofać dowolny z komponentów z kodem wspólnym w węźle, musisz odinstalować wszystkie komponenty, 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ć inny komponent w węźle, odinstaluj tylko ten komponent, jak w tym przykładzie:
      /opt/apigee/apigee-service/bin/apigee-service component uninstall

      Gdzie component to nazwa komponentu.

    3. Aby przywrócić Edge Router, musisz usunąć zawartość pliku /opt/nginx/conf.d, a także odinstalować grupę komponentów edge-gateway:
      cd /opt/nginx/conf.d
      rm -rf *
  5. Odinstaluj wersję 4.51.00 aplikacji apigee-setup:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
  6. Zainstaluj wersję 4.19.06 lub 4.50.00 narzędzia apigee-service i jego zależności. W tym przykładzie instalowana jest wersja 4.50.00 pakietu apigee-service:
    sudo bash /tmp/bootstrap_4.50.00.sh apigeeuser=uName apigeepassword=pWord

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

    Jeśli pojawi się błąd, sprawdź, czy plik bootstrap.sh został pobrany w kroku 1.

  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 instalowany komponent, a configFile to plik konfiguracji starszej wersji.

  9. Jeśli cofasz Qpid, opróżnij iptables:
    sudo iptables -F
  10. Powtórz tę procedurę dla każdego węzła, który hostuje komponent, który chcesz cofnąć.

Przywracanie poprzedniej wersji

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

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

    Gdzie component_version to wersja komponentu i aktualizacji do zainstalowania. Przykład:

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

    Jeśli korzystasz z repozytorium internetowego 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. Aby zainstalować komponent, użyj apigee-setup:
    /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 tę procedurę dla każdego węzła, który hostuje komponent, który chcesz cofnąć.

Cofanie aktualizacji Postgres 10.17

Jeśli uaktualniono wersję z 4.19.06 lub 4.50.00 na 4.51.00, oprócz komponentów Edge musisz cofnąć również aktualizację Postgresa.

Aby cofnąć aktualizację Postgresa podczas aktualizacji Postgresa w konfiguracji głównej:

  • Ustaw nowy węzeł zapasowy jako węzeł główny Postgresa. Nowy serwer główny Postgres będzie miał tę samą wersję co poprzednia instalacja Edge.
  • Skonfiguruj stary węzeł zapasowy jako węzeł zapasowy nowego węzła głównego. Stary węzeł zapasowy będzie mieć tę samą wersję co poprzednia instalacja Edge.
  • Zarejestruj nowe węzły główne i zapasowe w grupach analitycznych i konsumenckich.

Gdy skończysz odzyskiwanie, stary węzeł główny nie będzie już potrzebny. Następnie możesz wycofać ze służby stary węzeł główny.

  1. Upewnij się, że nowy węzeł zapasowy Postgres jest uruchomiony:
    /opt/apigee/apigee-service/bin/apigee-all status

    Jeśli Postgres nie działa, uruchom go:

    /opt/apigee/apigee-service/bin/apigee-all start
  2. Upewnij się, że Postgres jest zatrzymany na starym węźle głównym i starym węźle zapasowym:
    /opt/apigee/apigee-service/bin/apigee-all status

    Jeśli usługa Postgres jest uruchomiona, zatrzymaj ją:

    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop

  3. Jeśli jest zainstalowany, uruchom Qpid na starym węźle zapasowym:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start
  4. Ustaw nowy węzeł zapasowy jako główny serwer PostgreSQL:
    1. Ustaw nowy węzeł zapasowy jako nowy węzeł główny:
      apigee-service apigee-postgresql promote-standby-to-master new_standby_IP

      Jeśli pojawi się prośba, wpisz hasło Postgres dla użytkownika „apigee”, które domyślnie jest ustawione na „postgres”.

    2. Edytuj plik konfiguracji, którego użyto do zainstalowania bieżącej wersji Edge, aby określić:
      # IP address of the new master:
      PG_MASTER=new_standby_IP
      # IP address of the old standby node
      PG_STANDBY=old_standby_IP
    3. Skonfiguruj nowy element główny:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
  5. Jeśli stary węzeł zapasowy został już zaktualizowany do nowszej wersji, musisz najpierw obniżyć wersję oprogramowania Apigee na starym węźle zapasowym. Jeśli na starym węźle zapasowym nadal masz starszą wersję, możesz pominąć ten krok i przejść do kroku 6.
    1. Zatrzymaj Postgres na starym węźle zapasowym:
      apigee-service apigee-postgresql stop
      apigee-service edge-postgres-server stop
    2. Odinstaluj Postgresa ze starego węzła zapasowego:
      apigee-service apigee-postgresql uninstall
      apigee-service edge-postgres-server uninstall
    3. Usuń katalog danych Postgresa ze starego węzła zapasowego:
      cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
    4. Pobierz i uruchom starszy bootstrap (dla wersji Apigee, do której się cofasz) na starym węźle zapasowym. Dokładne czynności mogą się różnić w zależności od tego, czy korzystasz z instalacji online czy offline. Uruchomienie starszej wersji pakietu bootstrap Apigee skonfiguruje repozytoria yum ze starszymi danymi Apigee.
    5. Skonfiguruj komponenty Postgresa na starym węźle zapasowym:
      /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile
    6. Sprawdź, czy komponenty Postgresa na starym węźle zapasowym zostały przywrócone do starszej wersji:
      apigee-service apigee-postgresql version
      apigee-service edge-postgres-server version
  6. Odbuduj stary węzeł zapasowy:
    1. Edytuj plik konfiguracji, którego użyto do zainstalowania bieżącej wersji Edge, aby określić:
      # IP address of the new master:
      PG_MASTER=new_standby_IP
      # IP address of the old standby node
      PG_STANDBY=old_standby_IP
    2. Usuń katalog danych na starym węźle rezerwowym:
      cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
    3. Zmień konfigurację starego węzła zapasowego, aby był on węzłem zapasowym nowego węzła głównego:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
    4. Upewnij się, że Postgres działa na starym węźle zapasowym:
      /opt/apigee/apigee-service/bin/apigee-all status

      Jeśli Postgres nie działa, uruchom go:

      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start
  7. Sprawdź, czy nowy węzeł zapasowy został dodany, wyświetlając plik /opt/apigee/apigee-postgresql/conf/pg_hba.conf na nowym serwerze głównym.
  8. Aby wyświetlić bieżące informacje analityczne i informacje o grupie konsumentów, uruchom to polecenie na serwerze zarządzającym:
    curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

    To polecenie zwraca w polu name nazwę grupy Analytics, a w polu name w grupie consumer-groups – nazwę grupy konsumentów. Zwraca on również UUID starych węzłów głównego i zapasowego Postgres w polu postgres-server oraz w polu datastores. Powinny się wyświetlić dane wyjściowe w tym formacie:

    {
      "name" : "axgroup-001",
      "properties" : {
      },
      "scopes" : [ "VALIDATE~test", "sgilson~prod" ],
      "uuids" : {
        "qpid-server" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ],
        "postgres-server" : [
          "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256"
        ]
      },
      "consumer-groups" : [ {
        "name" : "consumer-group-001",
        "consumers" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ],
        "datastores" :
          [ "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256" ],
          "properties" : {     }
        }
      ],
      "data-processors" : {
      }
    }

  9. Uzyskaj adres UUID starego węzła głównego, uruchamiając na starym węźle głównym to polecenie curl:
    curl -u sysAdminEmail:password http://node_IP:8084/v1/servers/self

    Na końcu danych wyjściowych powinien pojawić się identyfikator UUID węzła w formie:

    "type" : [ "postgres-server" ],
    "uUID" : "599e8ebf-5d69-4ae4-aa71-154970a8ec75"
  10. Powtórz poprzedni krok, aby uzyskać adresy IP starego węzła zapasowego i nowego węzła głównego.
  11. Usuń stare węzły główne i zapasowe z grupy konsumentów:
    curl -u sysAdminEmail:password -X DELETE \
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastores/masterUUID,standbyUUID" -v

    Gdzie axgroup-001consumer-group-001 to domyślne nazwy grup analitycznych i grup konsumentów. masterUUID,standbyUUID są w tej samej kolejności, w jakiej były widoczne w sekcji z informacjami o bieżących statystykach i grupach konsumentów. Konieczne może być ustawienie zakresu na standbyUUID,masterUUID.

    Właściwość datastores w przypadku consumer-groups powinna być teraz pusta.

  12. Usuń stare węzły główne i zapasowe z grupy analitycznej:
    curl -u sysAdminEmail:password -X DELETE \
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v

    Właściwość postgres-server w ramach uuids powinna być teraz pusta.

  13. Zarejestruj nowe węzły główne i zapasowe PG w grupach analitycznych i konsumenckich:
    curl -u sysAdminEmail:password -X POST -H "Content-Type: application/json" -d ''
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v
    curl -u sysAdminEmail:password -X POST -H "Content-Type:application/json" -d ''
      "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastores?uuid=masterUUID,standbyUUID" -v
  14. Sprawdź grupę funkcji analitycznych:
    curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax

    W grupie analitycznej i grupie konsumentów powinny się wyświetlić identyfikatory UUID nowych węzłów głównych i zapasowych.

  15. Ponownie uruchom serwer Edge Management:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
  16. Ponownie uruchom wszystkie serwery Qpid:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
  17. Uruchom ponownie wszystkie serwery Postgres:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
  18. Sprawdź stan replikacji, wykonując te skrypty na obu serwerach. Aby zapewnić prawidłową replikację, system powinien wyświetlać identyczne wyniki na obu serwerach:

    Na nowym urządzeniu nadrzędnym wykonaj te czynności:

    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

    Sprawdź, czy jest to urządzenie główne. Na starym węźle w trybie czuwania:

    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

    Sprawdź, czy jest to tryb gotowości.

  19. Powtórz poprzedni krok po wysłaniu kilku żądań do interfejsu API, aby mieć pewność, że węzły są zsynchronizowane.
  20. Wycofaj stary serwer główny Postgres, wykonując procedurę opisaną w artykule Aktualizowanie Apigee Edge z wersji 4.16.01 lub 4.16.05 do 4.17.09.

    Możesz też odinstalować Qpid ze starego węzła głównego i zainstalować Qpid na nowym węźle głównym. Po odinstalowaniu Qpid możesz wycofać stary węzeł główny.

Przywracanie mTLS

Aby cofnąć aktualizację mTLS, wykonaj te czynności na wszystkich hostach:

  1. Zatrzymaj Apigee:
    apigee-all stop
  2. Zatrzymanie mTLS:
    apigee-service apigee-mtls uninstall
  3. Ponownie zainstaluj mTLS:
    apigee-service apigee-mtls install
    apigee-service apigee-mtls setup -f /opt/silent.conf