yum -y install httpd 的方式安装好httpd服务。
分别在192.168.1.103和192.168.1.104上做如下操作:
[root@centos ~]# yum -y install httpd
echo 103 >/var/www/html/index.html   #(104上的要把 103字段改成 104)
[root@centos ~]# setenforce 0   #关闭SELinux
[root@centos ~]# /etc/rc.d/init.d/iptables stop   #关闭防火墙

4、开始安装LVS
下载相关软件包:
[root@centos1 ~]# mkdir download
[root@centos1 ~]# cd download/
[root@centos1 download]# wget http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.24.tar.gz  
5、安装命令
注:以下安装需要在192.168.1.101和192.168.1.104上面操作:
[root@centos1 download]# uname -r   #查看linux内核版本  
2.6.32-220.el6.x86_64  
[root@centos1 download]# ln -s /usr/src/kernels/2.6.32-220.el6.x86_64/ /usr/src/linux #不做此步骤,安装会报错 
注:此ln命令的路径要和uname -r输出内核版本一致,如果没有 /usr/src/kernels/2.6.32-220.el6.x86_64/ 需要安装 kernel-devel软件包。 
[root@centos1 download]# tar zxvf ipvsadm-1.24.tar.gz  
[root@centos1 download]# cd ipvsadm-1.24  
[root@centos1 ipvsadm-1.24]# make  
[root@centos1 ipvsadm-1.24]# make install  
[root@centos1 ipvsadm-1.24]# ipvsadm  #执行ipvsadm命令,把LVS添加到linux内核中  
IP Virtual Server version 1.2.1 (size=4096)  
Prot LocalAddress:Port Scheduler Flags  
  -> RemoteAddress:Port       Forward Weight ActiveConn InActConn  
[root@centos1 ipvsadm-1.24]# lsmod | grep ip_vs  #查看LVS是否已经添加到linux内核了,如果有如下输出表示已经成功。  
ip_vs                 108133  0   
ipv6                  322029  154 ip_vs,ip6t_REJECT,nf_conntrack_ipv6,nf_defrag_ipv6  
6配置LVS 服务端
在192.168.1.101和192.168.1.114上分别配置LVS DR模式
1)、配置LVS,建立一个脚本配置LVS
注:192.168.1.101和192.168.1.114上配置都是一样的
[root@centos1 bin]# vim lvs_dr.sh
#!/bin/bash 
. /etc/init.d/functions 
vim lvs_dr.sh 
#!/bin/bash 
GW=192.168.1.1 
# website director vip. 
SNS_VIP=192.168.1.181 
SNS_RIP1=192.168.1.103 
SNS_RIP2=192.168.1.104 

logger $0 called with $1 
case "$1" in 
start) 
  # set squid vip 
  /sbin/ipvsadm --set 30 5 60 
  /sbin/ifconfig eth0:0 $SNS_VIP broadcast $SNS_VIP netmask 255.255.255.255 up 
  /sbin/route add -host $SNS_VIP dev eth0:0 
  /sbin/ipvsadm -A -t $SNS_VIP:80 -s wrr -p 3 
  /sbin/ipvsadm -a -t $SNS_VIP:80 -r $SNS_RIP1:80 -g -w 1 
  /sbin/ipvsadm -a -t $SNS_VIP:80 -r $SNS_RIP2:80 -g -w 1 
  touch /var/lock/subsys/ipvsadm >/dev/null 2>&1 
  ;; 
stop) 
  /sbin/ipvsadm -C 
  /sbin/ipvsadm -Z 
  ifconfig eth0:0 down 
  ifconfig eth0:1 down 
  route del $SNS_VIP 
  route del $SS_VIP 
  rm -rf /var/lock/subsys/ipvsadm >/dev/null 2>&1 
  echo "ipvsadm stoped" 
  ;; 
status) 
  if [ ! -e /var/lock/subsys/ipvsadm ];then 
  echo "ipvsadm stoped" 
  exit 1 
  else 
  echo "ipvsadm OK" 
  fi 
  ;; 
*) 
 echo "Usage: $0 {start|stop|status}" 
 exit 1 
esac 
 exit 0 
[root@centos1 bin]# chmod +x lvs_dr.sh
[root@centos1 bin]# cp lvs_dr.sh /etc/rc.d/init.d/   #方便启动
[root@centos1 bin]# service lvs_dr.sh start   #启动lvs服务
用ipvsadm -Ln 命令查看是否有如下输出,如有证明LVS配置成功
[root@centos1 bin]# ipvsadm
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.1.181:http wrr persistent 3
  -> 192.168.1.104:http           Route   1      0          0         
  -> 192.168.1.103:http           Route   1      0          0         
7、配置LVS RS服务器
[root@centos bin]# vim lvs_dr.sh
#!/bin/bash
. /etc/init.d/functions
SNS_VIP=192.168.1.181

case "$1" in
start)
      ifconfig lo:0 $SNS_VIP netmask 255.255.255.255 broadcast $SNS_VIP
      /sbin/route add -host $SNS_VIP 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
      sysctl -p >/dev/null 2>&1
      echo "RealServer Start OK"
      ;;
stop)
     ifconfig lo:0 down
      route del $SNS_VIP >/dev/null 2>&1
      echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore
      echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce
      echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
      echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
      echo "RealServer Stoped"
      ;;
*)
      echo "Usage: $0 {start|stop}"
      exit 1
esac
exit 0
[root@centos bin]# cp lvs_dr.sh /etc/rc.d/init.d/
[root@centos bin]# service lvs_dr.sh start  #启动lvs RS服务器
RealServer Start OK 

yum install -y keepalived
global_defs { 
   notification_email { 
         [email protected] 
   } 
   notification_email_from [email protected] 
   smtp_server 192.168.80.1 
   smtp_connection_timeout 30
   router_id LVS_DEVEL  # 设置lvs的id,在一个网络内应该是唯一的
} 
vrrp_instance VI_1 { 
    state MASTER   #指定Keepalived的角色,MASTER为主,BACKUP为备         
    interface eth1  #指定Keepalived的角色,MASTER为主,BACKUP为备
    virtual_router_id 51  #虚拟路由编号,主备要一致
    priority 100  #定义优先级,数字越大,优先级越高,主DR必须大于备用DR   
    advert_int 1  #检查间隔,默认为1s
    authentication { 
        auth_type PASS 
        auth_pass 1111 
    } 
    virtual_ipaddress { 
        192.168.80.200  #定义虚拟IP(VIP)为192.168.2.33,可多设,每行一个
    } 
} 
# 定义对外提供服务的LVS的VIP以及port
virtual_server 192.168.80.200 80 { 
    delay_loop 6 # 设置健康检查时间,单位是秒                   
    lb_algo wrr # 设置负载调度的算法为wlc                  
    lb_kind DR # 设置LVS实现负载的机制,有NAT、TUN、DR三个模式  
    nat_mask 255.255.255.0               
    persistence_timeout 0         
    protocol TCP                 
    real_server 192.168.80.102 80 {  # 指定real server1的IP地址
        weight 3   # 配置节点权值,数字越大权重越高             
        TCP_CHECK { 
        connect_timeout 10        
        nb_get_retry 3 
        delay_before_retry 3 
        connect_port 80 
        } 
    } 
    real_server 192.168.80.103 80 {  # 指定real server2的IP地址
        weight 3  # 配置节点权值,数字越大权重越高 
        TCP_CHECK { 
        connect_timeout 10 
        nb_get_retry 3 
        delay_before_retry 3 
        connect_port 80 
        } 
     } 
}

3.5 配置从负载服务器

从负载服务器与主负载服务器大致相同,只是在keepalived的配置文件中需要改以下两处:

(1)将state由MASTER改为BACKUP

(2)将priority由100改为99

vrrp_instance VI_1 { 
    state BACKUP # 这里改为BACKUP
    interface eth1 
    virtual_router_id 51 
    priority 99 # 这里改为99,master优先级是100
    advert_int 1 
    authentication { 
        auth_type PASS 
        auth_pass 1111 
    } 
    virtual_ipaddress { 
        192.168.80.200 
    } 
}

results matching ""

    No results matching ""