KVM的安装及简单操作

KVM的介绍:

  KVM是Kernel-based Virtual Machine的缩写,及基于Linux内核的虚拟机,是一种完全虚拟化的解决方案,也就是说普通的操作系统不需要经过修改就可以在KVM上面进行运行。它使用Linux自身的调度器进行管理,因此相比较xen而言,其核心源码很少。但是KVM虚拟化需要硬件的支持,是硬件的虚拟化的一种。

  当然准确点的说,KVM是Linux的一个模块。可以用modprobe去加载KVM模块,之后就可以使用KVM模块创建虚拟机,实现虚拟内存的分配,虚拟CPU寄存器的读写以及管理虚拟CPU的运行。但仅仅有KVM模块是不够的,因为用户无法直接控制内核模块去做事情,所以还需要一个用户空间的工具---QEMU,用来模拟PC硬件的用户空间组件,模拟I/O设备模型以及提供访问外设的途径。

  KVM的基本架构

 

KVM的安装

 前提:

centos一台,网卡一块,虚拟化功能已经开启

1、yum源配置

[root@localhost ~]# df -TH
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root xfs 20G 5.9G 14G 31% /
devtmpfs devtmpfs 2.7G 0 2.7G 0% /dev
tmpfs tmpfs 2.7G 0 2.7G 0% /dev/shm
tmpfs tmpfs 2.7G 11M 2.7G 1% /run
tmpfs tmpfs 2.7G 0 2.7G 0% /sys/fs/cgroup
/dev/sda1 xfs 1.1G 179M 885M 17% /boot
tmpfs tmpfs 533M 29k 533M 1% /run/user/0
/dev/sr0 iso9660 4.5G 4.5G 0 100% /mnt
[root@localhost ~]# cat /etc/yum.repos.d/Cent7.repo
[Myb]
name=Cent7
baseurl=file:///mnt
enable=1
gpgcheck=0
[root@localhost ~]#

2、查看当前宿主机有没有开启虚拟化

[root@localhost ~]# grep -E '(vmx|svm)' /proc/cpuinfo
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch epb tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap xsaveopt dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch epb tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap xsaveopt dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp

当有提示的话则表明已经开启虚拟化

3、开始安装kvm依赖包

 yum install libvirt* virt-* qemu-kvm* -y

libvirt    ###虚拟机管理
virt          ###虚拟机安装克隆
qemu-kvm      ###管理虚拟机磁盘
 
modprobe kvm    开启虚拟机kvm模块
lsmod | grep kvm    查看是否开启
  

[root@localhost ~]# lsmod | grep kvm
kvm_intel 174841 0
kvm 578518 1 kvm_intel
irqbypass 13503 1 kvm
[root@localhost ~]#

启动服务:
systemctl enable libvirtd.service
systemctl start libvirtd.server

4、 创建虚拟机磁盘并上传镜像

磁盘创建有两种模式:
raw和qcow2
此处是使用qcow2,具体区别:

[root@localhost opt]# qemu-img create -f qcow2 /opt/centos7-x86_64.qcow2 10G
Formatting '/opt/centos7-x86_64.qcow2', fmt=qcow2 size=10737418240 encryption=off cluster_size=65536 lazy_refcounts=off

 

注意:此提示是正确的
查看创建的硬盘和上传的镜像

5、创建网桥br0

[root@localhost ~]#brctl addbr br0
[root@localhost ~]#virsh iface-bridge ens33 br0
查看桥接网卡信息:

[root@localhost ~]# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.000c2944096a yes ens33
virbr0 8000.525400ae971b yes virbr0-nic
vnet0
[root@localhost ~]# 

查看网卡信息变为:

 

重启网卡:

[root@localhost ~]# systemctl restart network

查看宿主机网桥

删除宿主网桥:
brctl delbr 名字

查看当前IP地址:

6、创建虚拟机:

[root@localhost ~]# virt-install --name centos7-1 --virt-type kvm --ram 1024 --cdrom=/opt/CentOS-7.2-x86_64-DVD-1511.iso --disk path=/opt/centos7-x86_64.qcow2 --network bridge=br0 --graphics vnc,listen=0.0.0.0,port=5910 --noautoconsole

7、基本操作命令:

 
virt-install  #建立kvm虚拟机
virsh list  #查看正在运行的KVM虚拟机
virsh list --all  #查看所有KVM虚拟机
virsh start name   #启动KVM虚拟机
virsh shutdown name #正常关闭KVM虚拟机
virsh destroy name  #强制关闭KVM虚拟机(类似于直接断电)
virsh suspend name  #挂起KVM虚拟机
virsh resume name  #恢复挂起的KVM虚拟机
virsh dumpxml name  #备份虚拟机的xml文件
virsh edit name  #编辑KVM虚拟机的xml配置文件
virsh autostart name  #随着宿机的开启启动虚拟机
virsh undefine name  #彻底删除KVM虚拟机,不可逆,如果想找回来,需要备份/etc/libvirt/qemu的xml文件)
 

8、其他操作

磁盘管理
添加磁盘
创建一个qcow2的虚拟磁盘
qemu-img create -f qcow2 /opt/centos7_bak.qcow2  10G
查看创建的硬盘信息
qemu-img info 硬盘名字
为虚拟机添加硬盘
virsh attach-disk centos7-1 /opt/centos7_bak.qcow2 vdb --live --cache=none --subdriver=qcow2
参数说明
vdb        第二块硬盘
--live        热添加
--subdriver        驱动类型
 
查看现有磁盘:
virsh domblklist centos7-1
 
卸载磁盘
virsh detach-disk centos7-1  vdb
qemu-img resize centos7_bak.qcow2 +1G
虚拟机里格式磁盘mkfs.xfs /dev/vdb
 
 
 
快照
创建快照
virsh snapshot-create centos7-1
查看主机的快照列表
virsh snapshot-list  centos7-1
#对虚拟机搞个破坏
还原快照
virsh snapshot-revert centos7-1 --snapshotname 1516607756
删除快照
virsh snapshot-delete  centos7-1 --snapshotname 1516607756
快照路径
/var/lib/libvirt/qemu/snapshot
 

转载于:https://www.cnblogs.com/blamer/p/10169905.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值