1. 首页 > Linux教程 > 正文

Linux教程FG317-集群VIP资源配置与验证

内容简介:本文风哥教程参考Linux官方文档、Red Hat Enterprise Linux官方文档、Ansible Automation Platform官方文档、Docker官方文档、Kubernetes官方文档和Podman官方文档等内容,详细介绍了相关技术的配置和使用方法。

风哥提示:

本文档详细介绍集群VIP(虚拟IP)资源的配置和验证方法。

Part01-VIP资源创建

1.1 创建基本VIP资源

# 创建VIP资源
[root@ha-node1 ~]# pcs resource create VirtualIP ocf:heartbeat:IPaddr2 \
ip=192.168.1.100 cidr_netmask=24 \
op monitor interval=30s timeout=20s

Assumed agent name ‘ocf:heartbeat:IPaddr2’ (deduced from ‘IPaddr2’)
Creating Resource (VirtualIP)…
* Check: VirtualIP-ocf:heartbeat:IPaddr2
* Check: VirtualIP-ip=192.168.1.100
* Check: VirtualIP-cidr_netmask=24
* Check: VirtualIP-op-monitor-interval=30s
Resource ‘VirtualIP’ created

# 验证资源创建
[root@ha-node1 ~]# pcs resource show VirtualIP
Resource: VirtualIP (class=ocf provider=heartbeat type=IPaddr2)
Attributes: cidr_netmask=24 ip=192.168.1.100
Operations: monitor interval=30s timeout=20s (VirtualIP-monitor-interval-30s)

# 查看资源状态
[root@ha-node1 ~]# pcs status resources
* VirtualIP (ocf::heartbeat:IPaddr2): Started ha-node1

1.2 创建高级VIP资源

# 创建带ARP刷新的VIP资源
[root@ha-node1 ~]# pcs resource create ClusterIP ocf:heartbeat:IPaddr2 \
ip=192.168.1.200 cidr_netmask=24 \
nic=ens33 \
send_arp=true \
arp_interval=200 \
arp_count=5 \
op monitor interval=30s timeout=20s \
op start timeout=20s \
op stop timeout=20s

Creating Resource (ClusterIP)…
* Check: ClusterIP-ocf:heartbeat:IPaddr2
* Check: Clus更多学习教程公众号风哥教程itpux_comterIP-ip=192.168.1.200
* Check: ClusterIP-cidr_netmask=24
* Check: ClusterIP-nic=ens33
* Check: ClusterIP-send_arp=true
* Check: ClusterIP-arp_interval=200
* Check: ClusterIP-arp_count=5
Resource ‘ClusterIP’ created

# 验证资源
[root@ha-node1 ~]# pcs resource show ClusterIP
Resource: ClusterIP (class=ocf provider=heartbeat type=IPaddr2)
Attributes: arp_count=5 arp_interval=200 cidr_netmask=24 ip=192.168.1.200 nic=ens33 send_arp=true
Operations: monitor interval=30s timeout=20s (ClusterIP-monitor-interval-30s)
start interval=0s timeout=20s (ClusterIP-start-interval-0s)
stop interval=0s timeout=20s (ClusterIP-stop-interval-0s)

Part02-VIP资源验证

2.1 验证VIP配置

# 在运行节点检查VIP
[root@ha-node1 ~]# ip addr show ens33
2: ens33: mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:0c:29:12:34:56 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.10/24 brd 192.168.1.255 scope global noprefixroute ens33
valid_lft forever preferred_lft forever
inet 192.168.1.100/24 brd 192.168.1.255 scope global secondary ens33
valid_lft forever preferred_lft forevfrom PG视频:www.itpux.comer
inet 192.168.1.200/24 brd 192.168.1.255 scope global secondary ens33
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe12:3456/64 scope link
valid_lft forever preferred_lft forever

# 从其他主机ping VIP
[root@client ~]# ping -c 3 192.168.1.100
PING 192.168.1.100 (192.168.1.100) 56(84) bytes of data.
64 bytes from 192.168.1.100: icmp_seq=1 ttl=64 time=0.421 ms
64 bytes from 192.168.1.100: icmp_seq=2 ttl=64 time=0.389 ms
64 bytes from 192.168.1.100: icmp_seq=3 ttl=64 time=0.412 ms

— 192.168.1.100 ping statistics —
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 0.389/0.407/0.421/0.013 ms

# 检查ARP表
[root@client ~]# arp -n | grep 192.168.1.100
192.168.1.100 ether 00:0c:29:12:34:56 C ens33

2.2 验证VIP故障转移

# 手动移动VIP到另一个节点
[root@ha-node1 ~]# pcs resource move VirtualIP ha-node2
Moving VirtualIP to ha-node2…
* VirtualIP: VirtualIP-move
* VirtualIP: VirtualIP-migrate-from-ha-node1
* VirtualIP: VirtualIP-migrate-to-ha-node2
VirtualIP moved to ha-node2

# 在node2上验证VIP
[root@ha-node2 ~]# ip addr show ens33 | grep 192.168.1.100
inet 192.168.1.100/24 brd 192.168.1.255 scope global secondary ens33

# 在node1上确认VIP已移除
[root@ha-node1 ~]# ip addr show ens33 | grep 192.168.1.100
(no output)

# 清除移动约束
[root@ha-node1 ~]# pcs resource clear VirtualIP
Removing constraint for VirtualIP
VirtualIP constraint removed

# 查看资源状态
[root@ha-node1 ~]# pcs status resources
* VirtualIP (ocf::heartbeat:IPaddr2): Started ha-node2
* ClusterIP (ocf::heartbeat:IPaddr2): Started ha-node1

Part03-VIP资源测试

3.1 测试VIP高可用

# 模拟节点故障
[root@ha-node1 ~]# pcs cluster standby ha-node2

# 查看资源状态
[root@ha-node1 ~]# pcs status resources
* VirtualIP (ocf::heartbeat:IPaddr2): Started ha-node1
* ClusterIP (ocf::heartbeat:IPaddr2): Started ha-node1

# 验证VIP已转移到node1
[root@ha-node1 ~]# ip addr show ens33 | grep 192.168.1.100
inet 192.168.1.100/24 brd 192.168.1.255 scope global secondary ens33

# 恢复节点
[root@ha-node1 ~]# pcs cluster unstandby ha-node2

# 查看节点状态
[root@ha-node1 ~]# pcs status nodes
Pacemaker Nodes:
Online: ha-node1 ha-node2
Standby:
Maintenance:
Offline:

# 测试VIP连通性
[root@client ~]# ping -c 3 192.168.1.100
PING 192.168.学习交流加群风哥微信: itpux-com1.100 (192.168.1.100) 56(84) bytes of data.
64 bytes from 192.168.1.100: icmp_seq=1 ttl=64 time=0.398 ms
64 bytes from 192.168.1.更多视频教程www.fgedu.net.cn100: icmp_seq=2 ttl=64 time=0.412 ms
64 bytes from 192.168.1.100: icmp_seq=3 ttl=64 time=0.401 ms

— 192.168.1.100 ping statistics —
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 0.398/0.403/0.412/0.006 ms

3.2 测试VIP监控

# 查看资源监控状态
[root@ha-node1 ~]# pcs status operations VirtualIP
Operations for VirtualIP:
* monitor interval=30s last-rc-change=Fri Apr 4 11:00:00 2026 exec-time=15ms

# 手动停止VIP资源
[root@ha-node1 ~]# pcs resource disable VirtualIP

# 查看资源状态
[root@ha-node1 ~]# pcs status resources
* VirtualIP (ocf::heartbeat:IPaddr2): Stopped (disabled)
* ClusterIP (ocf::heartbeat:IPaddr2): Started ha-node1

# 重新启用资源
[root@ha-node1 ~]# pcs resource enable VirtualIP

# 验证资源启动
[root@ha-node1 ~]# pcs status resources
* VirtualIP (ocf::heartbeat:IPaddr2): Started ha-node1
* ClusterIP (ocf::heartbeat:IPaddr2): Started ha-node1

Part04-VIP资源优化

4.1 优化VIP配置

# 更新VIP资源参数
[root@ha-node1 ~]# pcs resource update VirtualIP \
op monitor interval=15s timeout=10s \
op start timeout=15s \
op stop timeout=15s

# 验证更新
[root@ha-node1 ~]# pcs resource show VirtualIP
Resource: VirtualIP (class=ocf provider=heartbeat type=IPaddr2)
Attributes: cidr_netmask=24 ip=192.168.1.100
Operations: monitor interval=15s timeout=10s (VirtualIP-monitor-interval-15s)
start interval=0s timeout=15s (VirtualIP-start-interval-0s)
stop interval=0s timeout=15s (VirtualIP-stop-interval-0s)

# 设置资源粘性
[root@ha-node1 ~]# pcs resource update VirtualIP meta resource-stickiness=100

# 验证粘性设置
[root@ha-node1 ~]# pcs resource show VirtualIP
Resource: VirtualIP (class=ocf provider=heartbeat type=IPaddr2)
Attributes: cidr_netmask=24 ip=192.168.1.100
Meta Attrs: resource-stickiness=100
Operations: monitor interval=15s timeout=10s (VirtualIP-monitor-interval-15s)
start interval=0s timeout=15s (VirtualIP-start-interval-0s)
stop interval=0s timeout=15s (VirtualIP-stop-interval-0s)

风哥针对VIP资源配置建议:

  • 使用合适的监控间隔(15-30秒)
  • 配置ARP刷新确保快速切换
  • 设置资源粘性避免频繁切换
  • 定期测试故障转移
  • 监控VIP连通性

本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html

联系我们

在线咨询:点击这里给我发消息

微信号:itpux-com

工作日:9:30-18:30,节假日休息