设为首页 收藏本站
查看: 942|回复: 0

[经验分享] Linux KVM构建及管理

[复制链接]

尚未签到

发表于 2018-5-16 11:06:53 | 显示全部楼层 |阅读模式
  KVM构建及管理

    虚拟化概述
Virtualization(虚拟化)
x个物理资源 ---->  y个逻辑资源
实现程度:完全虚拟化
部分虚拟化
硬件辅助(CPU)虚拟化
  KVM

    打开virt-manager客户端工具
[root@room1pc32 桌面]# virt-manager  
手动新建一台虚拟机:  
虚拟机名字:example
1.查看KVM节点(服务器)信息
virsh nodeinfo
[root@room1pc32 桌面]# virsh nodeinfo
CPU 型号:        x86_64
CPU:               4
CPU 频率:        3299 MHz
CPU socket:        1
每个 socket 的内核数: 2
每个内核的线程数: 2
NUMA 单元:       1
内存大小:      8048744 KiB
2.列出虚拟机
virsh list [--all]
[root@room1pc32 桌面]# virsh list
Id    名称                         状态
----------------------------------------------------
7     example                        running
[root@room1pc32 桌面]# virsh list --all
Id    名称                         状态
----------------------------------------------------
7     example                        running
-     classroom                      关闭
-     desktop                        关闭
-     server                         关闭
-     win2008                        关闭
3.列出虚拟网络
virsh net-list [--all]
4.查看指定虚拟机的信息
virsh dominfo 虚拟机名称
[root@room1pc32 桌面]# virsh dominfo win2008
Id:             -
名称:       win2008
UUID:           3f55c551-dddc-ec8d-b082-34d17367a403
OS 类型:    hvm
状态:       关闭
CPU:          2
最大内存: 2097152 KiB
使用的内存: 0 KiB
持久:       是
自动启动: 禁用
管理的保存: 否
安全性模式: selinux
安全性 DOI: 0
5.运行|重启|关闭指定的虚拟机器
virsh start|reboot|shutdown 虚拟机名
[root@room1pc32 桌面]# virsh start win2008
域 win2008 已开始
[root@room1pc32 桌面]# virsh shutdown win2008
域 win2008 被关闭
6.强行关闭指定的虚拟机
virsh destroy 虚拟机名称
[root@room1pc32 桌面]# virsh destroy win2008
域 win2008 被删除
7.将指定的虚拟机设置为开机自动运行
virsh autostart [--disable] 虚拟机名称
[root@room1pc32 桌面]# virsh autostart win2008
域 win2008标记为自动开始
[root@room1pc32 桌面]# virsh autostart --disable win2008
域 win2008取消标记为自动开始
  在Linux 中KVM 虚拟机组成

xml配置文件(虚拟机描述文件):定义虚拟机的名称,UUID,CPU,内存,虚拟磁盘,网卡等各种参数设置
/etc/libvirt/qemu/*.xml
磁盘镜像文件:保存虚拟机的操作系统及文档数据,镜像路径取决于xml配置文件中的定义
/var/lib/libvirt/images/
用一个大的文件充当
[root@room1pc32 桌面]# du -sh /var/lib/libvirt/images/    #统计文件目录大小
51G    /var/lib/libvirt/images/
细节: 模版虚拟机example,删除Channel的设备
通过example虚拟机,生成新的虚拟机
1.关闭example虚拟机
[root@room1pc32 桌面]# virsh destroy example
域 example 被删除
2.通过example虚拟机,磁盘文件复制一份
[root@room1pc32 桌面]# cd /var/lib/libvirt/images/
[root@room1pc32 images]# qemu-img info example.qcow2
image: example.qcow2
file format: qcow2
virtual size: 9.0G (9663676416 bytes)
disk size: 3.1G
cluster_size: 65536
Format specific information:
compat: 1.1
lazy refcounts: true
[root@room1pc32 images]# cp example.qcow2 test01.qcow2
3.通过example虚拟机,复制虚拟机描述文件
[root@room1pc32 images]# cd /etc/libvirt/qemu/
[root@room1pc32 qemu]# cp example.xml test01.xml
修改 虚拟机名称 UUID 虚拟机
...
<name>test01</name>                         #9行
<uuid>910dd9c6-567d-475b-812a-18f6bacfa104</uuid>       #10行
<source file='/var/lib/libvirt/images/test01.qcow2'/>       #41行
<mac address='12:54:00:11:2e:8b'/>                  #75行
....
[root@room1pc32 qemu]# uuidgen  #随即生成UUID
910dd9c6-567d-475b-812a-18f6bacfa104
4.导入新虚拟机信息
[root@room1pc32 qemu]# virsh define /etc/libvirt/qemu/test01.xml
定义域 test01(从 /etc/libvirt/qemu/test01.xml)
5.验证
[root@room1pc32 qemu]# virsh list --all
导出xml配置文件
查看:virsh dumpxml 虚拟机名
备份:virsh dumpxml 虚拟机名 > 虚拟机名.xml
对虚拟机的配置进行调整
编辑:virsh edit 虚拟机名
导入虚拟机
virsh define XML描述文件
删除虚拟机
virsh undefine 虚拟机名
  快速重建虚拟机

    COW写时复制 copy on wirte
– 直接映射原始盘的数据内容
– 当原始盘的旧数据有修改时,在修改之前自动将旧数据存入前端盘
– 对前端盘的修改不回写到原始盘
快速创建qcow前端盘
虚拟机的磁盘镜像文件格式 QCOW2
qemu-img 通过 -b 选项复用指定原始盘
-qemu-img create -f qcow2 -b 原始盘 前端盘
1.关闭虚拟机
[root@room1pc32 /]# virsh destroy example
2.生成前端盘
[root@room1pc32 /]# qemu-img create -f qcow2 -b /var/lib/libvirt/images/example.qcow2 /var/lib/libvirt/images/test02.qcow2
Formatting '/var/lib/libvirt/images/test02.qcow2', fmt=qcow2 size=9663676416 backing_file='/var/lib/libvirt/images/example.qcow2' encryption=off cluster_size=65536 lazy_refcounts=off
3.生成新的虚拟机
[root@room1pc32 /]# virsh edit example
编辑了域 test02 XML 配置。
4.导入新虚拟机信息
[root@room1pc32 /]# cd /etc/libvirt/qemu
[root@room1pc32 qemu]# virsh define test02.xml
定义域 test02(从 test02.xml)
5.验证
[root@room1pc32 qemu]# virsh list --all
  通过COW写时复制原理 我写了一个实现快速生成虚拟机脚本
http://blog.51cto.com/13558754/2057094
  离线访问虚拟机

    使用guestmount 工具(必须关闭SELinux)
– 支持离线挂载 raw、qcow2 格式虚拟机磁盘
– 可以在虚拟机关机的情况下,直接修改磁盘中的文档
– 方便对虚拟机定制、修复、脚本维护  
用法:
guestmount -a 虚拟机磁盘路径 -i /挂载点
[root@svr7 ~]# yum provides "*guestmount*"  #查看安装guestmount包
已加载插件:langpacks, product-id, search-disabled-repos, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
1:libguestfs-tools-c-1.28.1-1.55.el7.x86_64 : System administration tools for
: virtual machines
源    :dvd
匹配来源:
文件名    :/usr/bin/guestmount
文件名    :/usr/share/man/man1/guestmount.1.gz
[root@room1pc32 ~]# yum -y install libguestfs-tools
[root@room1pc32 桌面]# mkdir /opt/mnt
[root@room1pc32 桌面]# guestmount -a /var/lib/libvirt/images/rh7_node1.img -i /opt/mnt/
[root@room1pc32 桌面]# ls /opt/mnt
bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-460910-1-1.html 上篇帖子: linux字符处理 下篇帖子: linux location parameter
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表