KVM基础命令详解


Posted in Servers onApril 30, 2022

KVM (全称是 Kernel-based Virtual Machine) 是 Linux 下 x86 硬件平台上的全功能虚拟化解决方案,包含一个可加载的内核模块 kvm.ko 提供和虚拟化核心架构和处理器规范模块。

使用 KVM 可允许多个包括 Linux 和 Windows 每个虚拟机有私有的硬件,包括网卡、磁盘以及图形适配卡等。

下面给大家介绍下KVM基础命令,内容如下所示:

KVM虚机相关命令:

开机:virsh start test1

关机:virsh shutdown test1

强制关机:virsh destroy test1

重新启动:virsh reboot test1

通过配置文档启动主机:virsh create /etc/libvirt/qemu/test1.xml

查看主机状态:virsh list --all

停止/挂机虚拟机:virsh suspend test1

保存虚拟机:virsh save test1

还原虚拟机:virsh resume test1
从一个已存在的设备配置文件新建一个虚拟机:

virsh dumpxml test1 >/etc/libvirt/qemu/test2.xml
qemu-img create -f qcow2 test2.img 20G

使用virt-install初始化安装一个Centos系统

# virt-install --connect qemu:///system \ #如果使用kvm安装,并且使用的root,默认为此,基于xen或者其它,可参考man virt-install

--n test1 \ #指定虚拟机的显示名称

--c /mnt/centos6.4-x86_64.iso #指定安装镜像,也可以指定cdrom直接安装,如:-c /dev/sr0

--r 2048 \ #指定内存,默认为MB

--arch=x86_64 \ #指定arch模型

--vcpus=2 --check-cpu --cpuset=0-1 \ #指定cpu0,1作为虚拟机的CPU,此处绑定了CPU

--os-type=linux --os-variant=rhel6 \ #指定系统类型和版本

--disk path=/var/lib/libvirt/p_w_picpaths/test1.img,device=disk,bus=virtio,spare=true -s 10 \ #指定磁盘信息,使用virtio驱动加载

--network bridge=br0 \ #指定桥接模式,并指定通过br0网卡进行桥接

--noautoconsol --autostart \ #不自动开启控制台,并且随主机自启动

--vnc #提供vnc端口访问,在这里可以设置密码,也可以不设置

--force

修改内存/CPU:

修改内存大小:virsh setmem test1 4G #默认单位为KB

设置内存的最大值:virsh setmaxmem test1 8G

增大VCPU数量:virsh setvcpus test1 8

备份/还原:

备份:virsh save --bypass-cache test1 /var/lib/libvirt/save/test1_1.save --running

还原:virsh restore/var/lib/libvirt/save/test1_1.save--bypass-cache --running

快照管理:

如果要使用kvm的快照功能,就必须使用qcow2的磁盘格式,而raw只支持内存快照,如果不是,请参考第3节内容修改

查看快照:virsh snapshot-list test1

创建快照:virsh snapshot-create test1 test1.snap1

恢复到快照:virsh snapshot-revert test1 test1.snap1

删除快照:virsh snapshot-delete test1 test1.snap1

KVM虚拟机的迁移

virsh migrate --live test1 qemu+tcp//destnationip/system tcp://destnationip

到此这篇关于KVM基础命令的文章就介绍到这了!


Tags in this post...

Servers 相关文章推荐
Nginx域名转发使用场景代码实例
Mar 31 Servers
Apache Hudi的多版本清理服务彻底讲解
Mar 31 Servers
使用kubeadm命令行工具创建kubernetes集群
Mar 31 Servers
Tomcat项目启动失败的原因和解决办法
Apr 20 Servers
Nginx配置之禁止指定IP访问
May 02 Servers
使用Nginx的访问日志统计PV与UV
May 06 Servers
nginx设置资源请求目录的方式详解
May 30 Servers
安装harbor作为docker镜像仓库的问题
Jun 14 Servers
Nginx安装配置详解
Jun 25 Servers
Docker容器harbor私有仓库部署和管理
Aug 05 Servers
教你使用RustDesk 搭建一个自己的远程桌面中继服务器
Aug 14 Servers
CentOS7设置ssh服务以及端口修改方式
Dec 24 Servers
Win10 Anaconda安装python-pcl
如何开启Apache,Nginx和IIS服务器的GZIP压缩功能
Apr 29 #Servers
解决IIS7下无法绑定https主机的问题
IIS服务器中设置HTTP重定向访问HTTPS
在Windows Server 2012上安装 .NET Framework 3.5 所遇到的问题
解决Windows Server2012 R2 无法安装 .NET Framework 3.5
Windows Server 2012 R2 磁盘分区教程
You might like
上传多个文件的PHP脚本
2006/11/26 PHP
PHP读取CURL模拟登录时生成Cookie文件的方法
2014/11/04 PHP
PHP+Mysql+jQuery文件下载次数统计实例讲解
2015/10/10 PHP
ThinkPHP项目分组配置方法分析
2016/03/23 PHP
linux下php上传文件注意事项
2016/06/11 PHP
PHP微信开发用Cache 解决数据缓存
2016/07/11 PHP
php生成毫秒时间戳的实例讲解
2017/09/22 PHP
PHP超低内存遍历目录文件和读取超大文件的方法
2019/05/01 PHP
PHP+ajax实现上传、删除、修改单张图片及后台处理逻辑操作详解
2020/02/12 PHP
Jquery在IE7下无法使用 $.ajax解决方法
2009/11/11 Javascript
JS面向对象编程浅析
2011/08/28 Javascript
JS中如何设置readOnly的值
2013/12/25 Javascript
JavaScript中的typeof操作符用法实例
2014/04/05 Javascript
41个Web开发者必须收藏的JavaScript实用技巧
2016/07/22 Javascript
关于数据与后端进行交流匹配(点亮星星)
2016/08/03 Javascript
纯js实现悬浮按钮组件
2016/12/17 Javascript
浅谈vue中数据双向绑定的实现原理
2017/09/14 Javascript
使用JSON格式提交数据到服务端的实例代码
2018/04/01 Javascript
教你用python3根据关键词爬取百度百科的内容
2016/08/18 Python
Python enumerate索引迭代代码解析
2018/01/19 Python
一份python入门应该看的学习资料
2018/04/11 Python
python 实现检验33品种数据是否是正态分布
2019/12/09 Python
python序列化与数据持久化实例详解
2019/12/20 Python
python3+opencv生成不规则黑白mask实例
2020/02/19 Python
python 伯努利分布详解
2020/02/25 Python
python suds访问webservice服务实现
2020/06/26 Python
python中time.ctime()实例用法
2021/02/03 Python
thinkphp5 路由分发原理
2021/03/18 PHP
AE美国鹰美国官方网站:American Eagle Outfitters
2016/08/22 全球购物
加拿大健康、婴儿和美容产品在线购物:Well.ca
2016/11/30 全球购物
数百万免费的图形资源:Freepik
2020/09/21 全球购物
初中中等生评语
2014/12/29 职场文书
2016年教师师德师风承诺书
2016/03/25 职场文书
班组长如何制订适合本班组的工作计划?
2019/07/10 职场文书
Python实现DBSCAN聚类算法并样例测试
2021/06/22 Python
Redis唯一ID生成器的实现
2022/07/07 Redis