虚拟化服务--KVM虚拟机的使用与管理

各种虚拟化的软件品牌与服务
VMware:VMware Workstation vSphere
Microsoft: VirtuaLPC Hyper-V
RenHat:KVM RHEV
Citrix:Xen
Oracle: Oracle VM VirtualBox
其中KVM和vSphere这两种属于企业级的服务我们今天了解的是KVM服务

KVM是linux内核的模块,它需要CPU的支持,采用硬件辅助虚拟化技术Intel-VT,AMD-V ,内存的相关如intel的EPT和AMD的PVI技术

虚拟机的组成:内核虚拟化模块(KVM)
系统设备仿真(QEMU)
虚拟机管理程序(LIBVIRT)
一个xml文件(虚拟机配置文件)在/etc/libvirt/qemu/
一个磁盘镜像文件(虚拟机的硬盘)在/var/libvirt/images/

安装kvm虚拟化服务平台需要的软件
qemu-kvm 为kvm提供底层仿真支持
libvirt-daemon 守护进程,管理虚拟机
libvirt-client 用户端软件,提供客户端管理命令
libvirt-daemon-driver-qemu libvirtd连接qemu的驱动

非必要软件
virt-iinstall 系统安装工具
virt-manager 图形管理工具
virt-v2v 虚拟机迁移工具
virt-p2v 物理机迁移工具

安装kvm软件
[root@localhost ~]#yum -y install qemu-kvm libvirt-daemon libvt-daemon-driver-qemu libvirt-client
启动kvm服务
[root@localhost ~]# systemctl start libvirtd.service 

kvm虚拟机的管理

命令合适:virsh 控制指令 [虚拟机名称] [参数]
列出虚拟机

[root@room9pc01 ~]# virsh list --all    列出所有
 Id    名称                         状态
----------------------------------------------------
 1     db1                            running
 2     web1                           running
 3     test                           running
 4     node5                          running
 -     tedu_node01                    关闭
 -     win2008                        关闭

[root@room9pc01 ~]# virsh list    列出开启的虚拟机
 Id    名称                         状态
----------------------------------------------------
 1     db1                            running
 2     web1                           running
 3     test                           running
 4     node5                          running

[root@room9pc01 ~]# 

启动虚拟机

[root@room9pc01 ~]# virsh start db1
域 db1 已开始

停止虚拟机

[root@room9pc01 ~]# virsh shutdown db1
域 db1 被关闭

重启虚拟机

[root@room9pc01 ~]# virsh reboot web1
域 web1 正在被重新启动

强制停止虚拟机

[root@room9pc01 ~]# virsh destroy db1
域 db1 被删除

console 真机连接虚拟机

[root@room9pc01 ~]# virsh console web1
连接到域 web1
换码符为 ^]

CentOS Linux 7 (Core)
Kernel 3.10.0-862.el7.x86_64 on an x86_64

localhost login: root
Password: 

edit 修改虚拟机的配置

[root@room9pc01 ~]# virsh edit web1

autostart 设置虚拟机自启动

[root@room9pc01 ~]# virsh autostart web1
域 web1标记为自动开始

domiflist 查看虚拟机网卡信息

[root@room9pc01 ~]# virsh domiflist web1
接口     类型     源        型号      MAC
-------------------------------------------------------
vnet1      bridge     vbr        virtio      52:54:00:86:c5:cf

domblklist 查看虚拟机硬盘信息

[root@room9pc01 ~]# virsh domblklist web1
目标     源
------------------------------------------------
vda        /var/lib/libvirt/images/web1.img

虚拟网络的管理

virsh 虚拟网络管理 和 管理虚拟机的区别就一个 选项前面家 net

virsh net-list [–all] 列出虚拟机网络
net-statr 启动虚拟交换机
net-destroy 强制停止虚拟交换机
net-define 根具xml文件 创建虚拟网络
net-undefine 删除一个细腻网络设备
net-edit 修改虚拟交换机的配置
net-autostatr 设置虚拟机开机自启

命令都一样,这里不多说了

虚拟机的磁盘管理命令qemu-img

命令格式:qemu-img 命令 参数 块问价名称 大小
create 创建一个磁盘
convert 转换磁盘格式
info 查看磁盘信息
resize 扩容磁盘空间

创建虚拟机

1.创建磁盘镜像文件
[root@room9pc01 images]# qemu-img create -b .node_base.qcow2 -f qcow2 yxt.img 20G
Formatting 'yxt.img', fmt=qcow2 size=21474836480 backing_file='.node_base.qcow2' encryption=off cluster_size=65536 lazy_refcounts=off 
[root@room9pc01 images]# ls
content  lost+found       tedu-wallpaper-01.png  web1.img
db1.img  node5.img        test.img               win.img
iso      tedu_node01.img  virt                   yxt.img
2.查询镜像文件信息
[root@room9pc01 images]# qemu-img info yxt.img
image: yxt.img
file format: qcow2
virtual size: 20G (21474836480 bytes)
disk size: 196K
cluster_size: 65536
backing file: .node_base.qcow2       后端盘位置
Format specific information:
    compat: 1.1
    lazy refcounts: false
3.创建xml配置文件
[root@room9pc01 images]# vim /etc/libvirt/qemu/yxt.xml

<domain type='kvm'>
  <name>yxt</name>
  <memory unit='KB'>1524000</memory>
  <currentMemory unit='KB'>1524000</currentMemory>
  <vcpu placement='static'>2</vcpu>
  <os>
    <type arch='x86_64' machine='pc'>hvm</type>
    <boot dev='hd'/>
    <bootmenu enable='yes'/>
    <bios useserial='yes'/>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough'>
  </cpu>
  <clock offset='localtime'/>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
 <emulator>/usr/libexec/qemu-kvm</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2'/>
      <source file='/var/lib/libvirt/images/yxt.img'/>
      <target dev='vda' bus='virtio'/>
    </disk>
    <interface type='bridge'>
      <source bridge='vbr'/>
      <model type='virtio'/>
    </interface>
    <channel type='unix'>
      <target type='virtio' name='org.qemu.guest_agent.0'/>
    </channel>
    <serial type='pty'></serial>
    <console type='pty'>
      <target type='serial'/>
    </console>
    <memballoon model='virtio'></memballoon>
  </devices>
</domain>

4.定义xml文件
[root@room9pc01 images]# virsh define /etc/libvirt/qemu/yxt.xml
5.确认虚拟机创建成功
[root@room9pc01 images]# virsh list --all 
 Id    名称                         状态
----------------------------------------------------
 2     web1                           running
 3     test                           running
 4     node5                          running
 -     db1                            关闭
 -     tedu_node01                    关闭
 -     win2008                        关闭
 -     yxt                            关闭

运行虚拟机yxt

[root@room9pc01 images]# virsh start yxt
域 yxt 已开始

连接虚拟机yxt

[root@room9pc01 images]# virsh console yxt
连接到域 yxt
换码符为 ^]

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值