烂泥:使KVM显示VM的IP地址及主机名

本文首发于烂泥行天下

KVM虚拟化学习已经有一段时间了,现在虚拟化软件比较多,对比了下目前使用比较多的VMware Vsphere。发现在不进入VM系统的情况下,Vsphere可以查看VM的IP地址,。如下:

同时你也会发现,Vsphere只能查看VM的IP地址,不能查看其他的信息。如果要查看的话,只能登录到VM系统中查看。而且要查看VM的IP地址的话,我们还需要在VM的系统中安装好vmtools这个软件包。

当然,我们也可以通过描述来解决查看虚拟机的相关情况。如下:

此时再来对比KVM中的VM我们会发现,KVM不能通过类似于Vsphere方法来查看VM的IP地址。

难道说KVM不支持吗?

错的,KVM也是可以支持的。而且KVM比Vsphere更简单,不需要安装任何软件包,只需要在VM的XML配置文件中添加一行命令就可以搞定。

具体操作如下,登录KVM,找到一台VM。如下:

ssh [email protected]

修改KVM虚拟机VM的XML配置,添加<title>参数,在该参数中可以自定义VM的信息,包括VM的IP、hostname等等。具体操作如下:

virsh edit xp

保存该VM配置文件,然后启动该VM,如下:

virsh start xp

然后使用virsh list –title命令查看,如下:

通过上图我们可以很容易的看到,目前虚拟机XP的IP地址是192.168.1.202。这个和我们在前面配置文件中填写的<title>参数一样。

这样就达到了,在VM运行时查看VM的IP地址的目的。

<title>参数,没有在virt-install命令中,而是在virsh命令中,我们可以通过man virsh,进行查看。如下:

注意以上我们测试是VM运行时,查看VM的相关信息。那如果VM没有运行呢?

该如何查看VM的IP地址呢?

我们还可以通过<description>参数,来添加相关的描述。如下:

virsh edit win7

然后使用virsh desc win7命令查看,如下:

通过上图我们可以很容易的看到,目前虚拟机win7处于关闭状态,但是我们可以看到win7的IP地址是192.168.1.201。这个和我们在前面VM配置文件中填写的<description>参数一样。

注意:<description>参数是virt-install命令支持的,virsh不支持。有关<description>参数的使用,我们可以通过man virt-install查看得到,如下

virt-install命令支持<description>参数,那说明我们可以在安装虚拟机时添加有关VM的描述信息。使用命令如下:

virt-install -n win7 -r 2048 --vcpus=1 --os-type=windows -l http://192.168.1.102/G71_X64_IE10_V5.2.iso -f /dev/vg1/win7 --bridge=br0 -m 00:16:3E:12:D7:5D  --vnc --vnclisten=0.0.0.0 --vncport=5999 --description "192.168.1.201_win7_20140926" -x "--device=eth0 ip=192.168.1.220 netmask=255.255.255.0 gateway=192.168.1.1"

注意上面这条命令也是比较有意思的,比如,我现在网络中就只有一台服务器,而这台服务器上目前只有一个web应用,而系统的镜像文件存放在这台服务器上。我现在要求在这台服务器上不安装其他软件,也不在其他配置的话。如何让网络中的其他KVM服务器通过这个镜像文件,来网络安装系统。

而通过上述这个命令就可以达到要求。

时间: 2024-10-13 02:39:02

烂泥:使KVM显示VM的IP地址及主机名的相关文章

Centos 7 安装 设置 IP地址,DNS,主机名,防火墙,端口 (实测+笔记)

环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.虚拟系统安装 1.1 使用VMware 虚拟机,读入ISO进行安装.启动后进行安装界面 1.2 选择 Install CentOS7,进行语言选择 1.3 选择简体中文,进入信息摘要 1.4 点击"安装位置",选择系统需要安装到的硬盘,点击“完成”. 1.5 点击"网络和主机名",进行网络设置

Java如何获取本地计算机的IP地址和主机名?

在Java编程中,如何获取本地计算机的IP地址和主机名? 以下示例显示如何使用InetAddress类的getLocalAddress()方法获取系统的本地IP地址和主机名. package com.yiibai; import java.net.InetAddress; public class GetLocalIPAddress { public static void main(String[] args) throws Exception { InetAddress addr = Ine

Java如何从IP地址查找主机名?

在Java编程中,如何从IP地址查询出主机名? 以下示例显示了如何通过net.InetAddress类的InetAddress.getByName()方法将指定的IP地址查到主机名称. package com.yiibai; import java.net.InetAddress; public class HostSpecificByIP { public static void main(String[] argv) throws Exception { InetAddress addr =

在cmd中获取ip地址和主机名

将下面的文件放到一个bat文件当中,以管理员身份运行. @echo off &setlocal enabledelayedexpansion Rem '/*========获取本机的IP地址(局域网)=========*/ echo "please wait" for /f "tokens=2 delims=:" %%b in ('ipconfig^|find /i "ip"') do set fsip=%%b echo %fsip% s

logresolve - 解析Apache日志中的IP地址为主机名

logresolve是一个解析Apache访问日志中IP地址的后处理程序. 为了使对名称服务器的影响降到最低,logresolve拥有极为自主的内部散列表缓存, 使每个IP值仅仅在第一次从日志文件中读出时才被解析一次. 此程序从标准输入设备上获得需要解析的Apache日志文件, 其中,IP地址必须在每行的开始处,行中其余信息必须以空格分隔. 概要 logresolve [ -s filename ] [ -c ] < access_log > access_log.new 选项 -s file

Centos 7 安装 设置 IP地址,DNS,主机名,防火墙,端口,SELinux (实测+笔记)

环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.虚拟系统安装 1.1 使用VMware 虚拟机,读入ISO进行安装.启动后进行安装界面 1.2 选择 Install CentOS7,进行语言选择 1.3 选择简体中文,进入信息摘要 1.4 点击"安装位置",选择系统需要安装到的硬盘,点击“完成”. 1.5 点击"网络和主机名",进行网络设置

php -- php获取ip地址和主机名

客户端IP相关的变量1. $_SERVER['REMOTE_ADDR']; 客户端IP,有可能是用户的IP,也有可能是代理的IP. 2. $_SERVER['HTTP_CLIENT_IP']; 代理端的IP,可能存在,可伪造. 3. $_SERVER['HTTP_X_FORWARDED_FOR']; 用户是在哪个IP使用的代理,可能存在,可以伪造. 服务器端IP相关的变量1. $_SERVER["SERVER_NAME"],需要使用函数gethostbyname()获得.这个变量无论在

Redhat6 网卡设置 IP地址及主机名配置

1:临时修改:1.1:修改IP地址#ifconfig eth0 192.168.1.10  network 192.168.1.0 1.2:修改网关地址# route add default gw 192.168.1.1 dev eth0 1.3:修改DNS# echo "nameserver 8.8.8.8" >> /etc/resolv.conf 注:一旦重启网卡或者重启服务器,除了DNS的操作其他均会被还原 2:永久性修改:2.1:修改IP地址修改/etc/sysco

小试牛刀--编程实现获取计算机的IP地址和计算机名

1.2.3  小试牛刀--编程实现获取计算机的IP地址和计算机名(1) 实例功能 获取当前计算机的IP地址和计算机名 源码路径 光盘\yuanma\1\IP 本实例的目的是,使用Visual C++ 6.0开发一个获取当前机器的IP地址和计算机名的应用程序. 1. 设计MFC窗体 使用Visual C++ 6.0创建一个MFC项目后,根据本实例的需要设计两个窗体,分别是IDD_ABOUTBOX窗体(见图1-12)和IDD_IPADDRESS_DIALOG窗体(见图1-13).   图1-12