Apigee mTLS を使用するように複数のデータセンターを構成する

Edge for Private Cloud v4.19.01

Apigee mTLS は複数のデータセンターをサポートしているため、12 ノードクラスタ構成など、より複雑なトポロジを含めるように構成をスケーリングできます。

マルチデータセンター トポロジへの mTLS のインストール プロセスは、より単純なトポロジの場合と同じです。ただし、インストール環境が前提条件を満たしていることを確認し、以降のセクションで説明するように構成ファイルを変更する必要があります。

前提条件

複数のデータセンターで Apigee mTLS を使用するには、次の操作を行う必要があります。

  • apigee-mtls をアンインストールし、マルチデータセンター構成で再インストールします。既存の構成は変更できません。詳細については、既存の apigee-mtls 構成を変更するをご覧ください。
  • mTLS を実行しているすべてのホストでポート 8302 を開きます。
  • mTLS クラスタ全体がフラット ネットワークであることを確認します。そのため、データセンターでは次のようなことが実現されます。
    • 異なるサブネット内には存在できない
    • データセンター間で NAT(ネットワーク アドレス変換)を使用できない
  • 構成ファイルを指定するときに、あいまいさが存在する可能性がある場合は、コマンドで絶対パスを使用します。
  • 複数のデータセンターの構成ファイルの説明に従って、マルチデータセンター構成のプロパティを追加します。

複数のデータセンターの構成ファイル

複数のデータセンターで Apigee mTLS を使用するには、データセンターごとに個別の構成ファイルを作成します。

各構成ファイルで次の操作を行います。

  1. ALL_IP 構成プロパティの値を変更して、すべてのリージョンのすべてのホスト IP アドレスを含めます。
  2. REGION プロパティの値が現在のリージョンまたはデータセンターの名前であることを確認します。例: "dc-1"。
  3. 次のプロパティを追加します。
    プロパティ 説明
    APIGEE_MTLS_MULTI_DC_ENABLE マルチデータセンター構成を使用するかどうか。複数のデータセンターを構成する場合は "y" に設定します。それ以外の場合は、省略するか "n" に設定します。デフォルトは省略されます。
    MTLS_LOCAL_REGION_IP 構成している現在のリージョンで使用されているすべての IP アドレスをスペースで区切ったリスト。例: "10.0.0.1 10.0.0.2 10.0.0.3"。

    構成の 2 番目のリージョンには、MTLP_REMOTE_REGION_1_IP プロパティを使用します。

    MTLS_REMOTE_REGION_1_NAME マルチデータセンター構成の 2 番目のリージョンの名前。例: "dc-2"。

    2 番目のリージョンの構成ファイルでは、REGION に "dc-2 "、MTLS_REMOTE_REGION_1_NAME. に "dc-1 " を使用します。

    MTLS_REMOTE_REGION_1_IP マルチデータセンター構成の 2 番目のリージョンで使用されるすべての IP アドレスをスペースで区切ったリスト。例: "10.0.0.4 10.0.0.5 10.0.0.6"。

次の例は、2 つのデータセンター("dc-1" と "dc-2")の構成ファイルを示しています。以下のとおり、マルチデータセンター構成に固有のプロパティがハイライト表示されています。

dc-1 構成ファイル

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 構成ファイル

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"

標準構成のプロパティについては、ステップ 1: 構成ファイルを更新するをご覧ください。

マルチデータセンター構成をテストする

raft list-peers コマンドは、MTLS_LOCAL_REGION_IP で定義されている IP アドレスのリストを表示します。つまり、これらの IP アドレスは同じデータセンター内にあるものです。

次の例は、raft list-peers コマンドの出力例を示しています。

[ec2-user]# consul operator raft list-peers

Node              ID                Address            State     Voter  RaftProtocol
prc-test-1-2119   d1361917-b244-42  10.126.0.151:8300  leader    true   3
prc-test-0-2119   fad66fc3-22a0-43  10.126.0.155:8300  follower  true   3
prc-test-2-2119   78847b12-dd83-44  10.126.0.159:8300  follower  true   3
prc-test-6-2119   60bb50ac-37b6-52  10.126.0.152:8300  leader    true   3
prc-test-7-2119   515bbdfd-e968-53  10.126.0.147:8300  follower  true   3
prc-test-8-2119   d869c9a5-b4f6-54  10.126.0.158:8300  follower  true   3

Apigee mTLS は 2 つのデータセンターでテストされており、2 つのデータセンターでのみサポートされています。ただし、次のプロパティを使用して最大 8 つのデータセンターの構成を指定できます。

  • MTLS_REMOTE_REGION_[2-8]_IP
  • MTLS_REMOTE_REGION_[2-8]_NAME

前述のように、3 つ以上のデータセンターの構成はサポートされていません。