35.2.2.2. 明示的な接続の設定
この設定では、各 IPSec ノード設定がクラスター内の他のすべてのノードの設定を明示的に一覧表示する必要があります。各ノードで Ansible などの設定管理ツールを使用してこのファイルを生成することが推奨されます。
node-config.yaml
ファイルは手動で変更しないようにしてください。クラスターのノードを変更するには、ノード設定マップ を必要に応じて更新します。
また、この設定では各ノードの完全な証明書サブジェクトをその他のノードの設定に配置する必要があります。
openssl を使用して、このサブジェクトをノードの証明書から読み取ります。
# openssl x509 \ -in /path/to/client-certificate -text | \ grep "Subject:" | \ sed 's/[[:blank:]]*Subject: //'
以下の行を、クラスター内の他のすべてのノードの各ノードの /etc/ipsec.d/openshift-cluster.conf ファイルに配置します。
conn <other_node_hostname> left=<this_node_ip> 1 leftid="CN=<this_node_cert_nickname>" 2 leftrsasigkey=%cert leftcert=<this_node_cert_nickname> 3 right=<other_node_ip> 4 rightid="<other_node_cert_full_subject>" 5 rightrsasigkey=%cert auto=start keyingtries=%forever encapsulation=yes 6
- 1
- <this_node_ip> をこのノードのクラスター IP アドレスに置き換えます。
- 2 3
- <this_node_cert_nickname> を手順 1 のノードの証明書ニックネームに置き換えます。
- 4
- <other_node_ip> を他のノードのクラスター IP アドレスに置き換えます。
- 5
- <other_node_cert_full_subject> を上記の他のノードの証明書に置き換えます。たとえば、"O=system:nodes,CN=openshift-node-45.example.com" のようになります。
- 6
- NAT を使用しない場合は、カプセル化を強制するには、設定に
encapsulation=yes
を含める必要があります。Amazon および Azure 内部クラウドネットワークは、IPsecESP
またはAH
パケットをルーティングしません。これらのパケットはUDP
でカプセル化する必要があり、設定されている場合は、NAT の検出がUDP
のカプセル化でESP
を設定します。NAT を使用する場合、または前述のネットワーク/クラウドプロバイダーの制限を受けていない場合は、このパラメーターと値を省略してください。
以下を各ノードの /etc/ipsec.d/openshift-cluster.secrets ファイルに配置します。
: RSA "<this_node_cert_nickname>" 1
- 1
- <this_node_cert_nickname> を手順 1 のノードの証明書ニックネームに置き換えます。