Red Hat Training
A Red Hat training course is available for RHEL 8
4.11. 安装网络资源代理
要使 HA 操作正常工作,集群使用 AWS 网络资源代理来启用故障切换功能。如果节点在一定时间内没有响应心跳检查,则该节点会被隔离,操作会切换到集群中的其它节点。需要配置网络资源代理才能正常工作。
将两个资源添加到 同一组 中,以强制 执行顺序
和 colocation
约束。
创建二级私有 IP 资源及虚拟 IP 资源
完成以下步骤以添加二级专用 IP 地址并创建虚拟 IP。您可以从集群中的任何节点完成此步骤。
流程
输入以下命令来查看
AWS Secondary Private IP Address
资源代理(awsvip)描述。这显示了这个代理的选项和默认操作。# pcs resource describe awsvip
输入以下命令,使用
VPC CIDR
块中未使用的私有 IP 地址创建 secondary Private 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
命令来验证资源是否正在运行。# 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
创建弹性 IP 地址
弹性 IP 地址是一个公共 IP 地址,可以从隔离的节点快速重新映射到故障转移节点,从而屏蔽隔离节点的故障。
请注意,这与之前创建的虚拟 IP 资源不同。弹性 IP 地址用于面向公共的互联网连接,而不是子网连接。
-
将两个资源添加到之前创建的 同一组 中,以强制
执行顺序
和colocation
约束。 输入以下 AWS CLI 命令来创建弹性 IP 地址。
[root@ip-10-0-0-48 ~]# aws ec2 allocate-address --domain vpc --output text eipalloc-4c4a2c45 vpc 35.169.153.122
输入以下命令来查看 AWS Secondary Elastic IP Address 资源代理(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
测试弹性 IP 地址
输入以下命令来验证虚拟 IP(awsvip)和弹性 IP(awseip)资源是否正常工作。
流程
从本地工作站启动 SSH 会话到之前创建的弹性 IP 地址。
$ ssh -l ec2-user -i ~/.ssh/<KeyName>.pem elastic-IP
例如:
$ ssh -l ec2-user -i ~/.ssh/cluster-admin.pem 35.169.153.122
- 验证您通过 SSH 连接到的主机是否与创建的弹性资源关联。
其它资源