一: 第1种是通过fence_virsh
1. 以下是fence_virsh帮助的一部分
[root@master ~]# fence_virsh --help Usage: fence_virsh [options] Options: -a, --ip=[ip] IP address or hostname of fencing device -l, --username=[name] Login name -p, --password=[password] Login password or passphrase -c, --command-prompt=[prompt] Force Python regex for command prompt -x, --ssh Use SSH connection -n, --plug=[id] Physical plug number on device, UUID or identification of machine -u, --ipport=[port] TCP/UDP port to use (default 22) -S, --password-script=[script] Script to run to retrieve password -k, --identity-file=[filename] Identity file (private key) for SSH --ssh-options=[options] SSH options to use -4, --inet4-only Forces agent to use IPv4 addresses only -6, --inet6-only Forces agent to use IPv6 addresses only -o, --action=[action] Action: on, off, reboot (default), status, list, list-status, monitor, metadata, manpage or validate-all
2. 比如在kvm虚拟机node1上调用fence_virsh显示kvm宿主机上定义的所有虚拟机
[root@node1 ~]# fence_virsh -a 192.168.100.1 -l root -p 111111 -o list node1, node2, [root@node1 ~]#
注:其中action可以是on, off, reboot (default), status, list,list-status, monitor, metadata, manpage or validate-all
二: 第2种是通过fence_virt
1. 在kvm宿主机上安装所需包
yum -y install fence-virtd fence-virtd-libvirt fence-virtd-tcp
2. 配置fence-virtd配置文件/etc/fence_virt.conf
[root@master ~]# cat /etc/fence_virt.conf fence_virtd { listener = "tcp"; backend = "libvirt"; } listeners { tcp { key_file = "/etc/cluster/fence_xvm.key"; address = "192.168.100.1"; port = "1229"; } } backends { libvirt { uri = "qemu:///system"; } } [root@master ~]#
3. 创建key_file
[root@master ~]# mkdir /etc/cluster [root@master ~]# echo "mysharedkey" > /etc/cluster/fence_xvm.key
4. 启动fence_virtd
[root@master ~]# systemctl enable --now fence_virtd
5. 在kvm虚拟机node1上,安装fence-virt, 并同步key_file
[root@node1 ~]# yum -y install fence-virt [root@node1 ~]# mkdir /etc/cluster [root@node1 ~]# scp 192.168.100.1:/etc/cluster/fence_xvm.key /etc/cluster/
6. 比如在kvm虚拟机node1上调用fence-virt显示kvm宿主机上定义的所有虚拟机
[root@node1 ~]# fence_virt -T 192.168.100.1 -p 1229 -o list node1 90af8391-d531-4d0c-8548-7b3232ddf27f off node2 a062975c-c8e9-4a8b-b025-9625713d8072 off [root@node1 ~]#
注:其中action可以是null, off, on, [reboot], status, list,list-status, monitor, validate-all, metadata