KVM虚拟化技术(五)虚拟机管理
一、为了提高内存、硬盘、网络的性能,需要支持半虚拟化;virtio半虚拟化驱动
二、对虚拟机的管理都是通过libvirt;所有必须要启用一个守护程序libvirtd。
三、virt-manager
①定义和创建虚拟机
②硬件管理
③性能监视
④虚拟机的保存和恢复、暂停和继续、关闭和启动
⑤控制台
⑥在线和离线迁移
四、virsh
virsh是使用libvirt managerment API构建的管理工具
virsh的名称含义是virtualization shell。有两种工作模式
立即模式:
virsh list --all
交互模式:
virsh [回车]
virsh常用命令
命令 | 描述 |
attach-device | 使用XML文件中的设备定义在虚拟机中添加设备 |
attach-disk | 在虚拟机中附加新磁盘设备 |
attach-interface | 在虚拟机中附加新网络接口 |
create | 从XML配置文件生成虚拟机并启动新虚拟机 |
define | 为虚拟机输出XML配置文件 |
destroy | 强制虚拟机停止 |
detach-device | 从虚拟机中分离设备 |
detach-disk | 从虚拟机中分离磁盘设备 |
detach-interface | 从虚拟机中分离网络接口 |
domblkstat | 显示正在运行的虚拟机的块设备统计 |
domid | 显示虚拟机id |
domifstat | 显示正在运行的虚拟机的网络接口统计 |
dominfo | 显示虚拟机信息 |
domname | 显示虚拟机名称 |
domstate | 显示虚拟机状态 |
domuuid | 显示虚拟机的uuid |
dumpxml | 输出虚拟机XML配置文件 |
help | 帮助信息 |
list | 列出所有虚拟机 |
migrate | 将虚拟机迁移到另一台主机中 |
nodeinfo | 有关管理程序的输出信息 |
quit | 退出这个互动终端 |
reboot | 重启这个虚拟机 |
restore | 恢复以前保存在文件中的虚拟机 |
resume | 恢复暂停的虚拟机 |
save | 将虚拟机当前状态保存在某个文件中 |
setmaxmem | 为管理程序设定内存限 |
setmem | 为虚拟机设定分配的内存 |
setvcpus | 修改为虚拟机分配的虚拟CPU数目 |
shutdowm | 关闭某个虚拟机 |
start | 启动未激活的虚拟机 |
suspend | 暂停虚拟机 |
undefine | 删除与虚拟机关联的所有文件 |
vcpuinfo | 显示虚拟机的虚拟CPU信息 |
vcpupin | 控制虚拟机的虚拟CPU亲和性 |
version | 显示cirsh版本 |
1.查看KVM虚拟机默认配置文件位置及运行状态
(1)KVM虚拟机默认配置文件位置:/etc/libvirt/qemu
autostart目录是配置kvm虚拟机开机自启动目录
(2)virsh命令帮助
# virsh --help
或者直接virsh命令,再执行子命令
(3)查看kvm虚拟机状态
# virsh list --all
2.KVM虚拟机开机
#virsh start kvmname
3.KVM虚拟机关机或断电
(1)关机
默认情况下virsh工具不能对linux虚拟机进行关机操作,linux操作系统需要开启与启动acpid服务。在安装KVM linux虚拟机必须配置此服务
# chkconfig acpid on
# service acpid restart
virsh关机
#virsh shutdown kvmname
(2)强制关闭电源
#virsh destroy kvmname
4.通过配置文件启动虚拟机
# virsh create /etc/libvirt/qemu/XXX.xml
5.配置开机自启动虚拟机
# virsh autostart kvmname
autostart目录是kvm虚拟机开机自启动目录,可以看到该目录中有kvm配置文件链接
6.导出KVM虚拟机配置文件
#virsh dumpxml kvmname > /etc/libvirt/qemu/kvmname.xml
KVM虚拟机配置文件可以通过这种方式进行备份
7.添加与删除KVM虚拟机
(1)删除kvm虚拟机
# virsh undefine kvmname
该命令只是删除kvmname的配置文件,并不删除虚拟机磁盘文件
(2)重新定义虚拟机配置文件
通过导出备份的配置文件恢复原KVM虚拟机的定义,并重新定义虚拟机
# mv /etc/libvirt/qemu/kvmname.bak /etc/libvirt/qemu/kvmname.xml
# virsh define /etc/libvirt/qemu/kvmname.xml
8.编辑KVM虚拟机配置文件
# virsh edit kvmname
virsh edit 将调用vi命令编辑配置文件。也可以直接通过vi编辑配置文件,不建议这样做
9.virsh console控制台管理linux虚拟机
# virsh console kvmname
10.其他virsh命令
(1)挂起服务器
# virsh suspend kvmname
(2)恢复服务器
# virsh resume kvmname
virsh命令丰富,仅提供以上思路。
KVM虚拟化技术(五)虚拟机管理的更多相关文章
- CentOS7.1 KVM虚拟化之经常使用管理虚拟机命令(3)
一.查看虚拟机列表及状态 [root@kvm01 ~]# virsh list --all Id Name State ---------------------------------------- ...
- KVM虚拟化技术
KVM虚拟化技术 Qemu-kvm kvm virt-manager VNC Qemu-kvm创建和管理虚拟机 一.KVM简介 KVM(名称来自英语:Kernel-basedVirtual Machi ...
- [转] KVM虚拟化技术生态环境介绍
KVM虚拟化技术生态环境介绍 http://xanpeng.github.io/wiki/virt/kvm-virtulization-echosystem-intro.html kvm和qemu/q ...
- KVM虚拟化技术(七)虚拟机配置文件
KVM虚拟机的配置文件在/etc/libvirt/qemu/下,为xml文件 整体结构如下: <domain type='kvm'> 虚拟机整体信息 系统信息 硬件资源特性 突发事件处理 ...
- KVM虚拟化技术(二)KVM介绍
KVM:Kernel Virtual Machine KVM是基于虚拟化扩展的x86硬件,是Linux完全原生的全虚拟化解决方案.部分半虚拟化支持,主要是通过半虚拟网络驱动程序的形式用于Linux和W ...
- 《KVM虚拟化技术实战和原理解析》读书笔记(十几篇)
第一章和第二章 第一章 虚拟化和云计算 Saas(软件即服务):将已经部署好的软件作为一种服务来提供,比如:Google Docs, Google Apps Paas(平台即服务):将开发环境作为一种 ...
- KVM虚拟化技术(一)虚拟化简介
一 .虚拟化 虚拟化是指计算机元件在虚拟的基础上而不是真实的基础上运行.虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程.CPU的虚拟化技术可以单CPU模 拟多CPU并行,允许一个平台同时运行多个 ...
- KVM虚拟化技术实战全过程
今天准备开始.................... centos安装-kvm 教程: http://www.linuxidc.com/Linux/2017-01/140007.htm http:// ...
- VMware 虚拟化技术 创建虚拟机
原文地址:https://www.linuxidc.com/Linux/2017-03/141972.htm 云最成熟的架构是IaaS(Infrastructure as a Service),其中用 ...
- kvm虚拟化安装及虚拟机创建
1.开启虚拟化(VMware虚拟机为例),安装centos7操作系统. 2.查看CPU是否开启虚拟化 #zgrep "vmx" /proc/cpuinfo 3.配置yum源,通过 ...
随机推荐
- JS一个算法题
题目:实现超出整数存储范围的两个大整数想加function(a,b).注意:参数a和b以及函数返回值都是字符串. 目的:考算法, 基本逻辑. 我实现的基本思路是: ①两个数字字符串长度补成一样,用字符 ...
- 释放linux的buff/cache
有个linux的服务器,2G内存的,今天登上去一看,内存竟然被占得满满的. ssh上去执行了free. free -m total used free shared buff/cache availa ...
- gulp 配置达到实现import export支持
gulp.task('tojs', () => { return gulp.src('./es/**/*.js') .pipe(babel({ babelrc: false, plugins: ...
- python re模块和collections
re模块下的常用方法 import re ret = re.findall('a', 'eva egon yuan') # 返回所有满足匹配条件的结果,放在列表里 print(ret) #结果 : [ ...
- CF603EPastoral Oddities
/* LCT管子题(说的就是你 水管局长) 首先能得到一个结论, 那就是当且仅当所有联通块都是偶数时存在构造方案 LCT动态加边, 维护最小生成联通块, 用set维护可以删除的边, 假如现在删除后不影 ...
- MySQL · 最佳实践 · 分区表基本类型
MySQL · 最佳实践 · 分区表基本类型 MySQL分区表概述 随着MySQL越来越流行,Mysql里面的保存的数据也越来越大.在日常的工作中,我们经常遇到一张表里面保存了上亿甚至过十亿的记录.这 ...
- Java并发编程:Java Thread 的 run() 与 start() 的区别
1. sleep 和 wait 方法解释 sleep()方法是Thread类里面的,主要的意义就是让当前线程停止执行,让出cpu给其他的线程,但是不会释放对象锁资源以及监控的状态,当指定的时间到了之后 ...
- [Unity工具]批量修改Texture
BatchModifyTexture.cs using UnityEngine; using System.Collections; using UnityEditor; using System.I ...
- 安装JavaFX Scene Builder,并配置到Eclipse
转载自:https://www.yiibai.com/javafx/install-javafx-scene-builder-into-eclipse.html 1-JavaFX Scene Buil ...
- python中str的索引、切片
1 a = "hello" 2 a1 = a[1] 3 a2 = a[0:2] 4 print(a1) 5 print(a2) 我们通过索引获取字符串中指定位数的字符 通过切片获取 ...