一、为了提高内存、硬盘、网络的性能,需要支持半虚拟化;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虚拟化技术(五)虚拟机管理的更多相关文章

  1. CentOS7.1 KVM虚拟化之经常使用管理虚拟机命令(3)

    一.查看虚拟机列表及状态 [root@kvm01 ~]# virsh list --all Id Name State ---------------------------------------- ...

  2. KVM虚拟化技术

    KVM虚拟化技术 Qemu-kvm kvm virt-manager VNC Qemu-kvm创建和管理虚拟机 一.KVM简介 KVM(名称来自英语:Kernel-basedVirtual Machi ...

  3. [转] KVM虚拟化技术生态环境介绍

    KVM虚拟化技术生态环境介绍 http://xanpeng.github.io/wiki/virt/kvm-virtulization-echosystem-intro.html kvm和qemu/q ...

  4. KVM虚拟化技术(七)虚拟机配置文件

    KVM虚拟机的配置文件在/etc/libvirt/qemu/下,为xml文件 整体结构如下: <domain type='kvm'> 虚拟机整体信息 系统信息 硬件资源特性 突发事件处理 ...

  5. KVM虚拟化技术(二)KVM介绍

    KVM:Kernel Virtual Machine KVM是基于虚拟化扩展的x86硬件,是Linux完全原生的全虚拟化解决方案.部分半虚拟化支持,主要是通过半虚拟网络驱动程序的形式用于Linux和W ...

  6. 《KVM虚拟化技术实战和原理解析》读书笔记(十几篇)

    第一章和第二章 第一章 虚拟化和云计算 Saas(软件即服务):将已经部署好的软件作为一种服务来提供,比如:Google Docs, Google Apps Paas(平台即服务):将开发环境作为一种 ...

  7. KVM虚拟化技术(一)虚拟化简介

    一 .虚拟化 虚拟化是指计算机元件在虚拟的基础上而不是真实的基础上运行.虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程.CPU的虚拟化技术可以单CPU模 拟多CPU并行,允许一个平台同时运行多个 ...

  8. KVM虚拟化技术实战全过程

    今天准备开始.................... centos安装-kvm 教程: http://www.linuxidc.com/Linux/2017-01/140007.htm http:// ...

  9. VMware 虚拟化技术 创建虚拟机

    原文地址:https://www.linuxidc.com/Linux/2017-03/141972.htm 云最成熟的架构是IaaS(Infrastructure as a Service),其中用 ...

  10. kvm虚拟化安装及虚拟机创建

    1.开启虚拟化(VMware虚拟机为例),安装centos7操作系统. 2.查看CPU是否开启虚拟化 #zgrep  "vmx" /proc/cpuinfo 3.配置yum源,通过 ...

随机推荐

  1. JS一个算法题

    题目:实现超出整数存储范围的两个大整数想加function(a,b).注意:参数a和b以及函数返回值都是字符串. 目的:考算法, 基本逻辑. 我实现的基本思路是: ①两个数字字符串长度补成一样,用字符 ...

  2. 释放linux的buff/cache

    有个linux的服务器,2G内存的,今天登上去一看,内存竟然被占得满满的. ssh上去执行了free. free -m total used free shared buff/cache availa ...

  3. gulp 配置达到实现import export支持

    gulp.task('tojs', () => { return gulp.src('./es/**/*.js') .pipe(babel({ babelrc: false, plugins: ...

  4. python re模块和collections

    re模块下的常用方法 import re ret = re.findall('a', 'eva egon yuan') # 返回所有满足匹配条件的结果,放在列表里 print(ret) #结果 : [ ...

  5. CF603EPastoral Oddities

    /* LCT管子题(说的就是你 水管局长) 首先能得到一个结论, 那就是当且仅当所有联通块都是偶数时存在构造方案 LCT动态加边, 维护最小生成联通块, 用set维护可以删除的边, 假如现在删除后不影 ...

  6. MySQL · 最佳实践 · 分区表基本类型

    MySQL · 最佳实践 · 分区表基本类型 MySQL分区表概述 随着MySQL越来越流行,Mysql里面的保存的数据也越来越大.在日常的工作中,我们经常遇到一张表里面保存了上亿甚至过十亿的记录.这 ...

  7. Java并发编程:Java Thread 的 run() 与 start() 的区别

    1. sleep 和 wait 方法解释 sleep()方法是Thread类里面的,主要的意义就是让当前线程停止执行,让出cpu给其他的线程,但是不会释放对象锁资源以及监控的状态,当指定的时间到了之后 ...

  8. [Unity工具]批量修改Texture

    BatchModifyTexture.cs using UnityEngine; using System.Collections; using UnityEditor; using System.I ...

  9. 安装JavaFX Scene Builder,并配置到Eclipse

    转载自:https://www.yiibai.com/javafx/install-javafx-scene-builder-into-eclipse.html 1-JavaFX Scene Buil ...

  10. python中str的索引、切片

    1 a = "hello" 2 a1 = a[1] 3 a2 = a[0:2] 4 print(a1) 5 print(a2) 我们通过索引获取字符串中指定位数的字符 通过切片获取 ...