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
[root@localhost ~]# lsmod | grep kvm
kvm_intel 174841 0
kvm 578518 1 kvm_intel
irqbypass 13503 1 kvm
[root@localhost ~]#
4、 创建虚拟机磁盘并上传镜像
[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 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
查看当前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