Edge for Private Cloud v4.18.01
Sie können API BaaS in mehreren Rechenzentren mit einem Aktiv/Aktiv- Konfiguration. In diesem Dokument wird beschrieben, wie Sie vorhandenen BaaS-Daten ein BaaS-Rechenzentrum hinzufügen können in der Mitte.
Das Hinzufügen eines Rechenzentrums Cassandra-Cluster wird mit Edge gemeinsam genutzt
Alle Rechenzentren müssen die gleiche Anzahl von Cassandra-Knoten haben. Eine API-BaaS-Installation kann einen eigenen Cassandra-Cluster verwenden oder einen Cassandra-Cluster mit Edge teilen.
Wenn die BaaS-Installation einen Cassandra-Cluster mit Edge teilt, müssen Sie die Management Server im ursprünglichen Rechenzentrum, um ihn so zu konfigurieren, dass er die Cassandra-Knoten in in das neue Rechenzentrum.
Bestehendes Rechenzentrum aktualisieren
Um ein neues BaaS-Rechenzentrum (Rechenzentrum 2) hinzuzufügen, müssen Sie die Schritte zur Installation und das neue Rechenzentrum zu konfigurieren, erfordert aber auch die Aktualisierung des ursprünglichen BaaS-Rechenzentrums. (Rechenzentrum 1) . Diese Änderungen sind aus folgenden Gründen erforderlich:
- Sie fügen dem neuen Rechenzentrum neue Cassandra-Knoten hinzu, die für die vorhandenen Rechenzentrums arbeiten.
- Sie müssen die von den BaaS-Stack-Knoten in Daten verwendeten Replikationsinformationen konfigurieren um Informationen aus Rechenzentrum 2 einzubeziehen. Sie können diese Konfiguration erst durchführen, Rechenzentrum 2 installiert ist.
Um diese Aktualisierungen im Rechenzentrum 1 durchzuführen, aktualisieren Sie die ursprüngliche Konfigurationsdatei, die für Installieren Sie Data Center 1 und führen Sie dann apigee-setup noch einmal auf den Cassandra-Datenknoten aus Zentrum 1. Wenn der Cassandra-Cluster für Rechenzentrum 1 von einer Edge-Installation gemeinsam genutzt wird, dann müssen Sie auch den Verwaltungsserver aktualisieren.
Konfigurationsdateien erstellen
Verwenden Sie für die Installation von Data Center 1 die unter API-BaaS-Installation gezeigte Konfiguration. Die Konfigurationsdatei muss bei der Installation des Rechenzentrums keine Informationen über Rechenzentrum 2 angeben. 1.Sie fügen der Konfigurationsdatei Informationen hinzu, nachdem Sie Data Center 2 installiert haben.
Im Folgenden sehen Sie die Konfigurationsdateien für Rechenzentrum 2. Diese Konfigurationsdatei setzt voraus, dc-2 auf 10 Knoten installieren, wie unter Installationstopologien beschrieben. Passen Sie diese Datei entsprechend an, wenn Sie werden auf 7 Knoten installiert.
Beachten Sie, dass die Konfigurationsdatei für Rechenzentrum 2 (dc-2) Informationen über Rechenzentrum 1 enthält. (dc-1):
# Specify IP address or DNS name of node for dc-2. IP1=192.168.1.1 # ElasticSearch IP2=192.168.1.2 # ElasticSearch IP3=192.168.1.3 # ElasticSearch IP4=192.168.1.4 # API BaaS Stack IP5=192.168.1.5 # API BaaS Stack IP6=192.168.1.6 # API BaaS Stack IP7=192.168.1.7 # API BaaS Portal IP8=192.168.1.8 # Cassandra dc-2 (shared with Edge or standalone) IP9=192.168.1.9 # Cassandra dc-2 (shared with Edge or standalone) IP10=192.168.1.10 # Cassandra dc-2 (shared with Edge or standalone) # Specify node information for dc-1 IP11=192.168.1.11 # Cassandra dc-1 (shared with Edge or standalone) IP12=192.168.1.12 # Cassandra dc-1 (shared with Edge or standalone) IP13=192.168.1.13 # Cassandra dc-1 (shared with Edge or standalone) IP14=192.168.1.14 # API BaaS Stack IP15=192.168.1.15 # API BaaS Stack # Must resolve to IP address or DNS name of host - not to 127.0.0.1 or localhost. HOSTIP=$(hostname -i) # Define the API BaaS administrator account. AS_ADMIN="superuser" # User name - default is "superuser". AS_ADMIN_EMAIL=stackAdmin@email.com AS_PASSWD=stackAdminPWord # Specify Cassandra data center and rack suffix. # List dc-2 nodes first, then dc-1. # Must use IP addresses for CASS_HOSTS, not DNS names. # CASS_HOSTS="$IP8:2,1 $IP9:2,1 $IP10:2,1 $IP11:1,1 $IP12:1,1 $IP13:1,1" # Specify the Cassandra region. REGION=dc-2 # Cassandra uname/pword. # Even if Cassandra authentication is disabled, # you must still pass values for these properties. CASS_USERNAME=cassandra # Default value CASS_PASSWORD=cassandra # Default value # Specify BaaS Cassandra connection information. # Specify the data center name as dc-2. BAAS_CASS_LOCALDC=dc-2 # Specify both data centers. BAAS_CASS_DC_LIST=dc-1,dc-2 # Replication is in the form "dataCenterName:#CassandraNodes". # Specify both data centers. BAAS_CASS_REPLICATION=dc-1:3,dc-2:3 # Defines the initial contact points for members of the BaaS cluster. # Specify the IP address of no more than two Stack nodes per data center. # Specify both data centers. BAAS_CLUSTER_SEEDS="dc-1:$IP14,dc-1:$IP15,dc-2:$IP4,dc-2:$IP5" # ElasticSearch IPs or DNS names, separated by spaces, for dc-2. ES_HOSTS="$IP1 $IP2 $IP3" # API BaaS Stack information. # Default cluster name is "apigee_baas" BAAS_USERGRID_CLUSTERNAME="apigee_baas" # URL and port of the load balancer for the API BaaS Stack nodes, # or IP/DNS and port 8080 of a single Stack node with no load balancer. BAAS_USERGRID_URL=http://myloadbalancer:8443 # API BaaS Portal information. # URL and port number of load balancer, if there is one in front of the Portal, # or the URL and port of the Portal node. BAAS_PORTAL_URL="http://$IP7:9000" # Portal port. Default value is 9000. BAAS_PORTAL_LISTEN_PORT=9000 # SMTP information. BaaS requires an SMTP server. SMTPHOST=smtp.gmail.com SMTPPORT=465 SMTPUSER=your@email.com SMTPPASSWORD=yourEmailPassword SMTPSSL=y SMTPMAILFROM="My Company <myco@company.com>"
BaaS-Rechenzentrum hinzufügen
- Installieren Sie das erste Rechenzentrum, wie unter API-BaaS-Installation beschrieben. Dieses Dokument enthält die Konfigurationsdatei, mit der Sie Data Center 1 installieren.
- Erstellen Sie die Konfigurationsdatei für dc-2 wie oben beschrieben.
- Installieren Sie Cassandra, entweder als Teil einer vorhandenen Edge-Installation oder als eigenständige Version
Cluster für BaaS:
<ph type="x-smartling-placeholder">
- </ph>
- Installieren Sie das Edge-Dienstprogramm apigee-setup auf dem ersten Cassandra-Knoten von dc-2, Maschine 8, per Internet oder Nicht-Internet. Weitere Informationen finden Sie unter Installieren Sie das Edge-Apigee-Setup .
- Führen Sie in der Eingabeaufforderung das Setupskript aus, um Cassandra auf dem ersten Knoten zu installieren:
> /opt/apigee/apigee-setup/bin/setup.sh -p c -f configFile
Die Option „-p c“ gibt an, dass Cassandra installiert werden soll.
Die Konfigurationsdatei muss vom „Apigee“ zugänglich oder lesbar sein Nutzer. - Wiederholen Sie die Schritte 3 und 4 für die verbleibenden Cassandra-Knoten, Rechner 9 und 10, in dc-2 enthalten.
- Bearbeiten Sie die Konfigurationsdatei auf den Cassandra-Knoten von dc-1, um die Cassandra-Knoten aus
Rechenzentrum 2, je nachdem, wie Sie Cassandra installiert haben:
# Zuerst dc-1-Knoten auflisten, dann dc-2,
Anzahl einschließlich Cassandra-Rechenzentrum und Rack-Suffix
CASS_HOSTS="$IP11:1,1 $IP12:1,1 $IP13:1,1 $IP8:2,1 $IP9:2,1 $IP10:2,1" - Führen Sie auf dem ersten Cassandra-Knoten von dc-1 "setup.sh" mit der neuen dc-1-Konfigurationsdatei aus,
enthält die Cassandra-Knoten aus dc-2:
> /opt/apigee/apigee-setup/bin/setup.sh -p c -f configFile - Wiederholen Sie die Schritte 6 und 7 für die verbleibenden Cassandra-Knoten in dc-1.
- Wenn Sie eine Verbindung zu einem Cassandra-Cluster für dc-1 herstellen, der für Edge freigegeben ist,
Fügen Sie der Konfigurationsdatei für den Verwaltungsserver-Knoten von dc-1 die dc-2-Cassandra-Knoten hinzu und führen Sie
setup.sh:
> /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile - Aktualisieren Sie die Cassandra-Schlüsselbereiche mit dem richtigen Replikationsfaktor für die beiden Rechenzentren. Ich
Dieser Schritt muss nur einmal auf einem Cassandra-Server in einem der Rechenzentren ausgeführt werden:
Hinweis: Mit den folgenden Befehlen wird der Replikationsfaktor auf „3“ gesetzt. drei Cassandra-Knoten im Cluster. Ändern Sie diesen Wert nach Bedarf für Ihre Installation.- Starten Sie das Cassandra-Dienstprogramm cqlsh:
> /opt/apigee/apigee-cassandra/bin/cqlsh cassandraIP - Führen Sie die folgenden CQL-Befehle unter „cqlsh>“ aus. Aufforderung zum Festlegen der Replikation
Ebenen für Cassandra-Schlüsselbereiche:
<ph type="x-smartling-placeholder">
- </ph>
- cqlsh> ALTER KEYSPACE "Apigee_Baas_dc_1" WITH Replikation = { 'class': 'NetworkTopologyStrategy', 'dc-1': '3','dc-2': '3' };
- cqlsh> ALTER KEYSPACE "Apigee_Baas" WITH Replikation = { 'class': 'NetworkTopologyStrategy', 'dc-1': '3','dc-2': '3' };
- cqlsh> ALTER KEYSPACE "Apigee_Baas_Locks" WITH Replikation = { 'class': 'NetworkTopologyStrategy', 'dc-1': '3','dc-2': '3' };
- cqlsh> ALTER-KEYSPACE „system_traces“ WITH Replikation = { 'class': 'NetworkTopologyStrategy', 'dc-1': '3','dc-2': '3' };
- cqlsh> ALTER KEYSPACE "system_auth" WITH Replikation = { 'class': 'NetworkTopologyStrategy', 'dc-1': '3','dc-2': '3' };
- Sehen Sie sich die Schlüsselbereiche mit dem folgenden Befehl an:
cqlsh> auswählen * aus system.schema_keyspaces; - Beenden Sie „cqlsh“:
cqlsh> exit
- Starten Sie das Cassandra-Dienstprogramm cqlsh:
- Führen Sie auf allen Cassandra-Knoten in dc-2 den Befehl "rebuild" aus und geben Sie dabei den Namen der Region an:
dc-1:
> /opt/apigee/apigee-cassandra/bin/nodetool -h cassandraIP Rebuild dc-1 - "nodetool status" ausführen auf jedem Cassandra-Knoten ein
und prüfen Sie, ob alle Cassandra-Knoten
„100 %“ für den Wert „Eigene“:
> /opt/apigee/apigee-cassandra/bin/nodetool-Status - Installieren Sie BaaS in dc-2:
<ph type="x-smartling-placeholder">
- </ph>
- Bearbeiten Sie die Konfigurationsdatei so, dass nur die Cassandra-Knoten in dc-2 aufgelistet werden:
# dc-2 Cassandra-Knoten auflisten,
# Auslassung von Cassandra-Rechenzentrum und Rack-Suffix
CASS_HOSTS="$IP8 $IP9 $IP10" - Installieren Sie ElasticSearch auf den Knoten 4, 5 und 6 von dc-2:
> /opt/apigee/apigee-setup/bin/setup.sh -p e -f configFile - Installieren Sie den BaaS-Stack auf den Knoten 4, 5 und 6 von dc-2:
> /opt/apigee/apigee-setup/bin/setup.sh -p b -f configFile - Installieren Sie das BaaS-Portal auf Maschine 7:
> /opt/apigee/apigee-setup/bin/setup.sh -p p -f configFile
- Bearbeiten Sie die Konfigurationsdatei so, dass nur die Cassandra-Knoten in dc-2 aufgelistet werden:
- BaaS-Stack-Knoten im Rechenzentrum 1 aktualisieren:
<ph type="x-smartling-placeholder">
- </ph>
- Bearbeiten Sie auf dem ersten BaaS-Stack-Knoten im Rechenzentrum 1 /opt/apigee/customer/application/usergrid.properties. in einem Editor. Wenn die Datei nicht vorhanden ist, erstellen Sie sie.
- Fügen Sie usergrid.properties die folgenden Eigenschaften hinzu:
# Identischer Wert wie BAAS_CLUSTER_SEEDS in der dc-2-Konfigurationsdatei,
# ohne doppelte Anführungszeichen.
usergrid-deployment_usergrid.cluster.seeds=dc-1:dc1StackIP1,dc-1:dc1StackIP2,dc-2:dc2StackIP1,dc-2:dc2StackIP2
# Identischer Wert wie BAAS_CASS_DC_LIST in der dc-2-Konfigurationsdatei.
usergrid-deployment_usergrid.cluster.region.list=dc-1,dc-2 - Wiederholen Sie die Schritte a und b auf den verbleibenden BaaS-Stack-Knoten.
- Starten Sie alle BaaS-Stack-Knoten neu.
Hinweis: Wenn Sie BaaS-Stack-Knoten neu starten, starten Sie sie im selben Ordner wie Reihenfolge, dass sie in BAAS_CLUSTER_SEEDS aufgelistet sind. BAAS_CLUSTER_SEEDS-Listen in zwei Stack-Knoten. Nach dem Neustart dieser beiden Knoten können Sie den verbleibenden Knoten in beliebiger Reihenfolge.
> /opt/apigee/apigee-service/bin/apigee-service baas-usergrid Neustart
- Aktualisiert die BaaS-Schlüsselraumwerte. Dieser Schlüsselraum muss bei der Installation
für die Replikation festgelegt werden,
müssen aber nicht
zur Laufzeit erfolgen. Durch das Entfernen der Replikation wird auch Cassandra-Arbeitsspeicher gespart.
Sie müssen diesen Schritt nur einmal auf einem Cassandra-Server in einem der Rechenzentren ausführen: <ph type="x-smartling-placeholder">- </ph>
- Starten Sie das Cassandra-Dienstprogramm cqlsh:
> /opt/apigee/apigee-cassandra/bin/cqlsh cassandraIP - Führen Sie die folgenden CQL-Befehle aus, um die Replikationsstufen für Cassandra festzulegen
Schlüsselbereiche:
<ph type="x-smartling-placeholder">
- </ph>
- cqlsh> ALTER-KEYSPACE "Apigee_Baas_dc_1" WITH Replikation = { 'class': 'NetworkTopologyStrategy', 'dc-1': '3' };
- cqlsh> ALTER-KEYSPACE "Apigee_Baas_dc_2" WITH Replikation = { 'class': 'NetworkTopologyStrategy', 'dc-2': '3' };
- Sehen Sie sich die Schlüsselbereiche mit dem folgenden Befehl an:
cqlsh> Auswählen * aus system.schema_keyspaces; - Beenden Sie „cqlsh“:
cqlsh> beenden
- Starten Sie das Cassandra-Dienstprogramm cqlsh:
Die Installation des zweiten Rechenzentrums ist jetzt abgeschlossen.
Nachdem Sie die Installation und Konfiguration der beiden Rechenzentren abgeschlossen haben, können Sie Validieren Sie die Installation folgendermaßen:
- Prüfen Sie auf allen BaaS-Stack-Knoten den Status:
> curl 0:8080/Status - Prüfen Sie, ob der Token-API-Aufruf funktioniert:
> curl -X POST- "http://localhost:8080/management/token" -d '{"grant_type":"password", "username":"adminEmail","password":"pWord"}' - Versuchen Sie, sich im BaaS-Portal für dc-2 anzumelden. Vergewissern Sie sich, dass alle Daten in dc-2 repliziert werden. wie z. B. auf dc-1 erstellte Sammlungen.