1、在VMwareWorkstation上搭建三台虚拟机,均安装Centos 6.5系统,配置网络环境,使三台虚拟机能互相ping通。
1.1、配置网络环境:在这三台虚拟机中均是用网络地址转换(NAT)方法,
2、将上述三台虚拟机中的任何一台作为Master,将其他两台则作为realserver,分别命名为realserver1和realserver2。
3、先是在Master中做如下操作:
3.1、配置Linux虚拟服务器(LVS)环境
LVS集群采用IP负载均衡技术和基于内容请求分发技术。调度器(Master)具有很好的吞吐率,将请求均衡地转移到不同的服务器上执行,且调度器在自动屏蔽掉服务器的故障,从而将一组服务器构成一个高性能的、高可用的虚拟服务器。
配置操作如下:
3.1.1、安装依赖包
yum install gccgcc-c++ makepcre pcre-devel kernel-devel openssl-devel libnl-devel popt-devel
3.1.2、检查linux内核是否集成lvs模块:modprobe –l| grep ipvs
3.1.3、开启路由转发功能:echo“1” > /proc/sys/net/ipv4/ip_forward
3.1.4、安装ipvsadm
- 下载ipvsadm-1.26.tar.gz
- tar -zxvf ipvsadm-1.26.tar.gz
- cd ipvsadm-1.26
- make && makeinstall
3.1.5、安装keepalived
- 下载keepalived-1.2.7.tar.gz
- tar zxvf keepalived-1.2.7.tar.gz
- cd keepalived-1.2.7
- ./configure --prefix=/usr/local/keepalived
- make && make install
3.1.6、将keepalived配置成系统服务
- cp /usr/local/keepalived/etc/rc.d/init.d/keepalived/ etc/init.d/
- cp /usr/local/keepalived/etc/sysconfig/keepalived/ etc/sysconfig/
- mkdir /etc/keepalived/
- cp /usr/local/keepalived/etc/keepalived/keepalived.conf / etc/ keepalived/
- cp /usr/local/keepalived/sbin/keepalived/ usr/sbin/
3.1.7、修改主keepalived配置文件,是/etc/keepalived/keepalived.conf文件。配置文件的内容如下:
! Configuration File for keepalivedglobal_defs {notification_email {#acassen@firewall.loc#failover@firewall.loc#sysadmin@firewall.loc}#notification_email_from Alexandre.Cassen@firewall.loc#smtp_server 192.168.200.1#smtp_connect_timeout 30router_id LVS_MASTER} vrrp_instance VI_1 {state MASTERinterface eth4virtual_router_id 51priority 100advert_int 1authentication {auth_type PASSauth_pass 1111} virtual_ipaddress {192.168.0.31/24} } virtual_server 192.168.0.31 80 {delay_loop 6lb_algo rrlb_kind DR persistence_timeout 50protocol TCPreal_server 192.168.0.131 80 {weight 3TCP_CHECK {connect_timeout 3nb_get_retry 3delay_before_retry 3 }}real_server 192.168.0.132 80 {weight 3TCP_CHECK {connect_timeout 3nb_get_retry 3delay_before_retry 3 }} }
这里需要注意一点的是,在配置文件中的
TCP_CHECK {
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
在
TCP_CHECK
后一定加一个“
空格
”,否则在配置完整个运行环境并运行
ipvsadm –ln
后,仅能成功添加一个真实服务器的
ip,
而不是两个
4、 两个realserver虚拟机中安装httpd
Httpd是Apache超文本传输协议(HTTP)服务器的主程序。被设计成一个独立运行的后台进程,会建立一个处理请求的子进程或线程的池。
4.1、安装步骤
- 下载httpd-2.4.4
- ./configure --prefix=/usr/local/httpd
- make && make install
4.2、在realserver1中,修改httpd的配置文件,使其能显示“This is realserver1”
4.3 、在realserver2中,同样也修改httpd的配置文件,使其能显示“This is realserver2”
4.4 、编写lvs.sh脚本文件,分别在realserver1和realserver2的家目录下。lvs.sh的脚本内容如下:
ifconfig lo:0 192.168.40.31 netmask 255.255.255.0 up
route add -host 192.168.40.31 dev lo:0
echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
4.5 、将lvs.sh脚本文件修改为可执行文件
• chmod u+x lvs.sh
5、 在两个realserver中启动httpd服务和lvs.sh脚本
- /etc/init.d/httpd start
- ~/lvs.sh start
6、 在Master中启动keepalived服务
- /etc/init.d/keepalived start
7、 在Master运行如下命令:
- ipvsadm -ln
若结果如下显示,则表明环境配置成功,服务器集群搭建成功。