4 查看KVM虚拟机IP.

4 查看KVM虚拟机IP.

不能直接查看KVM虚拟机IP,只能通过mac地址,再查IP

1. 查看kvm虚拟机

1
virsh list --all

输出如下信息:

1
2
3
4
5
6
 Id    Name                           State
----------------------------------------------------
 1     kvm22                          running
 2     kvm31                          running
 3     kvm11                          running
 4     kvm12                          running

2. 查kvm11的MAC地址:

1
virsh dumpxml kvm11 | grep mac

输出如下信息:

1
2
3
    <partition>/machine</partition>
    <type arch='x86_64' machine='pc-i440fx-rhel7.0.0'>hvm</type>
      <mac address='52:54:00:ad:fa:f7'/>

3. 查看 mac address=’52:54:00:ad:fa:f7 对应的ip

1
arp -a | grep 52:54:00:ad:fa:f7

输出如下信息

1
? (192.168.122.159) at 52:54:00:ad:fa:f7 [ether] on virbr0

4. 写一个shell文件,全部列出来.

1
vi virsh.sh

增加如下信息:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/bin/bash                                                                                  //位置
for ip in 192.168.122.{1..254};                                                              //ip范围
do                                                                                           //
{                                                                                            //
ping -c 1 $ip >/dev/null 2>&1;                                                               //ping 一次ip
}&                                                                                           //
done                                                                                         //                            
running_vms=`virsh list | grep running`                                                      //running_vms
echo -ne "共有`echo "$running_vms" | wc -l`个虚拟机在运行.\n"                                //共有?个虚拟机在运行.
for i in `echo "$running_vms" | awk '{print $2}'`;                                           //i的范围
do                                                                                           //
mac=`virsh dumpxml $i | grep "mac address" | awk -F "'" '/<mac address=/{print $2}'`         //mac
ip=`arp -ne | grep "$mac" | awk '{printf $1}'`                                               //ip
printf "%-30s %-30s\n" $i $ip                                                                //
done                                                                                         //

给showip.sh 增加执行权限

1
chmod a+x virsh.sh

5. 执行showip.sh 得到ip地址

1
./virsh.sh

输出如下信息:
共有4个虚拟机在运行.

1
2
3
4
kvm22                          192.168.122.173
kvm31                          192.168.122.108
kvm11                          192.168.122.159
kvm12                          192.168.122.213

Leave a Reply