SSH 鍵の代わりにパスワードを使用して、IBM® Cloud Private クラスター内のホスト間のセキュア接続を可能にします。
IBM Cloud Private クラスターをインストールする前に、ノード間の認証を構成する必要があります。
注: /<installation_directory>/cluster/config.yaml ファイルまたは /<installation_directory>/cluster/hosts ファイルのいずれかを使用することによって、各ノードでユーザーのパスワード認証を構成できます。 両方のファイルを使用してパスワード認証を構成しないでください。
root ユーザー、または root 権限を持つユーザー名のパスワードを指定する必要があります。
各ノードでパスワードを指定せずに認証を構成するには、ブート・ノードで SSH 鍵ペアを生成し、その鍵を他のクラスター・ノードと共有します。 クラスター・ノードでの SSH 鍵の共有を参照してください。
同じパスワードを持つノードに対してのみ、config.yaml ファイルを使用してパスワード認証を設定できます。 各ノードのパスワードが異なっている場合は、hosts ファイルを使用してパスワード認証を設定してください。
ユース・ケースに応じた構成パラメーターを /<installation_directory>/cluster/config.yaml ファイルに追加します。
| ユーザー・タイプ | 構成パラメーター |
|---|---|
| root |
ansible_user: root
ansible_ssh_pass: SHARED_PASSWORD
ansible_ssh_common_args: "-oPubkeyAuthentication=no"
ここで SHARED_PASSWORDは、各 root ユーザーのパスワードです。 |
| 非 root |
ansible_user: non_root
ansible_ssh_pass: SHARED_PASSWORD
ansible_become: true
ansible_become_password: "{{ ansible_ssh_pass }}"
ansible_ssh_common_args: "-oPubkeyAuthentication=no"
ここで SHARED_PASSWORDは、各ユーザーのパスワードです。 |
hosts ファイルを使用したパスワード認証の構成パスワードが同じノードまたは異なっているノードに対して、hosts ファイルを使用してパスワード認証を設定できます。
ユース・ケースに応じた構成パラメーターを /<installation_directory>/cluster/hosts ファイルに追加します。
root ユーザーの場合、以下のコードで示されているように、各 IP アドレスを、そのノード上の root ユーザーに関する ansible_user パラメーター、ansible_ssh_pass パラメーター、ansible_ssh_common_args パラメーター、およびオプションの ansible_port パラメーターと共に付加します。
[master]
<master_node_IP_address> ansible_user="root" ansible_ssh_pass="<NODE_PASSWORD>" ansible_ssh_common_args="-oPubkeyAuthentication=no" ansible_port="<PORT_VALUE>"
[worker]
<worker_node_IP_address> ansible_user="root" ansible_ssh_pass="<NODE_PASSWORD>" ansible_ssh_common_args="-oPubkeyAuthentication=no" ansible_port="<PORT_VALUE>"
[proxy]
<proxy_node_IP_address> ansible_user="root" ansible_ssh_pass="<NODE_PASSWORD>" ansible_ssh_common_args="-oPubkeyAuthentication=no" ansible_port="<PORT_VALUE>"
[management]
<management_node_IP_address> ansible_user="root" ansible_ssh_pass="<NODE_PASSWORD>" ansible_ssh_common_args="-oPubkeyAuthentication=no" ansible_port="<PORT_VALUE>"
[va]
<va_node_IP_address> ansible_user="root" ansible_ssh_pass="<NODE_PASSWORD>" ansible_ssh_common_args="-oPubkeyAuthentication=no" ansible_port="<PORT_VALUE>"
ここで、<NODE_PASSWORD> は当該ノード上の root ユーザーのパスワードであり、<PORT_VALUE> はカスタマイズした SSH ポートです。
非 root ユーザーの場合、以下のコードで示されているように、各 IP アドレスを、ansible_user パラメーター、ansible_ssh_pass パラメーター、ansible_ssh_common_args パラメーター、ansible_become パラメーター、ansible_become_password パラメーター、およびオプションの
ansible_port パラメーターと共に付加します。
[master]
<master_node_IP_address> ansible_user="<USER>" ansible_ssh_pass="<NODE_PASSWORD>" ansible_become=true ansible_become_password="<NODE_PASSWORD>" ansible_port="<PORT_VALUE>" ansible_ssh_common_args="-oPubkeyAuthentication=no"
[worker]
<worker_node_IP_address> ansible_user="<USER>" ansible_ssh_pass="<NODE_PASSWORD>" ansible_become=true ansible_become_password="<NODE_PASSWORD>" ansible_port="<PORT_VALUE>" ansible_ssh_common_args="-oPubkeyAuthentication=no"
[proxy]
<proxy_node_IP_address> ansible_user="<USER>" ansible_ssh_pass="<NODE_PASSWORD>" ansible_become=true ansible_become_password="<NODE_PASSWORD>" ansible_port="<PORT_VALUE>" ansible_ssh_common_args="-oPubkeyAuthentication=no"
[management]
<management_node_IP_address> ansible_user="<USER>" ansible_ssh_pass="<NODE_PASSWORD>" ansible_become=true ansible_become_password="<NODE_PASSWORD>" ansible_port="<PORT_VALUE>" ansible_ssh_common_args="-oPubkeyAuthentication=no"
[va]
<va_node_IP_address> ansible_user="<USER>" ansible_ssh_pass="<NODE_PASSWORD>" ansible_become=true ansible_become_password="<NODE_PASSWORD>" ansible_ssh_common_args="-oPubkeyAuthentication=no"
ここで、<USER> は当該ノード上で root 権限を備えている非 root ユーザーであり、<NODE_PASSWORD> はその非 root ユーザーのパスワードであり、<PORT_VALUE> はカスタマイズした SSH ポートです。