KVM搭建过程


首先声明这边文档引用了别人的文档加上自己的理解而编写


做这个实验,需要我们的cpu支持虚拟化,如果你的机器没有开启的话,安装64位系统会出现报错,

有的机器支持但是并未在bios开启,这个需要事先开启。你需要进入bios中开启。

如果显示“此主机支持Intel VT-x”,说明电脑是支持Intel虚拟技术的,但是在BIOS中没有开启。接下来重启机器进入BIOS,找到“Intel VT-x”(可能有的机器不一样,我的是中文的),修改“disabled”为“enabled”,F10保存并重启。


1. vmware安装centos6.6 64位 (略) 
其中有几个注意的地方:
a. 内存给2g
b. 磁盘给50g, 或者再单独分一个磁盘,用来存储虚拟机文件
c. 最关键的一步,在创建虚拟机时,cpu是需要配置一下虚拟化的如图
150734p1nyn5qjx5ww10ew.jpg 



2.  安装kvm前的准备工作
a. 清除iptables规则
service iptables stop; service iptables save
b. 关闭selinux
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
setenforce 0


3. 开始安装kvm
a. 检查你的系统是否支持虚拟化
grep -Ei 'vmx|svm' /proc/cpuinfo
如果有输出内容,则支持,其中intel cpu支持会有vmx,amd cpu支持会有svm

b. 通过yum安装虚拟化的软件包
yum install -y kvm virt-* libvirts bridge-utils qemu-img
说明:
kvm:软件包中含有KVM内核模块,它在默认linux内核中提供kvm管理程序
libvirts:安装虚拟机管理工具,使用virsh等命令来管理和控制虚拟机。
bridge-utils:设置网络网卡桥接。
virt-*:创建、克隆虚拟机命令,以及图形化管理工具virt-manager
qemu-img:安装qemu组件,使用qemu命令来创建磁盘等。




c. 检查kvm模块是否加载
lsmod |grep kvm
正常应该是:
kvm_intel              55496  0
kvm                   337772  1 kvm_intel

如果没有,需要执行 
modprobe kvm-intel
还没有就重启一下试试

d. 配置网卡
cd /etc/sysconfig/network-scripts/
cp ifcfg-eth0 ifcfg-br0
分别编辑eth0和br0
ifcfg-eth0改成如下:
DEVICE=eth0
HWADDR=00:0C:29:55:A7:0A
TYPE=Ethernet
UUID=2be47d79-2a68-4b65-a9ce-6a2df93759c6
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
BRIDGE=br0




ifcfg-br0改成如下:

DEVICE=br0
#HWADDR=00:0C:29:55:A7:0A
TYPE=Bridge
#UUID=2be47d79-2a68-4b65-a9ce-6a2df93759c6
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.11.17
NETMASK=255.255.255.0
GATEWAY=192.168.11.1
DNS1=202.106.0.20



说明: 我的虚拟机是桥接模式,所以设置br0的ip和我的真机同样的网段,包括网关也是我路由器的ip,大家可以根据自己的环境去配置,目的是为了让虚拟机可以上网。

/etc/init.d/network restart
查看网卡如下:
br0       Link encap:Ethernet  HWaddr 00:0C:29:55:A7:0A
          inet addr:192.168.11.17  Bcast:192.168.11.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe55:a70a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:141326 errors:0 dropped:0 overruns:0 frame:0
          TX packets:90931 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:456024940 (434.8 MiB)  TX bytes:10933593 (10.4 MiB)

eth0      Link encap:Ethernet  HWaddr 00:0C:29:55:A7:0A
          inet6 addr: fe80::20c:29ff:fe55:a70a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:341978 errors:0 dropped:0 overruns:0 frame:0
          TX packets:90946 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:468848861 (447.1 MiB)  TX bytes:10934699 (10.4 MiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

virbr0    Link encap:Ethernet  HWaddr 52:54:00:14:EF:D5
          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)



e. 启动或重启libvirtd服务和messagebus 服务
/etc/init.d/libvirtd start
/etc/init.d/messagebus restart

此时可以查看网络接口列表
brctl show 结果如下:

152312d1xaxei9v1yzxxzg.png



kvm虚拟机安装
1.上传ISO文件,这里采用Centos 6.4x64iso


 153034sbzr8iii77ilelq8.png


2.开始安装Centos6.4

     (1)raw格式磁盘

[root@KVM ~]#vim create_kvm.sh 

virt-install \
--name centos2 \          ##虚拟机名称
--ram 512 \                   ##分配内存大小(默认大小MB)
--vcpus=1 \                  ##分配CPU核心数,最大与时提及CPU核心数相同
--disk path=/data/img/kvm_centos2.img,size=10 \      ##指定虚拟机镜像(size单位为GB)                                     
--network bridge=br0 \          ##指定网络
--cdrom=/data/CentOS-6.4-x86_64-bin-DVD1.iso \     ##指定安装镜像iso
--accelerate \                ##加速
--vnclisten=0.0.0.0 \     ##指定VNC绑定IP,默认绑定127.0.0.1,这里改为0.0.0.0
--vncport=5911 \         ##指定VNC监听端口(默认为5900)
--vnc                            ##启用VNC管理

注: 每行"\"后面不要带有空格.

153052pnr6nnppr96lmdhn.png

##用KVM创建虚拟机

153108coxvbwbwycdysoyy.png

如果采用qcow2磁盘格式,需要事先创建qcow2格式虚拟磁盘

[root@KVM ~]# qemu-img create -f qcow2 /data/img/Centos3.img 3G

153138w9nvmscv7o8vovqv.png

##用KVM创建虚拟机
[root@KVM ~]# sh  create_qcow2_kvm.sh

[root@KVM ~]# echo $?
0

[root@KVM ~]# virsh list

153310dz83wcuzc6ow840l.png

说明:在linux系统安装开始就要注意添加提高性能的一些参数,后面就不需要做一些调整了。
153356yovuulkqwhz1olfj.png 

3.开始通过VNC进行连接,进行安装过程。

153357qpwlamvbjlrwaa9v.png


查看虚拟机列表

153451eaqs8ezh8i3ehjzs.png

ps: Centos1是我的测试机. centos2和centos3是新创建的。 centos2安装完操作系统自动关闭了, 需要手动启动. centos3安装完后也需要手动启动
[root@KVM ~]# virsh start centos2
Domain centos2 started

[root@KVM ~]# virsh list --all|grep centos2
11    centos2                        running

     (2) centos2、centos3主机自动获取IP地址
##centos2自动获取IP地址
[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# cp ifcfg-eth0 ifcfg-eth0.bak[root@localhost network-scripts]#dhclient
[root@localhost network-scripts]# ip a

153501vubqt7lmqkqpf9kz.png

 清空iptables规则, 通过sshd登录该主机
[root@localhost ~]# iptables -F
[root@localhost ~]# iptables -X
[root@localhost ~]# /etc/init.d/iptables restart

153517qsi9quk3n8ky3ywz.png

 安装电源服务
[root@localhost ~]# yum -y install acpid
[root@shadowsocks ~]# /etc/init.d/acpid start
[root@shadowsocks ~]# chkconfig acpid on
至此Centos 6.4X64KVM虚拟机安装完毕。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章