远程管理虚拟机

首先,将虚拟机改成桥接模式,才可以相互连接。

打开宿主机的虚拟系统管理器

 

kvm与宿主机通讯 kvm连接方法_重启

 

输入要远程管理的IP地址。

 

kvm与宿主机通讯 kvm连接方法_运维_02

 

然后输入密码,显示连接。

 

kvm与宿主机通讯 kvm连接方法_开发工具_03

 

打开远程管理的主机的设置,设置VNC服务器和所有接口,就可以打开远程终端。

 

kvm与宿主机通讯 kvm连接方法_开发工具_04

 

然后重启libvirtd服务

systemctl restart libvirt-bin

 

命令行管理虚拟机

virsh 既有命令行模式,也有交互模式,在命令行直接输入 virsh 就进入交互模式, virsh 后面跟命令参数,则是命令行模式

语法结构:virsh <command> <domain-id> [OPTIONS]

 

virsh help #查看帮助
virsh help list #查看list的各种参数用法
virsh list #查看宿主机正在运行的虚拟机
virsh list --all #列出当前宿主机上所有的虚拟机
virsh start vm1 #开启vm1虚拟机
virsh shutdown vm1 #关闭一台虚拟机
virsh destroy vm1 #强制关闭某一台虚拟机
virsh autostart vm1 #开机自启动虚拟机vm1
virsh autostart --disable vm1 #关闭开机自启动
virsh edit vm1 #编辑vm1虚拟机的配置文件
virsh pool-list #列出存储资源池
创建一个磁盘卷
qemu-img create -f qcow2 -o size=9G /export/kvm/test.qcow2
查看磁盘信息
qemu-img info /export/kvm/test.qcow2
克隆一个虚拟机
virt-clone -o vm2 -n vm4 -f /var/lib/libvirt/images/vm4.qcow2
命令行下创建
Virt-install:命令行下创建虚拟机的命令,不过在它后面需要跟上很多的参数
--name: 虚拟机的名字。
--disk Location: 磁盘映像的位置。
--graphics : 怎样连接 VM ,通常是 SPICE 。
--vcpu : 虚拟 CPU 的数量。
--ram : 以兆字节计算的已分配内存大小。
--location : 指定安装源路径
--network : 指定虚拟网络,通常是 virbr0 或者自己设定的 br0
例如:
virt-install --name=test --disk path=/export/kvm/test.qcow2 --ram=1024 --vcpus=1 --graphics spice --location=/export/download/software/iso/CentOS-7.3-x86_64-DVD.iso --network bridge=br0
 
virsh help 打印帮助
virsh attach-device 从一个 XML 文件附加装置
virsh attach-disk 附加磁盘设备
virsh attach-interface 获得网络界面
virsh detach-device 从一个 XML 文件分离设备
virsh detach-disk 分离磁盘设备
virsh detach-interface 分离网络界面
virsh define 从一个 XML 文件定义(但不开始)一个域
virsh undefine 删除一个虚拟机
 
console连接虚拟机
新安装一台虚拟机后,没有ip的情况下,是无法通过virsh console 命令连入虚拟机中的,这时我们需要开启虚拟机的console功能。
在小虚拟机中添加ttyS0许可,允许root登录
grubby --update-kernel=ALL --args="console=ttyS0"
重启。
测试:
virsh console vm-name
ctrl + ] #退出连接

 

透传(嵌套)

一、查看小型机是否支持VT

grep vmx /proc/cpuinfo

没有结果,说明小型机并没有把宿主机的VT功能透传,所以无法在小型机中嵌套KVM虚拟机。

二、CPU虚拟化透传

在宿主机创建文件vim /etc/modprobe.d/kvm-nested.conf

添加

三、重新加载模块并验证

modprobe -r kvm_intel #删除旧的模块

modprobe kvm_intel #重新加载模块

cat /sys/module/kvm_intel/parameters/nested #结果是Y,透传功能开启。

四、修改透传配置文件

virsh edit Vm-Name

将文件中的

host-passthrough:直接将物理CPU暴露给小型机使用

 

kvm与宿主机通讯 kvm连接方法_运维_05

修改为:

 

kvm与宿主机通讯 kvm连接方法_运维_06

五、重启小型机

查看小型机是否透传成功

lsmod | grep kvm

grep vmx /proc/cpuinfo