Red Hat Training
A Red Hat training course is available for RHEL 8
4.10. ネットワークリソースエージェントのインストール
HA 操作が機能するために、クラスターは AWS ネットワークリソースエージェントを使用してフェイルオーバー機能を有効にします。設定された時間内にノードがハートビートチェックに応答しない場合には、ノードはフェンスされ、操作はクラスター内の追加のノードにフェイルオーバーします。これを使用するには、ネットワークリソースエージェントを設定する必要があります。
順序
と コロケーション
の制約を適用するため、同じグループ に 2 つのリソースを追加します。
セカンダリープライベート IP リソースと仮想 IP リソースを作成
セカンダリープライベート IP アドレスを追加し、仮想 IP を作成するには、以下の手順を行います。この手順は、クラスター内の任意のノードから実行できます。
手順
AWS セカンダリープライベート IP アドレス
リソースエージェント (awsvip) の説明を表示します。これは、このエージェントのオプションとデフォルトの操作を示しています。# pcs resource describe awsvip
VPC CIDR
ブロックの未使用のプライベート IP アドレスを使用して、セカンダリープライベート IP アドレスを作成します。# pcs resource create privip awsvip secondary_private_ip=Unused-IP-Address --group group-name
例:
[root@ip-10-0-0-48 ~]# pcs resource create privip awsvip secondary_private_ip=10.0.0.68 --group networking-group
仮想 IP リソースを作成します。これは、フェンシングされたノードからフェイルオーバーノードに即時に再マッピングできる VPC IP アドレスで、サブネット内のフェンスされたノードの失敗をマスクします。
# pcs resource create vip IPaddr2 ip=secondary-private-IP --group group-name
以下に例を示します。
root@ip-10-0-0-48 ~]# pcs resource create vip IPaddr2 ip=10.0.0.68 --group networking-group
検証
リソースが実行されていることを確認します。
# pcs status
例:
[root@ip-10-0-0-48 ~]# pcs status Cluster name: newcluster Stack: corosync Current DC: ip-10-0-0-46 (version 1.1.18-11.el7-2b07d5c5a9) - partition with quorum Last updated: Fri Mar 2 22:34:24 2018 Last change: Fri Mar 2 22:14:58 2018 by root via cibadmin on ip-10-0-0-46 3 nodes configured 3 resources configured Online: [ ip-10-0-0-46 ip-10-0-0-48 ip-10-0-0-58 ] Full list of resources: clusterfence (stonith:fence_aws): Started ip-10-0-0-46 Resource Group: networking-group privip (ocf::heartbeat:awsvip): Started ip-10-0-0-48 vip (ocf::heartbeat:IPaddr2): Started ip-10-0-0-58 Daemon Status: corosync: active/disabled pacemaker: active/disabled pcsd: active/enabled
Elastic IP アドレスの作成
Elastic IP アドレスは、フェンシングされたノードからフェイルオーバーノードに即時に再マッピングできるパブリック IP アドレスで、フェンスされたノードの障害をマスクします。
これは、先に作成した仮想 IP リソースとは異なることに注意してください。Elastic IP アドレスは、サブネット接続ではなく、公開用インターネット接続に使用されます。
-
上で作成した 同じグループ に 2 つのリソースを追加して、
順序
とコロケーション
の制約を適用します。 以下の AWS CLI コマンドを入力して、Elastic IP アドレスを作成します。
[root@ip-10-0-0-48 ~]# aws ec2 allocate-address --domain vpc --output text eipalloc-4c4a2c45 vpc 35.169.153.122
AWS セカンダリー Elastic IP アドレスリソースエージェント (awseip) の説明を表示します。次のコマンドは、このエージェントのオプションとデフォルトの操作を示しています。
# pcs resource describe awseip
ステップ 1 で作成して割り当てられた IP アドレスを使用して、セカンダリー Elastic IP アドレスリソースを作成します。
# pcs resource create elastic awseip elastic_ip=Elastic-IP-Address allocation_id=Elastic-IP-Association-ID --group networking-group
以下に例を示します。
# pcs resource create elastic awseip elastic_ip=35.169.153.122 allocation_id=eipalloc-4c4a2c45 --group networking-group
検証
pcs status
コマンドを実行して、リソースが実行していることを確認します。# pcs status
以下に例を示します。
[root@ip-10-0-0-58 ~]# pcs status Cluster name: newcluster Stack: corosync Current DC: ip-10-0-0-58 (version 1.1.18-11.el7-2b07d5c5a9) - partition with quorum Last updated: Mon Mar 5 16:27:55 2018 Last change: Mon Mar 5 15:57:51 2018 by root via cibadmin on ip-10-0-0-46 3 nodes configured 4 resources configured Online: [ ip-10-0-0-46 ip-10-0-0-48 ip-10-0-0-58 ] Full list of resources: clusterfence (stonith:fence_aws): Started ip-10-0-0-46 Resource Group: networking-group privip (ocf::heartbeat:awsvip): Started ip-10-0-0-48 vip (ocf::heartbeat:IPaddr2): Started ip-10-0-0-48 elastic (ocf::heartbeat:awseip): Started ip-10-0-0-48 Daemon Status: corosync: active/disabled pacemaker: active/disabled pcsd: active/enabled
Elastic IP アドレスのテスト
以下のコマンドを入力して、仮想 IP (awsvip) および Elastic IP (awseip) のリソースが機能していることを確認します。
手順
ローカルワークステーションから、上で作成した Elastic IP アドレスへの SSH セッションを開始します。
$ ssh -l ec2-user -i ~/.ssh/<KeyName>.pem elastic-IP
以下に例を示します。
$ ssh -l ec2-user -i ~/.ssh/cluster-admin.pem 35.169.153.122
- SSH 経由で接続したホストが、作成された elastic リソースに関連付けられたホストであることを確認します。