kvm管理查看信息,添加,删除,暂停恢复,克隆等
2024-08-31 19:15:11
KVM virsh管理指令
virsh 查看帮助信息
查看命令帮助
[root@KVM ~]# virsh
Welcome to virsh, the virtualization interactive terminal.
Type: 'help' for help with commands
'quit' to quit
virsh # help
查看某个具体指令帮助
[root@KVM ~]# virsh start --help
NAME
start - start a (previously defined) inactive domain
SYNOPSIS
start <domain> [--console] [--paused] [--autodestroy] [--bypass-cache] [--force-boot]
在virsh指令集中使用子指令
如:查看c1的状态信息:
[root@KVM ~]# virsh
Welcome to virsh, the virtualization interactive terminal.
Type: 'help' for help with commands
'quit' to quit
virsh # dominfo c1
Id: 6
Name: c1
UUID: 58f945ba-2853-c53b-5820-d52fa320f034
OS Type: hvm
State: running
CPU(s): 1
CPU time: 171.2s
Max memory: 1048576 KiB
Used memory: 1048576 KiB
Persistent: yes
Autostart: disable
Managed save: no
Security model: selinux
Security DOI: 0
Security label: unconfined_u:system_r:svirt_t:s0:c200,c417 (permissive)
也可以直接在命令行执行:
[root@KVM ~]# virsh dominfo c1
管理操作
启动一个虚拟机
[root@KVM ~]# virsh start c1
Domain c1 started
查看虚拟机列表
[root@KVM ~]# virsh list
Id Name State
----------------------------------------------------
6 c1 running
#查看所以主机列表
[root@KVM ~]# virsh list --all
停止或重启虚拟机
#关闭虚拟机c1
[root@KVM ~]# virsh shutdown c1
#强行关机
[root@KVM ~]# virsh destroy c1
Domain c1 destroyed
#重启c1
[root@KVM ~]# virsh reboot c1
暂停或运行虚拟机
[root@KVM qemu]# virsh suspend c1 #此时状态暂停于内存中
Domain c1 suspended
#查看
[root@KVM qemu]# virsh list
Id Name State
----------------------------------------------------
9 c1 paused
#继续执行
[root@KVM qemu]# virsh resume c1
Domain c1 resumed
[root@KVM qemu]# virsh list
Id Name State
----------------------------------------------------
9 c1 running
保存虚拟机到本地磁盘(快照)
保存到本地后在列表中的实例会被移除
#保存快照到本地
[root@KVM qemu]# virsh save c1 /tmp/c1.snap
#恢复到列表
[root@KVM qemu]# virsh restore /tmp/c1.snap
Domain restored from /tmp/c1.snap
#此刻快照还存在,可以留作备份
添加虚拟机到列表
virsh define c2.xml
删除虚拟机
[root@KVM ~]# virsh undefine c1
修改虚拟机内存大小
修改虚拟机内存的大小和cpu个数
关闭虚拟机:
[root@KVM ~]# virsh shutdown vm1
修改vm1虚拟机的xml文件
[root@KVM ~]# vim /etc/libvirt/qemu/vm1.xml
<memory unit='KiB'>2536000</memory> #最大使用内存,原来是1536000
<currentMemory unit='KiB'>2536000</currentMemory> #设置已使用内存
<vcpu placement='static'>2</vcpu> #调整为两个
修改后直接启动是不生效的。需要从xml文件识别启动
[root@KVM ~]# virsh define /etc/libvirt/qemu/vm1.xml #重新识别xml文件
Domain vm1 defined from /etc/libvirt/qemu/vm1.xml
[root@KVM ~]# virsh start vm1
Domain vm1 started
[root@KVM ~]# virsh list
Id Name State
----------------------------------------------------
9 vm1 running
[root@KVM ~]# virsh dominfo vm1
Id: 9
Name: vm1
UUID: 483f35c8-e00a-4598-b738-e9aa20e0d8e6
OS Type: hvm
State: running
CPU(s): 2 #调整了cpu
CPU time: 33.4s
Max memory: 2536448 KiB #调整了最大可用内存
Used memory: 2536000 KiB #已使用内存
Persistent: yes
Autostart: disable
Managed save: no
Security model: selinux
Security DOI: 0
Security label: system_u:system_r:svirt_t:s0:c282,c706 (enforcing)
在最大可用内存范围内,可以在线动态调整虚拟机内存大小,但是调整cpu核心需要关闭虚拟机,上调最大内存也需要关闭虚拟机,修改xml文件
将vm1内存调整为1G
[root@KVM ~]# virsh setmem vm1 1G #调整内存
[root@KVM ~]# virsh dominfo vm1
Id: 9
Name: vm1
UUID: 483f35c8-e00a-4598-b738-e9aa20e0d8e6
OS Type: hvm
State: running
CPU(s): 2
CPU time: 132.3s
Max memory: 2536448 KiB
Used memory: 1048576 KiB #已使用内存
Persistent: yes
Autostart: disable
Managed save: no
Security model: selinux
Security DOI: 0
Security label: system_u:system_r:svirt_t:s0:c282,c706 (enforcing)
克隆虚拟机
kvm中增加虚拟机的方式可以通过复制镜像文件和xml文件添加,也可以使用virt-clone指令添加克隆虚拟机
以克隆vm1虚拟机重命名为vm5
[root@KVM ~]# virt-clone -o vm1 -n vm5 -f /kvm/vm5/vm5.qcow2
克隆后会自动生成xml配置文件,克隆新生成的文件中uuid和MAC信息会自动发送变化。可以直接启动虚拟机即可。如果有使用vnc则需要修改一下vnc端口信息,否则会启动出错
启动虚拟机
[root@KVM qemu]# virsh list
Id Name State
----------------------------------------------------
13 vm3 running
15 vm4 running
16 vm5 running #vm5启动起来
最新文章
- 如何把 Callback 接口包装成 Promise 接口
- linux split (分割文件)命令
- 回忆读windows 核心编程
- IIS没有ASP.NET选项卡
- Java知识点:琐碎知识点(3)
- 上海Uber优步司机奖励政策(1月18日~1月24日)
- Oracle数据类型与.NET中的对应关系(转)
- 【Android Tricks 6】ViewPager首页与尾页的滑动动作响应
- HTML <;form>; 标签的 method 属性(20161028)
- VS2015如何连接mySQL数据库
- Egret 按钮点击缩放效果
- thinphp5框架遇到 mkdir() Permission denied 解决办法
- 【spark 深入学习 06】RDD编程之旅基础篇02-Spaek shell
- Vrrp和Hsrp的区别
- Arduino Pro or Pro Mini, ATmega328 (5V, 16 MHz)成功烧录方法
- python 引用和对象理解(转)
- 学习 Linux,302(混合环境): 概念
- bzoj1677
- opencart安装和使用PHPMailer
- put ListView in a ScrollView(bug fixed)