Mehrere Rechenzentren für Apigee mTLS konfigurieren

Apigee mTLS unterstützt mehrere Rechenzentren, sodass Sie Ihre Konfiguration auf komplexere Topologien wie eine 12-Knoten-Clusterinstallation skalieren können.

Der Installationsprozess für mTLS in einer Multi-Datacenter-Topologie ist derselbe wie bei einfacheren Topologien. Sie müssen jedoch dafür sorgen, dass Ihre Installation die Voraussetzungen erfüllt, und Ihre Konfigurationsdateien wie in den folgenden Abschnitten beschrieben ändern.

Vorbereitung

Wenn Sie Apigee mTLS mit mehreren Rechenzentren verwenden möchten, müssen Sie Folgendes tun:

  • Deinstallieren Sie apigee-mtls und installieren Sie es mit der Konfiguration für mehrere Rechenzentren neu. Eine vorhandene Konfiguration kann nicht geändert werden. Weitere Informationen finden Sie unter Vorhandene apigee-mtls-Konfiguration ändern.
  • Öffnen Sie Port 8302 auf jedem Host, auf dem mTLS ausgeführt wird.
  • Alle mTLS-Clustermitglieder müssen eindeutige IP-Adressen haben, die für alle Mitglieder des Clusters gleich sind.
  • Verwenden Sie bei der Angabe von Konfigurationsdateien absolute Pfade in Ihren Befehlen, wenn es zu Unklarheiten kommen kann.
  • Fügen Sie Konfigurationseigenschaften für mehrere Rechenzentren hinzu, wie unter Konfigurationsdateien für mehrere Rechenzentren beschrieben.

Konfigurationsdateien für mehrere Rechenzentren

Wenn Sie Apigee mTLS mit mehreren Rechenzentren verwenden möchten, erstellen Sie für jedes Rechenzentrum eine separate Konfigurationsdatei.

In jeder Konfigurationsdatei:

  1. Ändern Sie den Wert der Konfigurationseigenschaft ALL_IP so, dass alle Host-IP-Adressen in allen Regionen enthalten sind.
  2. Der Wert der Property REGION muss der Name der aktuellen Region oder des aktuellen Rechenzentrums sein. Beispiel: „dc-1“.
  3. Fügen Sie die folgenden Properties hinzu:
    Attribut Beschreibung
    APIGEE_MTLS_MULTI_DC_ENABLE Ob Sie eine Multi-Rechenzentrumskonfiguration verwenden. Legen Sie „y“ fest, wenn Sie mehrere Rechenzentren konfigurieren. Andernfalls lassen Sie das Argument weg oder setzen Sie es auf „n“. Der Standardwert wird weggelassen.
    MTLS_LOCAL_REGION_IP Eine durch Leerzeichen getrennte Liste aller IP-Adressen, die von der aktuellen Region verwendet werden, die Sie konfigurieren. Beispiel: „10.0.0.1 10.0.0.2 10.0.0.3“.

    Verwenden Sie für die zweite Region in der Konfiguration das Attribut MTLP_REMOTE_REGION_1_IP.

    MTLS_REMOTE_REGION_1_NAME Der Name der zweiten Region in einer Konfiguration mit mehreren Rechenzentren. Beispiel: „dc-2“.

    In der Konfigurationsdatei der zweiten Region verwenden Sie „dc-2“ für REGION und „dc-1“ für MTLS_REMOTE_REGION_1_NAME..

    MTLS_REMOTE_REGION_1_IP Eine durch Leerzeichen getrennte Liste aller IP-Adressen, die von der zweiten Region in einer Multi-Datacenter-Konfiguration verwendet werden. Beispiel: „10.0.0.4 10.0.0.5 10.0.0.6“.

Die folgenden Beispiele zeigen die Konfigurationsdateien für zwei Rechenzentren („dc-1“ und „dc-2“). Für eine Konfiguration mit mehreren Rechenzentren spezifische Eigenschaften sind hervorgehoben:

dc-1-Konfigurationsdatei

ALL_IP="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.132 10.126.0.133 10.126.0.104 10.126.0.106 10.126.0.105 10.126.0.95 10.126.0.102 10.126.0.100 10.126.0.112"
LDAP_MTLS_HOSTS="10.126.0.114 10.126.0.106"
ZK_MTLS_HOSTS="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.106 10.126.0.105 10.126.0.95"
CASS_MTLS_HOSTS="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.106 10.126.0.105 10.126.0.95"
PG_MTLS_HOSTS="10.126.0.104 10.126.0.112"
RT_MTLS_HOSTS="10.126.0.113 10.126.0.96 10.126.0.105 10.126.0.95"
MS_MTLS_HOSTS="10.126.0.114 10.126.0.106"
MP_MTLS_HOSTS="10.126.0.113 10.126.0.96 10.126.0.105 10.126.0.95"
QP_MTLS_HOSTS="10.126.0.132 10.126.0.133 10.126.0.102 10.126.0.100"
ENABLE_SIDECAR_PROXY="y"
ENCRYPT_DATA="zRNQ9lhRySNTfegiLLLfIQ=="
PATH_TO_CA_CERT="/opt/consul-agent-ca.pem"
PATH_TO_CA_KEY="/opt/consul-agent-ca-key.pem"

APIGEE_MTLS_MULTI_DC_ENABLE="y"
REGION="dc-1"
MTLS_LOCAL_REGION_IP="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.132 10.126.0.133 10.126.0.104"
MTLS_REMOTE_REGION_1_NAME="dc-2"
MTLS_REMOTE_REGION_1_IP="10.126.0.106 10.126.0.105 10.126.0.95 10.126.0.102 10.126.0.100 10.126.0.112"

dc-2-Konfigurationsdatei

ALL_IP="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.132 10.126.0.133 10.126.0.104 10.126.0.106 10.126.0.105 10.126.0.95 10.126.0.102 10.126.0.100 10.126.0.112"
LDAP_MTLS_HOSTS="10.126.0.114 10.126.0.106"
ZK_MTLS_HOSTS="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.106 10.126.0.105 10.126.0.95"
CASS_MTLS_HOSTS="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.106 10.126.0.105 10.126.0.95"
PG_MTLS_HOSTS="10.126.0.104 10.126.0.112"
RT_MTLS_HOSTS="10.126.0.113 10.126.0.96 10.126.0.105 10.126.0.95"
MS_MTLS_HOSTS="10.126.0.114 10.126.0.106"
MP_MTLS_HOSTS="10.126.0.113 10.126.0.96 10.126.0.105 10.126.0.95"
QP_MTLS_HOSTS="10.126.0.132 10.126.0.133 10.126.0.102 10.126.0.100"
ENABLE_SIDECAR_PROXY="y"
ENCRYPT_DATA="zRNQ9lhRySNTfegiLLLfIQ=="
PATH_TO_CA_CERT="/opt/consul-agent-ca.pem"
PATH_TO_CA_KEY="/opt/consul-agent-ca-key.pem"

APIGEE_MTLS_MULTI_DC_ENABLE="y"
REGION="dc-2"
MTLS_LOCAL_REGION_IP="10.126.0.106 10.126.0.105 10.126.0.95 10.126.0.102 10.126.0.100 10.126.0.112"
MTLS_REMOTE_REGION_1_NAME="dc-1"
MTLS_REMOTE_REGION_1_IP="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.132 10.126.0.133 10.126.0.104"

Informationen zu den Standardkonfigurationseigenschaften finden Sie unter Schritt 1: Konfigurationsdatei aktualisieren.

Konfiguration mit mehreren Rechenzentren testen

Der Befehl raft list-peers zeigt eine Liste der IP-Adressen an, die mit allen ZooKeeper-Knoten (ZK) verknüpft sind, auf denen ein Consul-Prozess ausgeführt wird, wie vom Prozess consul agent auf dem Server angegeben. Diese Peers sind nicht auf ein einzelnes Rechenzentrum beschränkt, sondern umfassen alle Rechenzentren in der Konfiguration.

Die folgenden Beispiele zeigen die Beispielausgabe eines raft list-peers-Befehls für eine mTLS-kompatible Einrichtung mit zwei DCs:

$ /opt/apigee/apigee-mtls-consul/bin/consul operator raft list-peers
Node              ID                                    Address            State     Voter  RaftProtocol
prc-test-2-20036  0f30e0fc-a33b-2cf9-91fc-3dd0c02711c7  10.126.0.116:8300  leader    true   3
prc-test-0-20036  9b00b259-5848-c72b-623e-7991ea1a5d1c  10.126.0.121:8300  follower  true   3
prc-test-1-20036  e92cd7b3-e2f2-30a1-2b06-c434160372f5  10.126.0.122:8300  follower  true   3
prc-test-6-20036  b196a6a1-2813-49d6-e141-b4f0cce19383  10.126.0.118:8300  follower  true   3
prc-test-7-20036  3708ca5f-a17f-a31e-42ed-bb1f92b1506c  10.126.0.120:8300  follower  true   3
prc-test-8-20036  ed7f1658-ea4b-abec-148b-427203d4200c  10.126.0.115:8300  follower  true   3

Damit Sie Fehler beheben oder die raft list-peers-Ausgabe prüfen können, muss der consul agent-Prozess auf allen ZK-Knoten ausgeführt werden. Sie können dies mit dem folgenden Befehl prüfen:

$ ps -elf
4 S consul     77903       1  3  80   0 - 382742 -     Jan13 ?        00:41:10 /opt/apigee/apigee-mtls-consul/bin/consul agent -config-file=/opt/apigee/apigee-mtls-4.52.02-0.0.20256/conf/server.json

Mit diesem Befehl wird geprüft, ob der Consul-Prozess auf jedem Knoten in der Multi-Datacenter-Umgebung aktiv und richtig konfiguriert ist.