构建、使用KVM虚拟化平台
案例环境准备:
KVM虚拟化服务器:
真机操作系统:CentOS 6.5 关闭 iptables 防火墙、关闭SELinux机制,进图形桌面、关闭 NetworkManager 服务
主机名:kvmsvr.tarena.com
分区示例:
/boot 200MB、SWAP 8GB、/ 120GB、
/var/ftp 40GB (逻辑卷 /data/vg_data/lv_data)
一:基于CentOS 6.5构建KVM服务器平台
1. 插入CentOS 6.5光盘(两张盘),将其中所有文档部署到 FTP 目录
[root@kvmsvr ~]# mkdir -p /var/ftp/iso/centos/6.5/
[root@kvmsvr ~]# cp -rf /misc/cd/* /var/ftp/iso/centos/6.5/
2. 在本机测试,确保 YUM 源可用
[root@kvmsvr ~]# mkdir /etc/yum.repos.d/repobak
[root@kvmsvr ~]# mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/repobak/
[root@kvmsvr ~]# vim /etc/yum.repos.d/centos6.repo
[CentOS-Base]
name=CentOS 6.5 Packages
baseurl=file:///var/ftp/iso/centos/6.5
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
[root@kvmsvr ~]# yum repolist
.. ..
3. 安装 KVM 虚拟化相关软件、启用服务
[root@kvmsvr ~]# yum -y groupinstall "Virtualization" "Virtualization Client" "Virtualization Tools" "Virtualization Platform"
.. ..
[root@kvmsvr ~]# service libvirtd restart
[root@kvmsvr ~]# chkconfig libvirtd on
二:添加virbr1隔离接口
[root@kvmsvr ~]# service NetworkManager stop
[root@kvmsvr ~]# chkconfig NetworkManager off
1. "虚拟系统管理器" --> "编辑" --> "Connection Details"
。。。。 单击"+"号。。。。network1。。。。 192.168.4.0/24
不要启用KVM自带的DHCP
!!!! 避免VMware Workstation的虚拟网卡的冲突
2. 确认新添加的虚拟网卡
[root@kvmsvr ~]# ifconfig virbr1
。。。。 192.168.4.1
三:添加br0桥接接口、准备虚拟机存储
1. 建立桥接网卡 br0
[root@kvmsvr ~]# cp /etc/sysconfig/network-scripts/ifcfg-{eth0,br0}
[root@kvmsvr ~]# vim /etc/sysconfig/network-scripts/ifcfg-br0 //调整 br0 配置
DEVICE=br0 //新建的连接名称
TYPE=Bridge //连接类型
ONBOOT=yes
NM_CONTROLLED=no //不接受NetworkManager管理
BOOTPROTO=dhcp //参考原eth0网卡的IP地址
.. ..
[root@kvmsvr ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 //调整 eth0 配置
DEVICE=eth0
TYPE=Ethernet
.. ..
BRIDGE=br0 //桥接到 br0
[root@kvmsvr ~]# service network restart
[root@kvmsvr ~]# ifconfig br0
br0 Link encap:Ethernet HWaddr 00:0C:29:73:9A:C7
inet addr:172.30.6.124 Bcast:172.30.6.255 Mask:255.255.255.0
.. ..
2. 准备虚拟机磁盘
建立一个不小于40G的文件系统,挂载到 /data/
[root@kvmsvr ~]# mkdir -p /data/images
[root@kvmsvr ~]# dd if=/dev/zero of=/data/images/node1.img bs=10M count=1000
.. .. //用来装第一个RHEL 6.5虚拟机
四:准备PXE服务器
服务范围:virbr1 网络
目标功能:客户机可选装RHEL6.5、CentOS6.5系统,kickstart自动应答
1. 为客户机准备软件源(RHEL6.5)
1)安装并启用vsftpd服务
[root@kvmsvr ~]# yum -y install vsftpd
[root@kvmsvr ~]# service vsftpd restart ; chkconfig vsftpd on
[root@kvmsvr ~]# mkdir -p /var/ftp/iso/redhat/6.5/
[root@kvmsvr ~]# eject //弹出光盘,更换为RHEL6.5系统盘
[root@kvmsvr ~]# cp -rf /misc/cd/* /var/ftp/iso/redhat/6.5 //拷入RHEL6.5软件资源
.. ..
2)发布yum仓库配置文件,供客户机下载
[root@kvmsvr ~]# mkdir -p /var/ftp/pxe/
[root@kvmsvr ~]# cp /etc/yum.repos.d/centos6.repo /var/ftp/pxe/
[root@kvmsvr ~]# vim /var/ftp/pxe/rhel6.repo
[CentOS-Base]
name=CentOS 6.5 Packages
baseurl=ftp://192.168.4.1/iso/centos/6.5
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
[root@kvmsvr ~]# wget ftp://192.168.4.1/pxe/centos6.repo
.. .. //确认可下载
[root@kvmsvr ~]# cp /var/ftp/pxe/centos6.repo /var/ftp/pxe/rhel6.repo
[root@kvmsvr ~]# vim /var/ftp/pxe/rhel6.repo
[rhel-server]
name=RHEL 6.5 Packages
baseurl=ftp://192.168.4.1/iso/redhat/6.5
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[root@kvmsvr ~]# wget ftp://192.168.4.1/pxe/rhel6.repo
.. .. //确认可下载
2. 配置dhcpd服务
1)能够为192.168.4.0/24网段的客户机分配IP地址
2)告知 TFTP 服务器相关信息
next-server 192.168.4.1;
filename "pxelinux.0";
3)调整dhcpd服务的监听接口(避免影响真机网络)
[root@kvmsvr ~]# vim /etc/sysconfig/dhcpd
DHCPDARGS="virbr1 vmnet1"
[root@kvmsvr ~]# service dhcpd restart
3. 配置tftp-server
1)为PXE客户机提供启动配置、RHEL6内核及引导文件
2)提供CentOS 6.5和RHEL 6.5的kickstart应答文件
/var/ftp/pxe/ks-el6.cfg
/var/ftp/pxe/ks-cos6.cfg
.. ..
五:KVM 虚拟机管理(virt-manager工具)
1. 运行虚拟机管理器
!!!! 桌面环境 --> 应用程序 --> 系统工具 --> 虚拟系统管理器
!!!! 或直接运行 virt-manager 命令打开
―― 默认连接到本机的KVM服务平台进行管理
2. 新建一台虚拟机
名称:rh6_n1
内存:1024M
网卡:virbr1
磁盘:/data/images/node1.img
3. 通过PXE方式为此虚拟机安装系统
安装过程全自动,完成后登入系统
检查 YUM 等安装后设置是否自动配置好
.. ..
六:virt-manager 远程管理
管理机(私钥) --》 KVM服务器(公钥)
1. 在管理机上安装KVM客户机工具
[root@pc120 桌面]# yum -y groupinstall "Virtualization Client"
2. 在管理机上创建SSH秘钥对,并部署公钥文件
[root@pc120 桌面]# ssh-keygen -t rsa
[root@pc120 桌面]# ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
3. 在管理机上打开 virt-manager,连接到KVM服务器