Apigee mTLS をクラスタ内のすべてのノードにインストールすると、
apigee-mtls コンポーネントを構成して初期化する必要があります。そのためには、生成された
鍵ペアを作成し、証明書と鍵ペアを
管理マシン上の構成ファイルにインポートします。次に、Kubernetes の
同じ生成されたファイルと構成ファイルをクラスタ内のすべてのノードに割り当て、ローカル
apigee-mtls コンポーネント。
apigee-mtls を構成する(初期インストール後)
このセクションでは、Apigee mTLS の構成を 最初のインストール。Deployment の仕様を更新する方法については、 既存のApigee mTLS のインストールについては、既存の apigee-mtls を変更するをご覧ください 構成をご覧ください。
このセクションは、単一のデータセンターへのインストールを対象としています。詳細情報 マルチ データセンター設定での Apigee mTLS の構成について詳しくは、以下をご覧ください。 Apigee mTLS 用に複数のデータセンターを構成する。
apigee-mtls を構成する一般的なプロセスは次のとおりです。
- 構成ファイルを更新する:
    構成ファイルを更新して 
apigee-mtlsを含めます。 設定。 - Consul をインストールして認証情報を生成する: インストール
    Consul と(必要に応じて)TLS 認証情報の生成に使用します(1 回のみ)。
    
さらに、Apigee mTLS 構成ファイルを次のように編集します。
- 認証情報を追加する
 - クラスタのトポロジを定義する
 
既存の認証情報または Consul で生成します。
 - 認証情報と構成ファイルを配布します。 同じ生成された証明書と鍵のペアと更新された構成ファイルをすべてのノードに配布します。 必要があります。
 - apigee-mtls を初期化:
    各ノードに 
apigee-mtlsコンポーネントを配置します。 
それぞれの手順は、次のセクションで説明します。
ステップ 1: 構成ファイルを更新する
このセクションでは、mTLS 構成を含めるために構成ファイルを変更する方法について説明します。 プロパティです。構成ファイルの一般的な詳細については、 構成の作成 。
mTLS 関連のプロパティで構成ファイルを更新したら、構成ファイルを
クラスタ内のすべてのノードを確認してから、apigee-mtls コンポーネントをそれらのノードで初期化します。
説明します。
構成ファイルを更新するには:
- 管理マシンで、構成ファイルを開いて編集します。
 - 次の一連の mTLS 構成プロパティをコピーして、構成に貼り付けます
    ファイル:
    
ALL_IP="ALL_PRIVATE_IPS_IN_CLUSTER" ZK_MTLS_HOSTS="ZOOKEEPER_PRIVATE_IPS" CASS_MTLS_HOSTS="CASSANDRA_PRIVATE_IPS" PG_MTLS_HOSTS="POSTGRES_PRIVATE_IPS" RT_MTLS_HOSTS="ROUTER_PRIVATE_IPS" MS_MTLS_HOSTS="MGMT_SERVER_PRIVATE_IPS" MP_MTLS_HOSTS="MESSAGE_PROCESSOR_PRIVATE_IPS" QP_MTLS_HOSTS="QPID_PRIVATE_IPS" LDAP_MTLS_HOSTS="OPENLDAP_PRIVATE_IPS" MTLS_ENCAPSULATE_LDAP="y" ENABLE_SIDECAR_PROXY="y" ENCRYPT_DATA="BASE64_GOSSIP_MESSAGE" PATH_TO_CA_CERT="PATH/TO/consul-agent-ca.pem" PATH_TO_CA_KEY="PATH/TO/consul-agent-ca-key.pem" APIGEE_MTLS_NUM_DAYS_CERT_VALID_FOR="NUMBER_OF_DAYS"
実際の構成に合わせて、各プロパティの値を設定します。
次の表に、これらの構成プロパティを示します。
プロパティ 説明 ALL_IPクラスタ内のすべてのノードのプライベート ホスト IP アドレスをスペースで区切ったリスト。 IP アドレスの順序は重要ではないが、すべての IP アドレスが同じでなければならない 構成ファイルを管理できます。
複数のデータセンターに Apigee mTLS を構成する場合は、 すべてのホストのすべての IP アドレスにアクセスできます。
LDAP_MTLS_HOSTSクラスタ内の OpenLDAP ノードのプライベート ホスト IP アドレス。 ZK_MTLS_HOSTSZooKeeper ノードがホストされているプライベート ホスト IP アドレスのスペース区切りリスト 構成されます。
なお、要件に基づいて、 少なくとも 3 つの ZooKeeper ノードが必要です。
CASS_MTLS_HOSTSCassandra サーバーがホストされているプライベート ホスト IP アドレスをスペースで区切ったリスト 構成されます。 PG_MTLS_HOSTSPostgres サーバーがホストされているプライベート ホスト IP アドレスをスペースで区切ったリスト 構成されます。 RT_MTLS_HOSTSRouter がホストされているプライベート ホスト IP アドレスをスペースで区切ったリスト 作成します。 MTLS_ENCAPSULATE_LDAPMessage Processor と LDAP サーバー間の LDAP トラフィックを暗号化します。次に設定 y。MS_MTLS_HOSTSManagement Server ノードが存在するプライベート ホスト IP アドレスをスペースで区切ったリスト ホストされます。 MP_MTLS_HOSTSMessage Processor が実行されているプライベート ホスト IP アドレスをスペースで区切ったリスト ホストされます。 QP_MTLS_HOSTSQpid サーバーがホストされているプライベート ホスト IP アドレスをスペースで区切ったリスト 作成します。 ENABLE_SIDECAR_PROXYCassandra と Postgres がサービス メッシュを認識するかどうかを決定します。 この値は「y」に設定する必要があります。
ENCRYPT_DATAConsul が使用する Base64 エンコードの暗号鍵。この鍵は、 ステップ 2: Consul と Terraform のインストールの consul keygenコマンド 認証情報の生成をご覧ください。この値は、クラスタ内のすべてのノードで同じである必要があります。
PATH_TO_CA_CERTノード上の証明書ファイルの場所。このファイルは次の場所に生成されました: ステップ 2: Consul をインストールして認証情報を生成する このロケーションは、クラスタ内のすべてのノードで同じ 同じです。
証明書は X509v3 でエンコードする必要があります。
PATH_TO_CA_KEYノード上の鍵ファイルの場所。このファイルは次の場所に生成されました: ステップ 2: Consul をインストールして認証情報を生成する このロケーションは、クラスタ内のすべてのノードで同じ 同じです。
鍵ファイルは X509v3 でエンコードする必要があります。
APIGEE_MTLS_NUM_DAYS_CERT_VALID_FOR次の場合、証明書の有効な日数 カスタム証明書を生成します。
デフォルト値は 365 です。最大値は 7,865 日(5 年)です。
上記のプロパティに加えて、Apigee mTLS はいくつかの追加プロパティを使用します。 マルチデータセンター構成に インストールすると詳細については、次をご覧ください: 複数のデータセンターを構成する。
 ENABLE_SIDECAR_PROXYが「y」に設定されていることを確認します。- ホスト関連のプロパティで IP アドレスを更新します。必ず
    各ノードを参照する場合は、public IP アドレスではなく、プライベート IP アドレスを使用します。
    制限します。
    
後のステップで、次のような他のプロパティの値を設定します。
ENCRYPT_DATA、PATH_TO_CA_CERT、PATH_TO_CA_KEY。あなたは 値がまだ設定されていません。apigee-mtls構成プロパティを編集する場合は、次の点に注意してください。- プロパティはすべて文字列です。すべてのプロパティの値を double または double でラップする必要があります。 なりません。
 - ホスト関連の値に複数のプライベート IP アドレスがある場合は、各 IP アドレスを区切る できます。
 - ホスト関連のすべてのリソースに、ホスト名やパブリック IP アドレスではなく、プライベート IP アドレスを使用する プロパティを宣言します。
 - プロパティ値の IP アドレスの順序は、すべての 構成ファイルを管理できます。
 
 - 変更を構成ファイルに保存します。
 
ステップ 2: Consul をインストールして認証情報を生成する
このセクションでは、Consul をインストールして、アプリケーションが使用する認証情報を生成する方法について説明します。 コンポーネントが含まれます。
認証情報を生成するには、次のいずれかの方法を選択する必要があります。
- (推奨)Consul を使用して独自の認証局(CA)を作成する。 セクション
 - Apigee mTLS で既存の CA の認証情報を使用する(高度)
 
認証情報について
認証情報は次の要素で構成されます。
- 証明書: TLS 証明書
 - 鍵: TLS 公開鍵
 - Gossip メッセージ: Base64 でエンコードされた暗号鍵
 
これらの各ファイルの 1 つのバージョンを 1 回だけ生成します。次に、その鍵と証明書をコピーして、 構成ファイルを作成し、構成ファイルに暗号鍵を追加して、 すべてのノードにコピーします。
Consul の暗号化の実装の詳細については、以下をご覧ください。
Consul をインストールして認証情報を生成する
Apigee mTLS で使用する認証情報を生成するには、 Private Cloud クラスタ内のノード間のセキュアな通信を認証するには、ローカル Consul バイナリ。その結果 事前に管理マシンに Consul をインストールする必要がある 認証情報を生成できます。
Consul をインストールして mTLS 認証情報を生成するには:
- 管理マシンで、Consul 1.8.0 バイナリを HashiCorp のウェブサイト。
 - ダウンロードしたアーカイブ ファイルの内容を抽出します。たとえば、内容を抽出して、
    
/opt/consul/。 - 管理マシンで、次のコマンドを実行して、新しい認証局(CA)を作成します。
    次のコマンドを実行します。
    
/opt/consul/consul tls ca create
Consul は、証明書と鍵のペアを形成する次のファイルを作成します。
consul-agent-ca.pem(証明書)consul-agent-ca-key.pem(鍵)
デフォルトでは、証明書ファイルと鍵ファイルは X509v3 でエンコードされます。
後で、これらのファイルをクラスタ内のすべてのノードにコピーします。ただし、現時点では ノードのどこにそのファイルを配置するかを決定するだけです。同じ名前にする必要がある ローカルに配置する必要があります。例:
/opt/apigee/ - 構成ファイルで、
PATH_TO_CA_CERTの値を次のロケーションに設定します。 ノード上のconsul-agent-ca.pemファイルをコピーします。次に例を示します。PATH_TO_CA_CERT="/opt/apigee/consul-agent-ca.pem"
 PATH_TO_CA_KEYの値を、コピー先のロケーションに設定します。 ノード上のconsul-agent-ca-key.pemファイル。次に例を示します。PATH_TO_CA_KEY="/opt/apigee/consul-agent-ca-key.pem"
- 次のコマンドを実行して、Consul の暗号鍵を作成します。
    
/opt/consul/consul keygen
Consul は、次のようなランダムな文字列を出力します。
QbhgD+EXAMPLE+Y9u0742X/IqX3X429/x1cIQ+JsQvY=
 - この生成された文字列をコピーし、
ENCRYPT_DATAプロパティの値として設定します。 指定します。次に例を示します。ENCRYPT_DATA="
QbhgD+EXAMPLE+Y9u0742X/IqX3X429/x1cIQ+JsQvY=" - 構成ファイルを保存します。
 
次の例は、構成ファイル内の mTLS 関連の設定を示しています 値):
... IP1=10.126.0.121 IP2=10.126.0.124 IP3=10.126.0.125 IP4=10.126.0.127 IP5=10.126.0.130 ALL_IP="$IP1 $IP2 $IP3 $IP4 $IP5" LDAP_MTLS_HOSTS="$IP3" ZK_MTLS_HOSTS="$IP3 $IP4 $IP5" CASS_MTLS_HOSTS="$IP3 $IP4 $IP5" PG_MTLS_HOSTS="$IP2 $IP1" RT_MTLS_HOSTS="$IP4 $IP5" MS_MTLS_HOSTS="$IP3" MP_MTLS_HOSTS="$IP4 $IP5" QP_MTLS_HOSTS="$IP2 $IP1" ENABLE_SIDECAR_PROXY="y" ENCRYPT_DATA="QbhgD+EXAMPLE+Y9u0742X/IqX3X429/x1cIQ+JsQvY=" PATH_TO_CA_CERT="/opt/apigee/consul-agent-ca.pem" PATH_TO_CA_KEY="/opt/apigee/consul-agent-ca-key.pem" ...
ステップ 3: 構成ファイルと認証情報を配布する
scp などのツールを使用して、次のファイルをすべてのノードにコピーします。
- 構成ファイル: このファイルの更新版をコピーして、 (ZooKeeper を実行しているノードだけでなく)すべてのノードに既存のバージョンが存在することを確認します。
 - consul-agent-ca.pem:
    構成ファイル内の 
PATH_TO_CA_CERT。 - consul-agent-ca-key.pem:
    構成ファイル内の 
PATH_TO_CA_KEY。 
証明書ファイルと鍵ファイルのコピー先が、 ステップ 2: Consul をインストールして生成する 認証情報。
ステップ 4: apigee-mtls を初期化する
各ノードに apigee-mtls をインストールした後、構成ファイルを更新して
認証情報がクラスタ内のすべてのノードにコピーされたら、
各ノード上の apigee-mtls コンポーネント。
apigee-mtls を初期化するには:
- クラスタ内のノードに root ユーザーとしてログインします。以下の手順は、Compute Engine インスタンス内の 指定することもできます。
 apigee:apigeeユーザーを、更新された構成ファイルのオーナーにします。 次の例をご覧ください。chown apigee:apigee config_file
- 次のコマンドを実行して、
apigee-mtlsコンポーネントを構成します。/opt/apigee/apigee-service/bin/apigee-service apigee-mtls setup -f config_file
 - (省略可)次のコマンドを実行して、設定が正常に完了したことを確認します。
    
/opt/apigee/apigee-mtls/lib/actions/iptables.sh validate
 - 次のコマンドを実行して、Apigee mTLS を起動します。
    
/opt/apigee/apigee-service/bin/apigee-service apigee-mtls start
Apigee mTLS をインストールしたら、このコンポーネントを他のコンポーネントより先に起動する必要があります。 ノードに配置されます。
 - (Cassandra ノードのみ)Cassandra がノード内で機能するには、追加の引数が必要です。
    セキュリティ メッシュです。そのため、各 Cassandra ノードで次のコマンドを実行する必要があります。
    
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra setup -f config_file
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart - (Postgres ノードのみ)Postgres が機能するには、追加の引数が必要です。
    セキュリティ メッシュです。そのため、Postgres ノードで次のことを行う必要があります。
    
(メインのみ)
- Postgres プライマリ ノードで次のコマンドを実行します。
        
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup -f config_file
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql configure/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart 
(スタンバイのみ)
- 既存の Postgres データをバックアップします。Apigee mTLS をインストールするには、 プライマリ/スタンバイ ノードが使用されるため、データ損失が発生します。詳細については、次をご覧ください: プライマリ/スタンバイ レプリケーションを Postgres。
 - すべての Postgres データを削除します。
        
rm -rf /opt/apigee/data/apigee-postgresql/pgdata
 - 次の例のように、Postgres を構成してから Postgres を再起動します。
        
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup -f config_file
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql configure/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart 
マルチデータセンター トポロジにインストールする場合は、 構成ファイルが更新されます。
 - Postgres プライマリ ノードで次のコマンドを実行します。
        
 - ノードで残りの Apigee コンポーネントを起動します。
    start order:
    次の例をご覧ください。
    
/opt/apigee/apigee-service/bin/apigee-service component_name start
 - クラスタ内のノードごとにこの手順を繰り返します。
 - (省略可)以下を使用して 
apigee-mtlsの初期化が成功したことを確認する または複数のメソッドを使用できます。 <ph type="x-smartling-placeholder">- </ph>
      
 - iptables の構成を検証する
 - リモート プロキシのステータスを確認する
 - クォーラムのステータスを確認する
 
これらの各方法については、 構成します。
 
既存の apigee-mtls 構成を変更する
既存の apigee-mtls 構成をカスタマイズするには、アンインストールして
apigee-mtls を再インストールします。また、このカスタマイズをすべての
説明します。
既存の Apigee mTLS 構成を変更するときに、この点を繰り返すと、次のようになります。
- 構成ファイルを変更する場合は、まず 
apigee-mtlsをアンインストールし、setupまたはconfigureを再実行します。# DO THIS:
/opt/apigee/apigee-service/bin/apigee-service apigee-mtls uninstall# BEFORE YOU DO THIS:/opt/apigee/apigee-service/bin/apigee-service apigee-mtls setup -f fileOR/opt/apigee/apigee-service/bin/apigee-service apigee-mtls configure - クラスタ内のすべてのノードで、
setupまたはconfigureをアンインストールして再実行する必要があります。 単一ノードではなくクラスタです