关于KVM
1).KVM是开源软件,全称是kernel-based virtual machine(基于内核的虚拟机)。
2).是x86架构且硬件支持虚拟化技术(如 intel VT 或 AMD-V)的Linux全虚拟化解决方案。
3).它包含一个为处理器提供底层虚拟化 可加载的核心模块kvm.ko(kvm-intel.ko或kvm-AMD.ko)。
4).KVM还需要一个经过修改的QEMU软件(qemu-kvm),作为虚拟机上层控制和界面。
5).KVM能在不改变linux或windows镜像的情况下同时运行多个虚拟机,(它的意思是多个虚拟机使用同一镜像)并为每一个虚拟机配置个性化硬件环境(网卡、磁盘、图形适配器……)。
6).在主流的Linux内核,如2.6.20以上的内核均已包含了KVM核心。
KVM基本配置
1、检查服务是否安装
由于我安装RHEL6.4的时候选择的是base server,所以缺少了虚拟化的包!
# virsh list --all //查看现有的所有虚拟机
错误:Failed to reconnect to the hypervisor //不能链接到libvirtd服务
错误:无效的连接
错误:内部错误 Unable to locate libvirtd daemon in /usr/sbin (to override, set $LIBVIRTD_PATH to the name
2、安装libvir服务
yum -y install libvirt virt-viewer vnc-server tigervnc-server
3、启动服务
/etc/init.d/libvirtd start
centos安装服务启动可能遇到报错
问题原因:older version of libvirt-daemon-driver-storage-rbd usually used in older RHEL 7.x version which is missing the librbd1 dependency。(动态链接库缺失)
缺失的链接库文件在librbd1包里
解决方法如下:
yum update librbd1
然后再查所有的虚拟机就正常了
KVM网络的桥接
ifconfig查看
你学会发现此刻多了一个虚拟网桥
创建虚拟机
创建文件大小为5G (非必须条件,我这里是为了创建openstack镜像)
qemu-img create -f qcow2 linux6.4.qcow2 5G
创建虚拟机
virt-install --virt-type kvm --name linux-1 --ram 1024 --cdrom=/os/rhel-server-6.4-x86_64-dvd.iso --disk path=/os/linux6.4.qcow2,size=10,format=qcow2 --network bridge=virbr0 --graphics vnc,listen=0.0.0.0 --noautoconsole --os-type=linux --os-variant=rhel6
name虚拟机名字
ram内存大小
cdroom安装介质
os-type系统类型
disk磁盘
graphics显示
network指向网桥br0
创建的虚拟机的地址需要与新生成的网桥地址同段才能建立通信。
虚拟机管理
virsh list #查看运行中的虚拟机
virsh list --all#查看所有的虚拟机
ps -ef|grep qemu #查看qemu的进程 进行强制关闭虚拟机
virsh shutdown linux-1 #关闭linux-1域
virsh start linux-1 #启动linux-1域
virsh destroy linux-1 #删除linux-1域
virsh undefine --managed-save linux-1 #删除虚拟机,删除前必须先关机