4.3. 测试 overcloud 上的隔离
要测试隔离是否正常工作,请关闭 Controller 节点上的所有端口并重启服务器来触发隔离。
重要
此流程降级到 Controller 节点的所有连接,这会导致节点重启。
先决条件
- 隔离部署在 overcloud 上并运行。有关如何部署隔离的详情,请参考 第 4.2 节 “在 overcloud 上部署隔离”。
- Controller 节点可用于重启。
流程
以
stack
用户身份登录 Controller 节点,再提供凭据文件:$ source stackrc $ openstack server list | grep controller $ ssh tripleo-admin@<controller-x_ip>
进入
root
用户并关闭到 Controller 节点的所有连接:$ sudo -i iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT && iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT && iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 5016 -j ACCEPT && iptables -A INPUT -p udp -m state --state NEW -m udp --dport 5016 -j ACCEPT && iptables -A INPUT ! -i lo -j REJECT --reject-with icmp-host-prohibited && iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT && iptables -A OUTPUT -p tcp --sport 5016 -j ACCEPT && iptables -A OUTPUT -p udp --sport 5016 -j ACCEPT && iptables -A OUTPUT ! -o lo -j REJECT --reject-with icmp-host-prohibited
在不同的 Controller 节点中找到 Pacemaker 日志文件中的隔离事件:
$ ssh tripleo-admin@<controller-x_ip> $ less /var/log/cluster/corosync.log (less): /fenc*
如果 STONITH 服务在 Controller 上执行隔离操作,则日志文件会显示一个隔离事件。
-
等待几分钟,然后运行
pcs status
命令来验证重启的 Controller 节点是否再次在集群中运行。如果您可以看到您在输出中重启的 Controller 节点,则隔离功能可以正常工作。