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:
- Przywrócić poprzednią wersję funkcji. Na przykład z 4,51,00 na 4,50,00.
- 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:
-
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
- Aby przywrócić wersję 4.50.00, pobierz
- Zatrzymaj komponent, aby cofnąć zmiany:
- 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
- Aby cofnąć dowolny inny komponent na węźle, zatrzymaj tylko ten komponent:
/opt/apigee/apigee-service/bin/apigee-service component stop
- Aby cofnąć dowolny z komponentów z kodem wspólnym w węźle, musisz je wszystkie zatrzymać, jak w tym przykładzie:
- 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
- Odinstaluj komponent, aby cofnąć zmiany na węźle:
- 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
- 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.
- Aby przywrócić Edge Router, musisz usunąć zawartość pliku
/opt/nginx/conf.d
, a także odinstalować grupę komponentówedge-gateway
:cd /opt/nginx/conf.d
rm -rf *
- Aby wycofać dowolny z komponentów z kodem wspólnym w węźle, musisz odinstalować wszystkie komponenty, odinstalowując grupę komponentów
- Odinstaluj wersję 4.51.00 aplikacji
apigee-setup
:/opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
- 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 pakietuapigee-service
:sudo bash /tmp/bootstrap_4.50.00.sh apigeeuser=uName apigeepassword=pWord
Gdzie uName i pWord 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. - Zainstaluj
apigee-setup
:/opt/apigee/apigee-service/bin/apigee-service apigee-setup install
- 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.
- Jeśli cofasz Qpid, opróżnij iptables:
sudo iptables -F
- 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:
- 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
- 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ę.
- 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.
- 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
- 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
- Jeśli jest zainstalowany, uruchom Qpid na starym węźle zapasowym:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start
- Ustaw nowy węzeł zapasowy jako główny serwer PostgreSQL:
- 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”.
- 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
- Skonfiguruj nowy element główny:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
- Ustaw nowy węzeł zapasowy jako nowy węzeł główny:
- 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.
- Zatrzymaj Postgres na starym węźle zapasowym:
apigee-service apigee-postgresql stop apigee-service edge-postgres-server stop
- Odinstaluj Postgresa ze starego węzła zapasowego:
apigee-service apigee-postgresql uninstall apigee-service edge-postgres-server uninstall
- Usuń katalog danych Postgresa ze starego węzła zapasowego:
cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
- 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.
- Skonfiguruj komponenty Postgresa na starym węźle zapasowym:
/opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile
- 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
- Zatrzymaj Postgres na starym węźle zapasowym:
- Odbuduj stary węzeł zapasowy:
- 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
- Usuń katalog danych na starym węźle rezerwowym:
cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
- 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
- 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
- Edytuj plik konfiguracji, którego użyto do zainstalowania bieżącej wersji Edge, aby określić:
- 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. - 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 poluname
w grupieconsumer-groups
– nazwę grupy konsumentów. Zwraca on również UUID starych węzłów głównego i zapasowego Postgres w polupostgres-server
oraz w poludatastores
. 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" : { } }
- 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"
- Powtórz poprzedni krok, aby uzyskać adresy IP starego węzła zapasowego i nowego węzła głównego.
- 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-001 i consumer-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 przypadkuconsumer-groups
powinna być teraz pusta. - 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 ramachuuids
powinna być teraz pusta. - 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
- 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.
- Ponownie uruchom serwer Edge Management:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- Ponownie uruchom wszystkie serwery Qpid:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
- Uruchom ponownie wszystkie serwery Postgres:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
- 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.
- Powtórz poprzedni krok po wysłaniu kilku żądań do interfejsu API, aby mieć pewność, że węzły są zsynchronizowane.
- 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:
- Zatrzymaj Apigee:
apigee-all stop
- Zatrzymanie mTLS:
apigee-service apigee-mtls uninstall
- Ponownie zainstaluj mTLS:
apigee-service apigee-mtls install
apigee-service apigee-mtls setup -f /opt/silent.conf