首先什么是kvm我就简单的介绍一下,Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中。它使用Linux自身的调度器进行管理,所以相对于Xen,其核心源码很少。KVM目前已成为学术界的主流VMM之一。
视频地址
高清下载地址:链接: http://pan.baidu.com/s/1gduA3g3 密码: x27m
KVM的虚拟化需要硬件支持(如Intel VT技术或者AMD V技术)。是基于硬件的完全虚拟化。而Xen早期则是基于软件模拟的Para-Virtualization,新版本则是基于硬件支持的完全虚拟化。但Xen本身有自己的进程调度器,存储管理模块等,所以代码较为庞大。广为流传的商业系统虚拟化软件VMware ESX系列是基于软件模拟的Full-Virtualization。想要更详细的了解的话,各位就需要自行脑补了。我们获得kvm有多种方式,可以从官方下载源代码进行编译,也可以通过yum进行安装,当然啦用yum是最省事的,依赖什么的也都不需要我们一一安装了。
我们需要对一台服务器进行虚拟化需要以下步骤,我们就直接进入教程,大家看文字不懂可以查看视频教程。
准备工作: 1、centos6.6操作系统服务器一台(需要cpu支持kvm虚拟化)
2、需要安装的系统镜像,linux、ubuntu、windows都可以
3、连接服务器的工具
4、把软件源更新一下(yum update)
1、安装virtual - yum groupinstall Virtual*
2、检查是否开启成功
3、安装所需软件 - yum -y install kvm python-virtinst libvirt bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v tunctl
4、启动libvirtd
5、关闭selinux - vim /etc/selinux/config
- SELINUX=disabled#关闭selinux
- /usr/sbin/setenforce 0#执行这条命令selinux就不需要重启才生效了,会立即生效
6、关闭iptables
7、配置网卡信息设置桥接 - vim /etc/sysconfig/network-scripts/ifcfg-eth0
- eth0的网卡信息
- DEVICE=eth0
- BOOTPROTO=none
- ONBOOT=yes
- BRIDGE=br0#桥接网卡br0
- vim /etc/sysconfig/network-scripts/ifcfg-br0
- br0的网卡信息
- DEVICE=br0
- TYPE=Bridge
- BOOTPROTO=dhcp
- ONBOOT=yes
8、重启网络
9、检查桥接
10、转发 - echo 1 > /proc/sys/net/ipv4/ip_forward
11、开启监听vnc - vim /etc/libvirt/qemu.conf
- vnc_listen = “0.0.0.0"#修改vnc监听端口
12、安装虚拟机 - virt-install --name=win7 --ram 1024 --vcpus=2 --disk path=/var/lib/libvirt/images/win7,size=40 --accelerate --cdrom /mnt/win7.iso --graphics vnc,listen=0.0.0.0,password=123456,port=5920 --network bridge=br0 --force --autostart
- 参数说明:
- -n --name= 客户端虚拟机名称
- -r --ram= 客户端虚拟机分配的内存
- -u --uuid= 客户端UUID 默认不写时,系统会自动生成
- --vcpus= 客户端的vcpu个数
- -v --hvm 全虚拟化
- -p --paravirt 半虚拟化
- -l --location=localdir 安装源,有本地、nfs、http、ftp几种,多用于ks网络安装
- --vnc 使用vnc ,另有--vnclient=监听的IP --vncport =VNC监听的端口
- -c --cdrom= 光驱 安装途径
- --disk= 使用不同选项作为磁盘使用安装介质
- -w NETWORK, --network=NETWORK 连接客户机到主机网络
- -s --file-size= 使用磁盘映像的大小 单位为GB
- -f --file= 作为磁盘映像使用的文件
- --cpuset=设置哪个物理CPU能够被虚拟机使用
- --os-type=OS_TYPE 针对一类操作系统优化虚拟机配置(例如:‘linux’,‘windows’)
- --os-variant=OS_VARIANT 针对特定操作系统变体(例如’rhel6’, ’winxp’,'win2k3')进一步优化虚拟机配置
- --host-device=HOSTDEV 附加一个物理主机设备到客户机。HOSTDEV是随着libvirt使用的一个节点设备名(具体设备如’virsh nodedev-list’的显示的结果)
- --accelerate KVM或KQEMU内核加速,这个选项是推荐最好加上。如果KVM和KQEMU都支持,KVM加速器优先使用。
- -x EXTRA, --extra-args=EXTRA 当执行从"--location"选项指定位置的客户机安装时,附加内核命令行参数到安装程序
- --nographics "virt-install" 将默认使用--vnc选项,使用nographics指定没有控制台被分配给客户机
常用命令: - 生成kvm虚拟机:virt-install
- 查看在运行的虚拟机:virsh list
- 查看所有虚拟机:virsh list –all
- 查看kvm虚拟机配置文件:virsh dumpxml name
- 启动kvm虚拟机:virsh start name
- 停止:virsh destroy name
- 删除:virsh undefine name
- 根据配置文件定义虚拟机:virsh define file-name.xml
- console虚拟机:virsh console name
题外话:大家除了手动创建和更改kvm的虚拟机当然还可以通过安装第三方的控制面板进行VPS销售
|