kolla KVM宿主机上查找到虚拟机IP地址

 

 

 

大致思路就是这样:
kvm宿主机上的虚拟机可以通过virsh list来查看,不过IP就没办法查看了,这里我们通过arp协议来将一个网段内可以ping通的ip添加到宿主机的arp缓存中,通过查询虚拟机的mac地址来和ip做匹配,这样就可以查到当前宿主机上正在运行的虚拟机和它们的IP了。

脚本实例:

复制代码
#!/bin/bash 
#ping当前网段内在线的主机,以便产生arp记录. 
for ip in 10.2.2.{1..253};do
{
ping -c1 $ip >/dev/null 2>&1
}&
done
#依次查找arp记录. 
running_vms=`virsh list |grep running`
echo -ne "共有`echo "$running_vms"|wc -l`个虚拟机在运行.\n" 
for i in `echo "$running_vms" | awk '{ print $2 }'`;do
mac=`virsh dumpxml $i |grep "mac address"|sed "s/.*'\(.*\)'.*/\1/g"`
ip=`arp -ne |grep "$mac" |awk '{printf $1}'`
printf "%-30s %-30s\n" $i $ip
done
复制代码

算节点上,在/var/lib/docker/volumes/nova_compute/_data/instances目录中,可以看到新创建的实例

/var/lib/docker/volumes# cat ./nova_libvirt_qemu/_data/instance-00003bed.xml

cat ./nova_compute/_data/instances/1f1ff909-7f42-481c-88fd-840ffe96b74d/libvirt.xml



 

 

posted on   tycoon3  阅读(396)  评论(0编辑  收藏  举报

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示