kvm虚拟机管理

远程管理kvm虚拟机

virt-manager不仅可以在本地主机上管理kvm虚拟机,也可以远程管理其他宿主机上的虚拟机。
首先我们需要检查本主机是否安装了openssh-askpass

yum -y install openssh-askpass

接着我们只需要进入菜单栏中File选择添加连接,之后就能通过这里管理其他虚拟机。

virsh命令行管理虚拟机

virsh既有命令行模式,也有交互模式。在shell命令行下直接输入virsh就进入交互模式;在virsh后加上命令参数就是命令行模式。

virsh help查看帮助信息
virsh list列出所有运行中的kvm虚拟机
virsh list --all列出所有kvm虚拟机
virsh start centos7.0启动某台虚拟机
virsh shutdown centos7.0关闭某台虚拟机
virsh destroy centos7.0强制关闭某台虚拟机
virsh autostart centos7.0设置某台虚拟机为开机自启
virsh autostart --disable centos7.0关闭开机自启
virsh pool-list列出存储池
virsh undefine centos7.0删除一个虚拟机
virsh define从一个XML 文件定义(但不开始)一个域
virsh edit centos7.0编辑某台虚拟机配置文件

我们既可以用virsh命令行来修改虚拟机配置文件,也可以直接在宿主机中修改:

vim /etc/libvirt/qemu/centos7.0.xml

虚拟机克隆

virt-clone -o vm1 -n vm2 -f /var/lib/libvirt/images/vm2.qcow2

kvm虚拟化透传

nested虚拟机嵌套:简单来说,就是要在虚拟机上跑虚拟机。
kvm的虚拟机嵌套与VMWare原理不同:VMWare第一层使用硬件虚拟化,第二层完全由软件模拟,因此VMWare只能做两层嵌套;而kvm是将物理CPU的特性完全传给虚拟机,只要硬件性能允许,就可以嵌套无数层。
KVM 虚拟化需要CPU对虚拟化技术的支持,当我们进行虚拟机嵌套虚拟机时,我们需要让虚拟机CPU对 VT 功能的支持达到透传的效果。我们来查看一层虚拟机是否支持VT功能:

cat /proc/cpuinfo | grep vmx

如果没有结果就说明一层虚拟机并未将宿主机CPU的VT功能成功透传,我们需要手动进行CPU虚拟化透传。
在最外层服务器上执行:

echo 'options kvm_intel nested=1' > /etc/modprobe.d/kvm-nested.conf
重新加载kvm_intel模块
modprobe -r kvm_intel
modprobe kvm_intel
修改虚拟机配置文件,使物理CPU直接暴露给虚拟机
virsh edit centos7.0
  <cpu mode='host-passthrough' check='none'/>

之后我们可以看到在虚拟机上也支持VT功能了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值