****************你们好,我是霸王卸甲,今天给你们带来的是安装KVM。。。 kvm:Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20以后集成在Linux的各个主要发行版本中。它使用Linux自身的调度器进行管理,因此相对于Xen,其核心源码不多。KVM目前已成为学术界的主流VMM之一。
KVM的虚拟化须要硬件支持(如Intel VT技术或者AMD V技术)。是基于硬件的彻底虚拟化。而Xen早期则是基于软件模拟的Para-Virtualization,新版本则是基于硬件支持的彻底虚拟化。但Xen自己有本身的进程调度器,存储管理模块等,因此代码较为庞大。广为流传的商业系统虚拟化软件VMware ESX系列是基于软件模拟的Full-Virtualization。linux
查看CPU是否支持VT技术:
#cat /proc/cpuinfo | egrep 'vmx|svm'
flags : fpu vme de pse tsc msr pae mce cx8 apicmtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2
ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx tm2 ssse3 cx16
xtpr pdcm dca sse4_1 lahf_lm dts tpr_shadow vnmi flexpriorityes6
需求内核(rhel6以上):centos
2.6.32-358.el6.x86_64
安装软件:
rhel6:api
rhel7: # yum install *virt* *qemu* -y # yum install libvirt qemu-kvm virt-manager -y
启动服务:
rhel6:网络
rhel7: # systemctl start libvirtd
查看kvm模块加载:app
kvm_intel 53484 3 kvm 316506 1 kvm_intel #
存储池:
1.建立基于文件夹的存储池(目录)ide
2.定义存储池与其目录 # virsh pool-define-as vmdisk --type dir --target /data/vmfs 3.建立已定义的存储池 (1)建立已定义的存储池 # virsh pool-build vmdisk (2)查看已定义的存储池,存储池不激活没法使用。 #virsh pool-list --all 4.激活并自动启动已定义的存储池 # virsh pool-start vmdisk # virsh pool-autostart vmdisk 这里vmdisk存储池就已经建立好了,能够直接在这个存储池中建立虚拟磁盘文件了。 5.在存储池中建立虚拟机存储卷 (1)在存储池中建立虚拟机存储卷 # virsh vol-create-as vmdisk oeltest03.qcow2 20G --format qcow2 (2)根据建立的虚拟机存储卷安装虚拟机 #virt-install --name=oeltest03 --os-variant=RHEL6 --ram 1024 --vcpus=1 --disk path=/data/vmfs/oeltest03.qcow2,format=qcow2,size=20,bus=virtio --accelerate --cdrom /data/iso/oel63x64.iso --vnc --vncport=5910 --vnclisten=0.0.0.0 --network bridge=br0,model=virtio –noautoconsole 注1:KVM存储池主要是体现一种管理方式,能够经过挂载存储目录,lvm逻辑卷的方式建立存储池,虚拟机存储卷建立完成后,剩下的操做与无存储卷的方式无任何区别了。 注2:KVM存储池也要用于虚拟机迁移任务。
6.存储池相关管理命令
(1)在存储池中删除虚拟机存储卷flex
(2)取消激活存储池 # virsh pool-destroy vmdisk (3)删除存储池定义的目录/data/vmfs # virsh pool-delete vmdisk (4)取消定义存储池 # virsh pool-undefine vmdisk
到此kvm存储池配置与管理操做完毕。ui
命令方式安装虚拟机:
通常在建立虚拟机前,若是须要桥接虚拟机,就须要建立桥接网口,具体看本身的需求。建立一个虚拟机,能够经过virt-manager来完成,图形化界面,可是这个功能不全,不能为所欲为,例如,须要将虚拟机建立在不一样的位置上,毕竟默认的存储是在/var/lib/libvirt/images下,没法进行存储的管理,因此,在建立虚拟机以前,须要先建立一个存储池。url
存储池:
存储池(Storage pools)是放置虚拟机的存储位置,能够是本地的,也能够是网络存储,本实例放置在卷(Volume)上。
在建立卷以前,先要建立存储池,存储池能够创建在好几种方式的存储上,如今主要创建一个基于目录的存储池。
首先建立了一个LVM,步骤以下:
1.使用lvcreate命令,建立一个名为lv_kvm,大小为250G的逻辑卷,卷组名为VolGroup(VolGroup是已经建立好的卷组,建立方法在上一篇文章中)
#lvcreate -L 250G -n lv_kvm VolGroup
2.使用mkfs.ext4命令在逻辑卷lvdata1上建立ext4文件系统.
#mkfs.ext4 /dev/VolGroup/lv_kvm
3.将建立好的文件系统/lv_kvm挂载到/kvm上.(建立好以后,会在/dev/mapper/生成一个软链接名字为"卷组-逻辑卷")
#mount /dev/VolGroup/lv_kvm /kvm
4.创建存储池的目录
#mkdir /kvm/images
5.配置SELinux文件上下文,这个主要是打开SELinux设定,否则虚拟机没法访问存储文件(没有深究缘由)
#semanage fcontext -a -t virt_image_t /kvm/images
6.建立基于文件夹(目录)的存储池
#virsh pool-define-as kvm_images --type dir --target /kvm/images
7.查看建立的存储池信息
Name State Autostart ----------------------------------------- default inactive yes kvm_images inactive no 中止默认存储池: # virsh pool-destroy default Pool default destroyed
8.启动存储池
# virsh pool-list --all Name State Autostart ----------------------------------------- default inactive yes kvm_images active no
9.建立了存储池后,就能够建立一个卷,这个卷是用来作虚拟机的硬盘
#virsh vol-create-as --pool kvm_images --name TAF05.img --capacity 10G --format qcow2
10.在存储卷上安装虚拟主机
10.1 配置bridge方式:
建立桥接器
DEVICE=br0 NM_CONTROLLED=no TYPE=Bridge BOOTPROTO=static IPADDR=192.168.0.230 PREFIX=24 GATEWAY=192.168.1.254 DNS1=8.8.8.8 ONBOOT=yes USERCTL=no DELAY=0 将物理接口桥接到桥接器 # cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 NM_CONTROLLED=no TYPE=Ethernet BOOTPROTO=static ONBOOT=yes USERCTL=no BRIDGE=br0 重启加载网络服务 # service network restart 查看当前桥接状况 # brctl show 10.2 安装 # virt-install --connect qemu:///system -n vm3 -r 512 -f /virhost/vmware/vm2.img -s 7 --vnc --os-type=linux --os-variant=rhel6 --vcpus=1 --network bridge=br0 -c /var/ftp/soft/rhel6u4.iso
彻底文本方式安装:
#virt-install --connect qemu:///system -n vm7 -r 2024 --disk path=/var/lib/libvirt/images/vm7.qcow2,size=10 --os-type=linux --os-variant=centos7.0 --vcpus=1 --location=ftp://10.18.42.251/centos7u4 -x console=ttyS0 --nographics
-n 虚拟机名字
-r 内存 必须2个G以上
1.取消安装ctrl+] 而后在ctrl+c
2.取消安装以后,虚拟机名字必须改,镜像名字必须改
3.磁盘镜像名字不须要手动图形建立了,直接指定名字就能够
4.宿主机剩余内存必需要大一点
yum -y update
排错:
安装过程当中:
手动配置IP地址
到url位置找不到路径,要返回去手动选择url,从新配置url为ftp://192.168.100.230/rhel6u4,这里的ip不要写127.0.0.1而是br0的ip
==================
根据配置文件建立虚拟机:
1.须要有磁盘文件:
2.须要有配置文件:配置文件须要修改必要的东西
3.建立虚拟机: