Von Zeit zu Zeit kann es notwendig sein, ein Rechenzentrum außer Betrieb zu nehmen. Beispiel: Wenn du dein Betriebssystem aktualisierst, benötigst du um das neue Betriebssystem in einem neuen Rechenzentrum zu installieren und anschließend das alte Rechenzentrum außer Betrieb zu nehmen. In den folgenden Abschnitten wird ein Beispiel für die Außerbetriebnahme eines Rechenzentrums dargestellt. zwei Rechenzentren, dc-1 und dc-2, 12-Knoten Clusterinstallation:
- dc-1 ist das außer Betrieb genommene Rechenzentrum.
- dc-2 ist ein zweites Rechenzentrum, das bei der Außerbetriebnahme verwendet wird.
Wenn Sie ein Upgrade ausführen Ihrem Betriebssystem entspricht, könnte dc-2 das Rechenzentrum sein, in dem Sie die neue Version des Betriebssystems. Die Installation eines neuen Betriebssystems ist jedoch nicht erforderlich. zur Außerbetriebnahme eines Rechenzentrums.
Überlegungen vor der Außerbetriebnahme eines Rechenzentrums
Beachten Sie bei der Außerbetriebnahme eines Rechenzentrums Folgendes:
- Gesamten Laufzeit- und Verwaltungstraffic zum Außerbetriebnahme des Rechenzentrums blockieren und den Traffic weiterleiten in andere Rechenzentren übertragen.
- Nach der Außerbetriebnahme des Rechenzentrums haben Sie eine reduzierte Kapazität in Ihrem Apigee-Cluster. Als Ausgleich können Sie die Kapazität in den verbleibenden Rechenzentren erhöhen oder Rechenzentren nach der Außerbetriebnahme.
- Während der Außerbetriebnahme kann es zu einem Verlust von Analysedaten kommen, welche Analysekomponenten in dem außer Betrieb genommenen Rechenzentrum installiert sind. Sie finden Weitere Details unter Qpid hinzufügen oder entfernen Knoten.
- Bevor Sie ein Rechenzentrum außer Betrieb nehmen, sollten Sie wissen, wie alle Komponenten in allen Rechenzentren konfiguriert, insbesondere OpenLDAP, ZooKeeper, Cassandra, und Postgres-Server. Außerdem sollten Sie Sicherungen aller Komponenten und ihrer Konfigurationen erstellen.
Vorbereitung
- Verwaltungsserver: Alle Schritte zur Außerbetriebnahme hängen stark vom Management Server ab. Wenn Sie nur eine Management Server verfügbar, empfehlen wir Ihnen, eine neue Verwaltungsserverkomponente in einem anderen Rechenzentrum als dc-1 vor der Außerbetriebnahme der Management-Komponente auf dc-1 und stellen Sie sicher, einer der Verwaltungsserver immer verfügbar ist.
- Router: Deaktivieren Sie die Erreichbarkeit der Router, bevor Sie einen Router außer Betrieb nehmen. indem Sie Port 15999 blockieren. Achten Sie darauf, dass keine Laufzeit vorhanden ist wird der Traffic an die Router weitergeleitet, die außer Betrieb genommen werden.
Cassandra und ZooKeeper: In den folgenden Abschnitten wird beschrieben, wie dc-1 in einer Konfiguration mit zwei Rechenzentren außer Betrieb genommen wird. Wenn Sie mehr als zwei in Rechenzentren, achten Sie darauf, alle Verweise auf den Knoten zu entfernen, der außer Betrieb genommen werden soll. (in diesem Fall dc-1) aus allen Konfigurationsdateien im Hintergrund in allen verbleibenden Rechenzentren. Bei Cassandra-Knoten, die außer Betrieb genommen werden sollen, löschen Sie diese Hosts bei
CASS_HOSTS
. Die verbleibenden Cassandra-Knoten sollten die ursprüngliche Reihenfolge vonCASS_HOSTS
beibehalten.Postgres: Wenn Sie einen Postgres-Master außer Betrieb nehmen, achten Sie darauf, einen der verfügbaren Standby-Knoten als neuer Postgres-Master. Während der QPID-Server einen Puffer im wenn der Postgres-Master über einen längeren Zeitraum nicht verfügbar ist, besteht die Gefahr, dass Analysedaten verloren gehen.
Vorbereitung
Bevor Sie eine Komponente außer Betrieb nehmen, empfehlen wir, eine vollständige Sicherung aller Komponenten Knoten. Verwenden Sie das Verfahren für Ihre aktuelle Version von Edge, um den Back-up. Weitere Informationen zum Sichern finden Sie unter Sichern und wiederherstellen
Hinweis:Wenn Sie mehrere Cassandra- oder ZooKeeper-Knoten haben, sichern Sie diese nacheinander, da ZooKeeper vorübergehend beendet wird.
- Stellen Sie sicher, dass Edge vor der Außerbetriebnahme ausgeführt wird, indem Sie den folgenden Befehl verwenden:
/opt/apigee/apigee-service/bin/apigee-all status
- Achten Sie darauf, dass derzeit kein Laufzeit-Traffic in Ihrem Rechenzentrum eingeht außer Betrieb nehmen.
Reihenfolge der Außerbetriebnahmekomponenten
Wenn Sie Edge für Private Cloud auf mehreren Knoten installieren, sollten Sie außer Betrieb nehmen Edge-Komponenten auf diesen Knoten in der folgenden Reihenfolge:
- Edge-UI (edge-ui)
- Verwaltungsserver (edge-management-server)
- OpenLDAP (Apigee-openldap)
- Router (Edge-Router)
- Message Processor (edge-message-processor)
- Qpid Server und Qpidd (edge-qpid-server und apigee-qpidd)
- Postgres- und PostgreSQL-Datenbank (edge-postgres-server und apigee-postgresql)
- ZooKeeper (Apigee-Zookeeper)
- Cassandra (Apigee-Cassandra)
In den folgenden Abschnitten wird erläutert, wie Sie die einzelnen Komponenten außer Betrieb nehmen.
Edge-Benutzeroberfläche
Geben Sie die folgenden Befehle ein, um die Edge-UI-Komponente von dc-1 zu beenden und zu deinstallieren:
/opt/apigee/apigee-service/bin/apigee-service edge-ui stop
/opt/apigee/apigee-service/bin/apigee-service edge-ui uninstall
Verwaltungsserver
Führen Sie die folgenden Schritte aus, um den Verwaltungsserver auf dc-1 außer Betrieb zu nehmen:
- Beenden Sie den Verwaltungsserver auf dc-1:
apigee-service edge-management-server stop
- Ermitteln Sie die UUID des Verwaltungsservers, der in dc-1 registriert ist:
curl -u <AdminEmailID>:'<AdminPassword>' \ -X GET “http://{MS_IP}:8080/v1/servers?pod=central®ion=dc-1&type=management-server”
- Registrierung des Servertyps aufheben:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \ -d "type=management-server®ion=dc-1&pod=central&uuid=UUID&action=remove"
- Löschen Sie den Server. Hinweis:Wenn auf diesem Server noch weitere Komponenten installiert sind,
heben Sie zuerst die Registrierung aller auf, bevor Sie die UUID löschen.
curl -u <AdminEmailID>:'<AdminPassword> -X DELETE http://{MS_IP}:8080/v1/servers/{UUID}
- Deinstallieren Sie die Management Server-Komponente auf dc-1:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server uninstall
LDAP öffnen
In diesem Abschnitt wird erläutert, wie Sie OpenLDAP auf dc-1 außer Betrieb nehmen.
Hinweis:Wenn Sie mehr als zwei Rechenzentren haben, lesen Sie Einrichtungen mit mehr als zwei Rechenzentren (siehe unten).
So nehmen Sie OpenLDAP auf dc-1 außer Betrieb:
- Sichern Sie den OpenLDAP-Knoten dc-1, indem Sie die Schritte in Informationen zur Sicherung
Unterbrechen Sie die Datenreplikation zwischen den beiden Rechenzentren dc-1 und dc-2, indem Sie die folgenden Schritte in beiden Rechenzentren ausführen.
- Überprüfen Sie den aktuellen Status:
ldapsearch -H ldap://{HOST}:{PORT} -LLL -x -b "cn=config" -D "cn=admin,cn=config" -w {credentials} -o ldif-wrap=no 'olcSyncRepl' | grep olcSyncrepl
Die Ausgabe sollte in etwa so aussehen:
olcSyncrepl: {0}rid=001 provider=ldap://{HOST}:{PORT}/ binddn="cn=manager,dc=apigee,dc=com" bindmethod=simple credentials={credentials} searchbase="dc=apigee,dc=com" attrs="*,+" type=refreshAndPersist retry="60 1 300 12 7200 +" timeout=1
- Erstellen Sie eine Datei
break_repl.ldif
mit den folgenden Befehlen:dn: olcDatabase={2}bdb,cn=config changetype: modify delete: olcSyncRepl dn: olcDatabase={2}bdb,cn=config changetype: modify delete: olcMirrorMode
- Führen Sie den Befehl
ldapmodify
aus:ldapmodify -x -w {credentials} -D "cn=admin,cn=config" -H "ldap://{HOST}:{PORT}/" -f path/to/file/break_repl.ldif
Die Ausgabe sollte in etwa so aussehen:
modifying entry "olcDatabase={2}bdb,cn=config" modifying entry "olcDatabase={2}bdb,cn=config"
- Überprüfen Sie den aktuellen Status:
Sie können prüfen, ob dc-2 nicht mehr auf dc-1 repliziert wird, indem Sie einen Eintrag in dc-2 LDAP erstellen und sicherzustellen, dass er nicht im LDAP von dc-1 erscheint.
Optional können Sie mit den folgenden Schritten einen Nutzer mit Lesezugriff in der Datei dc-2 erstellen. OpenLDAP-Knoten und prüfen Sie dann, ob der Nutzer repliziert wurde oder nicht. Die Nutzenden werden anschließend gelöscht.
- Erstellen Sie in dc-2 eine Datei
readonly-user.ldif
mit folgendem Inhalt:dn: uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com objectClass: organizationalPerson objectClass: person objectClass: inetOrgPerson objectClass: top cn: readonly-user sn: readonly-user userPassword: {testPassword}
- Fügen Sie einen Nutzer mit dem Befehl „ldapadd“ in „dc-2“ hinzu:
ldapadd -H ldap://{HOST}:{PORT} -w {credentials} -D "cn=manager,dc=apigee,dc=com" -f path/to/file/readonly-user.ldif
Die Ausgabe sieht in etwa so aus:
adding new entry "uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com"
- Suchen Sie in dc-1 nach dem Nutzer, damit er nicht repliziert wird. Wenn der Nutzer
nicht in dc-1 vorhanden ist, können Sie sicher sein, dass keine beiden LDAPs mehr repliziert werden:
ldapsearch -H ldap://{HOST}:{PORT} -x -w {credentials} -D "cn=manager,dc=apigee,dc=com" -b uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com -LLL
Die Ausgabe sollte in etwa so aussehen:
No such object (32) Matched DN: ou=users,ou=global,dc=apigee,dc=com
- Entfernen Sie den zuvor hinzugefügten Nutzer mit Lesezugriff:
ldapdelete -v -H ldap://{HOST}:{PORT} -w {credentials} -D "cn=manager,dc=apigee,dc=com" "uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com"
- Erstellen Sie in dc-2 eine Datei
- Beenden Sie OpenLDAP in dc-1:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap stop
- Deinstallieren Sie die OpenLDAP-Komponente auf dc-1:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap uninstall
Router
In diesem Abschnitt wird erläutert, wie Sie einen Router außer Betrieb nehmen. Weitere Informationen finden Sie unter <ph type="x-smartling-placeholder"></ph> Entfernen Sie einen Server, um weitere Informationen zum Entfernen des Routers zu erhalten.
Mit den folgenden Schritten nehmen Sie den Router von dc-1 außer Betrieb. Wenn in dc-1 mehrere Routerknoten konfiguriert sind, führen Sie die Schritte auf allen Routerknoten aus Eins nach dem anderen
Hinweis:Hier wird davon ausgegangen, dass der Systemdiagnose-Port 15999 des Routers im Load-Balancer konfiguriert ist. und der blockierende Port 15999 führt dazu, dass der Router nicht mehr erreichbar ist. Möglicherweise benötigst du Root-Zugriff um den Anschluss zu blockieren.
So nehmen Sie einen Router außer Betrieb:
Deaktivieren Sie die Erreichbarkeit von Routern, indem Sie den Port 15999 für die Systemdiagnose blockieren. Achten Sie darauf, dass Laufzeittraffic in diesem Rechenzentrum blockiert wird:
iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
Prüfen Sie, ob der Router erreichbar ist:
curl -vvv -X GET http://{ROUTER_IP}:15999/v1/servers/self/reachable
Die Ausgabe sollte in etwa so aussehen:
About to connect() to 10.126.0.160 port 15999 (#0) Trying 10.126.0.160... Connection refused Failed connect to 10.126.0.160:15999; Connection refused Closing connection 0 curl: (7) Failed connect to 10.126.0.160:15999; Connection refused
- Rufen Sie die UUID des Routers ab, wie unter UUIDs abrufen
- Stoppen Sie den Router:
/opt/apigee/apigee-service/bin/apigee-service edge-router stop
- Listen Sie die verfügbaren Gateway-Pods in der Organisation mit dem folgenden Befehl auf:
curl -u <AdminEmailID>:<AdminPassword> -X GET "http://{MS_IP}:8080/v1/organizations/{ORG}/pods"
Weitere Informationen finden Sie unter . Informationen zu Pods
- Heben Sie die Registrierung des Servertyps auf:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \ -d "type=router&region=dc-1&pod=gateway-1&uuid=UUID&action=remove"
- Heben Sie die Registrierung des Servers auf:
curl -u <AdminEmailID>:'<AdminPassword>’ -X DELETE http://{MS_IP}:8080/v1/servers/UUID
edge-router
deinstallieren:/opt/apigee/apigee-service/bin/apigee-service edge-router uninstall
Siehe Server entfernen- Leeren Sie die
iptables
-Regeln, um den blockierten Port 15999 zu aktivieren:iptables -F
Message Processor
In diesem Abschnitt wird beschrieben, wie Sie den Message Processor von dc-1 außer Betrieb nehmen. Weitere Informationen finden Sie unter . Einen Server entfernen, um weitere Informationen zum Entfernen des Message Processor zu erhalten.
Da angenommen wird, dass dc-1 12-Knoten Cluster-Installation sind zwei Message Processor-Knoten in dc-1 konfiguriert. Führen Sie die folgenden Befehlen auf beiden Knoten.
- Rufen Sie die UUIDs der Message Processors ab, wie unter UUIDs abrufen
- Stoppen Sie den Message Processor:
apigee-service edge-message-processor stop
- Heben Sie die Registrierung des Servertyps auf:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \ -d "type=message-processor&region=dc-1&pod=gateway-1&uuid=UUID&action=remove"/pre>
- Disassociate an environment from the Message Processor.
Note: You need to remove the bindings on each org/env that associates the Message Processor UUID.
curl -H "Content-Type:application/x-www-form-urlencoded" -u <AdminEmailID>:'
' \ -X POST http://{MS_IP}:8080/v1/organizations/{ORG}/environments/{ENV}/servers \ -d "action=remove&uuid=UUID" - Heben Sie die Registrierung des Servertyps auf:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MS_IP:8080/v1/servers -d "type=message-processor®ion=dc-1&pod=gateway-1&uuid=UUID&action=remove"
- Deinstallieren Sie den Message Processor:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor uninstall
- Heben Sie die Registrierung des Servers auf:
curl -u <AdminEmailID>:'<AdminPassword> -X DELETE http://{MS_IP}:8080/v1/servers/UUID
QPID-Server und Qpidd
In diesem Abschnitt wird erläutert, wie Sie den Qpid-Server (edge-qpid-server
) und Qpidd außer Betrieb nehmen.
(apigee-qpidd
)
In dc-1 sind zwei Qpid-Knoten konfiguriert, sodass Sie die folgenden Schritte für beide ausführen müssen
Knoten:
- Rufen Sie die UUID für Qpidd ab, wie unter Get UUIDs:
edge-qpid-server
undapigee-qpidd
beenden:/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
/opt/apigee/apigee-service/bin/apigee-service apigee-qpidd stop
- Rufen Sie eine Liste mit Analytics- und Nutzergruppen ab:
curl -u <AdminEmailID>:'<AdminPassword>' -X GET http://{MS_IP}:8080/v1/analytics/groups/ax
- Entfernen Sie Qpid aus der Nutzergruppe:
curl -u <AdminEmailID>:'<AdminPassword>' -H "Content-Type: application/json" -X DELETE \ "http://{MS_IP}:8080/v1/analytics/groups/ax/{ax_group}/consumer-groups/{consumer_group}/consumers/{QPID_UUID}"
- Entfernen Sie Qpid aus der Analysegruppe:
curl -v -u <AdminEmailID>:'<AdminPassword>' \ -X DELETE "http://{MS_IP}:8080/v1/analytics/groups/ax/{ax_group}/servers?uuid={QPID_UUID}&type=qpid-server"
- Heben Sie die Registrierung des Qpid-Servers von der Edge-Installation auf:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \ -d "type=qpid-server®ion=dc-1&pod=central&uuid={QPID_UUID}&action=remove"
- Entfernen Sie den Qpid-Server aus der Edge-Installation:
curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
- Starten Sie alle Edge-qpid-server-Komponenten auf allen Knoten neu, um sicherzustellen, dass die Änderung übernommen wird
durch diese Komponenten ermittelt:
$ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart $ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server wait_for_ready
- Deinstallieren Sie Edge-qpid-server und apigee-qpidd:
$ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server uninstall $ /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall
Postgres und Postgresql
Das Rechenzentrum, das Sie außer Betrieb nehmen, könnte einen Postgres-Master oder einen Postgres-Standby-Modus haben. In den folgenden Abschnitten wird die Außerbetriebnahme erläutert:
Postgres-Master außer Betrieb nehmen
Hinweis: Wenn Sie Postgres-Master außer Betrieb nehmen, achten Sie darauf, einen der verfügbaren Standby-Knoten als neuer Postgres-Master. Während QPID Daten in eine Warteschlange stellt, Wenn der Postgres-Master längere Zeit nicht verfügbar ist, besteht die Gefahr, dass Analysedaten verloren gehen.
So nehmen Sie den Postgres-Master außer Betrieb:
- Sichern Sie den Postgres-Masterknoten "dc-1". Folgen Sie dazu der Anleitung unter den folgenden Links: <ph type="x-smartling-placeholder">
- Rufen Sie die UUIDs der Postgres-Server ab, wie in UUIDs abrufen
- Auf dc-1
edge-postgres-server
anhalten undapigee-postgresql
auf der aktuellen Masterinstanz:/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
- Geben Sie auf dem Standby-Knoten auf dc-2 den folgenden Befehl ein, um ihn zum Masterknoten zu machen:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql promote-standby-to-master <IP of OLD Progress master>
Hinweis:Wenn Sie mehr als einen Standby-Postgres-Knoten haben, müssen Sie dem Knoten den neuen Master und aktualisieren Sie die Replikationseinstellung für alle verfügbaren Postgres-Standby-Knoten.
So fügen Sie dem neuen Postgres-Master Hosteinträge hinzu: Folgen Sie den Schritten im entsprechenden Abschnitt. unten:
Wenn nur ein Standby-Knoten übrig ist
Angenommen, vor der Außerbetriebnahme wurden drei Postgres-Knoten konfiguriert. Sie haben den vorhandenen Master außer Betrieb genommen und einen der verbleibenden Postgres-Standby-Instanzen hochgestuft. auf den Masterknoten. Konfigurieren Sie den verbleibenden Standby-Knoten mit den folgenden Schritten:
- Konfiguration auf dem neuen Master bearbeiten
festzulegende Datei:
PG_MASTER=IP_or_DNS_of_new_PG_MASTER PG_STANDBY=IP_or_DNS_of_PG_STANDBY
- Aktivieren Sie die Replikation auf dem neuen Master:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFIle
Wenn mehr als ein Standby-Knoten vorhanden ist
- Fügen Sie die folgende Konfiguration in
/opt/apigee/customer/application/postgresql.properties
:conf_pg_hba_replication.connection=host replication apigee standby_1_ip/32 trust \n host replication apigee standby_2_ip/32 trust
- Achten Sie darauf, dass die Datei /opt/apigee/customer/application/postgresql.properties Eigentum ist
Apigee-Benutzer:
chown apigee:apigee /opt/apigee/customer/application/postgresql.properties
- Starten Sie
apigee-postgresql
neu:apigee-service apigee-postgresql restart
- Konfigurationsdatei
/opt/silent.conf
ändern und aktualisieren Das FeldPG_MASTER
mit der IP-Adresse des neuen Postgres-Masters. - Entfernen Sie alle alten Postgres-Daten mit dem folgenden Befehl:
rm -rf /opt/apigee/data/apigee-postgresql/
- Richten Sie die Replikation auf dem Standby-Knoten ein:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
- Überprüfen Sie, ob der Postgres-Master korrekt eingerichtet ist, indem Sie den folgenden Befehl in dc-2 eingeben:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
- Entfernen Sie Postgresql-Server und fügen Sie sie aus der Analysegruppe und der Nutzergruppe hinzu.
- Entfernen Sie den alten Postgres-Server aus der Analysegruppe gemäß den Anweisungen in <ph type="x-smartling-placeholder"></ph> Postgres-Server aus einer Analysegruppe entfernen
- Fügen Sie der Analysegruppe einen neuen Postgres-Server hinzu. Folgen Sie dazu der Anleitung unter <ph type="x-smartling-placeholder"></ph> Vorhandenen Postgres-Server zu einer Analysegruppe hinzufügen
- Heben Sie die Registrierung des alten Postgres-Servers von dc-1 auf:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \ -d "type=postgres-server®ion=dc-1&pod=analytics&uuid=UUID&action=remove"<
- Löschen Sie den alten Postgres-Server von dc-1:
curl -u >AdminEmailID>:'>AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
- Der alte Postgres-Master kann jetzt sicher außer Betrieb genommen werden.
edge-postgres-server
deinstallieren undapigee-postgresql
:/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server uninstall /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql uninstall
So aktualisieren Sie die Replikationseinstellungen auf einem Standby-Knoten:
Postgres-Standby außer Betrieb nehmen
Hinweis:Die Dokumentation für ein 12-Knoten geclusterte Installation zeigt den dc-1 postgresql-Knoten als Master an. Der Einfachheit halber wird in diesem Abschnitt jedoch davon ausgegangen, dass der dc-1 postgresql-Knoten Standby ist. und der „dc-2 postgresql“-Knoten ist ein Master.
Führen Sie die folgenden Schritte aus, um den Postgres-Standby-Modus außer Betrieb zu nehmen:
- Rufen Sie die UUIDs der Postgres-Server ab. Befolgen Sie dazu die Anweisungen in UUIDs abrufen
- Beenden Sie
apigee-postgresql
auf dem aktuellen Standby-Knoten in dc-1:/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
- Entfernen Sie Postgresql-Server und fügen Sie sie aus der Analysegruppe und der Nutzergruppe hinzu.
- Entfernen Sie den alten Postgres-Server aus der Analysegruppe gemäß den Anweisungen in <ph type="x-smartling-placeholder"></ph> Postgres-Server aus einer Analysegruppe entfernen
- Fügen Sie der Analysegruppe einen neuen Postgres-Server hinzu. Folgen Sie dazu der Anleitung unter <ph type="x-smartling-placeholder"></ph> Vorhandenen Postgres-Server zu einer Analysegruppe hinzufügen
- Heben Sie die Registrierung des alten Postgres-Servers von dc-1 auf:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \ -d "type=postgres-server®ion=dc-1&pod=analytics&uuid=UUID&action=remove"<
- Löschen Sie den alten Postgres-Server von dc-1:
curl -u >AdminEmailID>:'>AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
- Der alte Postgres-Master kann jetzt sicher außer Betrieb genommen werden.
edge-postgres-server
deinstallieren undapigee-postgresql
:/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server uninstall /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql uninstall
ZooKeeper und Cassandra
In diesem Abschnitt wird die Außerbetriebnahme von ZooKeeper- und Cassandra-Servern erläutert. in einer Anlage mit zwei Rechenzentren.
Wenn Sie mehr als zwei in Rechenzentren, achten Sie darauf, alle Verweise auf den Knoten zu entfernen, der außer Betrieb genommen werden soll. (in diesem Fall dc-1) aus allen Konfigurationsdateien im Hintergrund in allen verbleibenden Rechenzentren. Bei Cassandra-Knoten, die außer Betrieb genommen werden sollen, löschen Sie diese Hosts bei
CASS_HOSTS
. Die verbleibenden Cassandra-Knoten sollten die ursprüngliche Reihenfolge vonCASS_HOSTS
beibehalten.Hinweis zu ZooKeeper: Sie müssen ein Quorum von Wählerknoten aufrechterhalten, wenn Sie die
ZK_HOST
-Property in der Konfigurationsdatei ein, damit das ZooKeeper-Ensemble funktioniert. Du musst eine ungerade Zahl haben von Voterknoten in Ihrer Konfiguration. Weitere Informationen finden Sie unter Wartung von Apache ZooKeeper Aufgaben.So nehmen Sie ZooKeeper- und Cassandra-Server außer Betrieb:
- Sichern Sie die dc-1 Cassandra- und ZooKeeper-Knoten, indem Sie den Anweisungen unter den folgenden Links folgen: <ph type="x-smartling-placeholder">
Die UUIDs von ZooKeeper und Cassandra auflisten in dem Rechenzentrum, in dem Cassandra-Knoten sind, für die Außerbetriebnahme bereitgestellt werden.
apigee-adminapi.sh servers list -r dc-1 -p central -t application-datastore --admin <AdminEmailID> --pwd '<AdminPassword>' --host localhost
- Heben Sie die Registrierung des Servertyps auf:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MS_IP:8080/v1/servers -d "type=cache-datastore&type=user-settings-datastore&type=scheduler-datastore&type=audit-datastore&type=apimodel-datastore&type=application-datastore&type=edgenotification-datastore&type=identityzone-datastore&type=user-settings-datastore&type=auth-datastore®ion=dc-1&pod=central&uuid=UUID&action=remove"
- Heben Sie die Registrierung des Servers auf:
curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MS_IP:8080/v1/servers/UUID
- Aktualisieren Sie die Konfigurationsdatei und entfernen Sie die IP-Adressen der außer Betrieb genommenen Knoten aus
ZK_HOSTS
undCASS_HOSTS
.Beispiel: Angenommen, Sie haben die IP-Adressen
$IP1 $IP2 $IP3
in dc-1 und$IP4 $IP5 $IP6
in dc-2 und Sie stellen dc-1 außer Betrieb. Entfernen Sie dann die IP-Adressen$IP1 $IP2 $IP3
aus dem Konfigurationsdateien.- Vorhandene Konfigurationsdateieinträge:
ZK_HOSTS="$IP1 $IP2 $IP3 $IP4 $IP5 $IP6" CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1, $IP4:2,1 $IP5:2,1 $IP6:2,1”
- Neue Einträge in der Konfigurationsdatei:
ZK_HOSTS="$IP4 $IP5 $IP6" CASS_HOSTS="$IP4:2,1 $IP5:2,1 $IP6:2,1"
- Vorhandene Konfigurationsdateieinträge:
- Aktualisieren Sie die in Schritt e geänderte Datei für die stille Konfiguration mit den IP-Adressen der entfernten
außer Betrieb genommene Knoten und Ausführen der Verwaltung
Serverprofil auf allen Knoten, auf denen Verwaltungsserver gehostet werden:
/opt/apigee/apigee-setup/bin/setup.sh -p ms -f updated_config_file
- Aktualisieren Sie die Konfigurationsdatei mit den IP-Adressen der entfernten außer Betrieb genommenen Knoten und führen Sie das MP/RMP-Profil aus
auf allen Router- und Message Processor-Knoten:
<ph type="x-smartling-placeholder">
- </ph>
- Wenn Edge Router und Message Processor auf demselben Knoten konfiguriert sind, geben Sie Folgendes ein:
/opt/apigee/apigee-setup/bin/setup.sh -p rmp -f updated_config_file
Wenn Edge Router und Message Processor auf separaten Knoten konfiguriert sind, geben Sie Folgendes ein:
Für den Router:
/opt/apigee/apigee-setup/bin/setup.sh -p r -f updated_config_file
Für den Message Processor:
/opt/apigee/apigee-setup/bin/setup.sh -p mp -f updated_config_file
- Wenn Edge Router und Message Processor auf demselben Knoten konfiguriert sind, geben Sie Folgendes ein:
- Konfigurieren Sie alle Qpid-Knoten neu und entfernen Sie dabei die IP-Adressen der außer Betrieb genommenen Knoten aus der Antwortdatei:
/opt/apigee/apigee-setup/bin/setup.sh -p qs -f updated_config_file
- Konfigurieren Sie alle Postgres-Knoten neu und entfernen Sie dabei die IP-Adressen der außer Betrieb genommenen Knoten aus der Antwortdatei:
/opt/apigee/apigee-setup/bin/setup.sh -p ps -f updated_config_file
- Schlüsselraum
system_auth
ändern. Wenn Sie Cassandra-Authentifizierung auf einer vorhandenen Cassandra-Knoten: Aktualisieren Sie den Replikationsfaktor des Schlüsselraumssystem_auth
mit dem folgenden Befehl: folgenden Befehl:ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-2': '3'};
Dieser Befehl legt den Replikationsfaktor auf
'3'
fest und gibt drei Cassandra-Knoten an. im Cluster. Ändern Sie diesen Wert nach Bedarf.Nach Abschluss dieses Schritts sollte die Cassandra-Topologie darf in keinem der Schlüsselbereiche
dc-1
enthalten. - Fahren Sie nacheinander die Cassandra-Knoten auf dc-1 außer Betrieb.
Geben Sie den folgenden Befehl ein, um die Cassandra-Knoten außer Betrieb zu nehmen:
/opt/apigee/apigee-cassandra/bin/nodetool -h cassIP -u cassandra -pw '<AdminPassword>' decommission
- Überprüfen Sie die Verbindung der Cassandra-Knoten über dc-1 mit einem der folgenden Befehle:
/opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p '<AdminPassword>'
Oder ein sekundärer Verifizierungsbefehl, der auf dem außer Betrieb genommenen Knoten ausgeführt werden soll:
/opt/apigee/apigee-cassandra/bin/nodetool netstats
Der obige Befehl sollte Folgendes zurückgeben:
Mode: DECOMMISSIONED
- Führen Sie das DS-Profil für alle Cassandra- und ZooKeeper-Knoten in dc-2 aus:
/opt/apigee/apigee-setup/bin/setup.sh -p ds -f updated_config_file
- Stoppen Sie
apigee-cassandra
undapigee-zookeeper
in dc-1:apigee-service apigee-cassandra stop
apigee-service apigee-zookeeper stop
- Deinstallieren Sie
apigee-cassandra
undapigee-zookeeper
in dc-1:apigee-service apigee-cassandra uninstall
apigee-service apigee-zookeeper uninstall
Bindungen aus dc-1 löschen
So löschen Sie die Bindungen aus dc-1:
- Löschen Sie die Bindungen aus dc-1.
- Listen Sie alle verfügbaren Pods unter der Organisation auf:
curl -v -u <AdminEmailID>:<AdminPassword> -X GET "http://MS_IP:8080/v1/o/ORG/pods"
- Um zu prüfen, ob alle Bindungen entfernt wurden, rufen Sie den
Die UUIDs der Server, die mit den Pods verknüpft sind:
curl -v -u <AdminEmailID>:<AdminPassword> \ -X GET "http://MS_IP:8080/v1/regions/dc-1/pods/gateway-1/servers"
Wenn dieser Befehl keine UUIDs zurückgibt, wurden durch die vorherigen Schritte alle Bindungen entfernt. und können den nächsten Schritt überspringen. Andernfalls führen Sie den nächsten Schritt aus.
- Entfernen Sie alle Serverbindungen für die UUIDs, die im vorherigen Schritt abgerufen wurden:
curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MS_IP:8080/v1/servers/UUID
- Trennen Sie die Verknüpfung der Organisation mit dem Pod:
curl -v -u <AdminEmailID>:<AdminPassword> "http://MS_IP:8080/v1/o/ORG/pods" -d "action=remove®ion=dc-1&pod=gateway-1" -H "Content-Type: application/x-www-form-urlencoded" -X POST
- Listen Sie alle verfügbaren Pods unter der Organisation auf:
- Löschen Sie die Pods:
curl -v -u <AdminEmailID>:<AdminPassword> "http://MS_IP:8080/v1/regions/dc-1/pods/gateway-1" -X DELETE
- Löschen Sie die Region.
curl -v -u <AdminEmailID>:<AdminPassword> "http://MS_IP:8080/v1/regions/dc-1" -X DELETE
Hinweis:Wenn Sie einen der Schritte zum Löschen der Server auslassen, wird der oben beschriebene Schritt wird eine Fehlermeldung zurückgegeben, dass ein im Pod noch vorhanden ist. Folgen Sie der Anleitung zur Fehlerbehebung, um sie zu löschen. unten und passen Sie die Typen im Befehl
curl
an.Sie haben die Außerbetriebnahme von dc-1 abgeschlossen.
Anhang
Fehlerbehebung
Wenn nach der Durchführung der vorherigen Schritte noch Server in einigen Pods vorhanden sind, führen Sie die folgenden Schritte aus um die Registrierung der Server aufzuheben und die Server zu löschen. Hinweis: Ändern Sie die Typen und den Pod nach Bedarf.
- Rufen Sie die UUIDs mit dem folgenden Befehl ab:
apigee-adminapi.sh servers list -r dc-1 -p POD -t --admin <AdminEmailID> --pwd '<AdminPassword>’ --host localhost
- Registrierung des Servertyps aufheben:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MP_IP:8080/v1/servers -d "type=TYPE=REGION=dc-1&pod=POD&uuid=UUID&action=remove"
- Löschen Sie die Server einzeln:
curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MP_IP:8080/v1/servers/UUID
Validierung
Sie können die Außerbetriebnahme mit den folgenden Befehlen prüfen.
Verwaltungsserver
Führen Sie auf den Verwaltungsservern in allen Regionen die folgenden Befehle aus.
curl -v -u <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/servers?pod=central®ion=dc-1 curl -v -u <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/servers?pod=gateway®ion=dc-1 curl -v -u <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/servers?pod=analytics®ion=dc-1
Führen Sie den folgenden Befehl für alle Komponenten aus, um die Portanforderungen für die gesamte Verwaltung zu prüfen Ports.
curl -v http://MS_IP:8080/v1/servers/self
Prüfen Sie die Analysegruppe.
curl -v -u <AdminEmailID>:'<AdminPassword>' "http://MS_IP:8080}/v1/o/ORG/e/ENV/provisioning/axstatus" curl -v -u <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/analytics/groups/ax
Cassandra-/ZooKeeper-Knoten
Geben Sie auf allen Cassandra-Knoten Folgendes ein:
/opt/apigee/apigee-cassandra/bin/nodetool -h <host> statusthrift
Daraufhin wird der Status
running
odernot running
für die jeweilige Knoten.Geben Sie auf einem Knoten Folgendes ein:
/opt/apigee/apigee-cassandra/bin/nodetool -h <host> ring
/opt/apigee/apigee-cassandra/bin/nodetool -h <host> status
Die obigen Befehle geben Informationen zu aktiven Rechenzentren zurück.
Bei ZooKeeper-Knoten geben Sie zuerst Folgendes ein:
echo ruok | nc <host> 2181
Dieser Befehl gibt
imok
zurück.Geben Sie als Nächstes Folgendes ein:
echo stat | nc <host> 2181 | grep Mode
Vom obigen Befehl wird einer der folgenden Werte für
Mode
zurückgegeben:observer
,leader
oderfollower
.In einem ZooKeeper-Knoten:
/opt/apigee/apigee-zookeeper/contrib/zk-tree.sh >> /tmp/zk-tree.out.txt
Führen Sie auf dem Postgres-Masterknoten folgenden Befehl aus:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
Prüfen Sie, ob in der Antwort angegeben ist, dass der Knoten der Master ist.
Auf dem Standby-Knoten:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
Prüfen Sie, ob in der Antwort angegeben ist, dass der Knoten der Standby-Knoten ist.
Melden Sie sich mit dem Befehl in der PostgreSQL-Datenbank an
psql -h localhost -d apigee -U postgres
Geben Sie bei Aufforderung "postgres" ein. Nutzerpasswort als
'postgres'
. Wähle in Analyticsmax(client_received_start_timestamp)
aus.”$org.$env.fact” limit 1
;Logs
Prüfen Sie die Protokolle der Komponenten, um sicherzustellen, dass keine Fehler vorliegen.
- Konfiguration auf dem neuen Master bearbeiten
festzulegende Datei: