Linux集群架构(下)

1.DR模式搭建

这里需要使用三台虚拟主机进行搭建,所以先准备好三台虚拟机,由于之前做实验我们需要先把两台机器上的网关给先改回来,这样三台机器都可以上网。这里还是和前面搭建有些区别的。前面搭建适用于小公司可以节约开销。

1).先把两台机器上的网关改回来,之后还要重启一下网络服务才会生效,在这里我只演示一台机器,另一台机器就按照这种方法操作就好了

a4ecaf284a4d4d9f75cb5fac28fc2046758.jpg

6c30599ebdb9c996ebe775920c6608be930.jpg

2).在dir上面进行编辑配置文件/usr/local/sbin/lvs_dr.sh   ,编辑好配置内容之后就可以重启脚本了,编辑内容如下:

#! /bin/bash
echo 1 > /proc/sys/net/ipv4/ip_forward
ipv=/usr/sbin/ipvsadm
vip=192.168.126.200
rs1=192.168.126.129
rs2=192.168.126.126
ifdown ens33
ifup  ens33
ifconfig ens33:2 $vip broadcast $vip netmask 255.255.255.255 up
route add -host $vip dev ens33:2
$ipv -C
$ipv -A -t $vip:80 -s wrr
$ipv -a -t $vip:80 -r $rs1:80 -g -w 1
$ipv -a -t $vip:80 -r $rs2:80 -g -w 1

93c5524d852e1d532ba5f578bd62ae4fd2c.jpg

3).在两台rs机器上进行编辑文件文件内容如下,编辑好配置文件并执行脚本查看网关有没有变化

#/bin/bash
vip=192.168.126.200
#把vip绑定在lo上,是为了实现rs直接把结果返回给客户端
ifdown lo
ifup lo
ifconfig lo:0 $vip broadcast $vip netmask 255.255.255.255 up
route add -host $vip lo:0
#以下操作为更改arp内核参数,目的是为了让rs顺利发送mac地址给客户端
#参考文档www.cnblogs.com/lgfeng/archive/2012/10/16/2726308.html
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

7fd8a43f9ad6a98abcd4b6a17483b1764b7.jpg

4).测试

由于在电脑上的浏览器进行测试和在虚拟机上进行测试都比较麻烦而且验证我们的结果也很差,但是在浏览器上进行稍微等待一下按住F5先把浏览器上的缓存给清空掉在访问200ip发现能够访问到另一台机器上面去了。如下图所示。通过ipvsadm -ln查看 规则,可以看出其信息

97ae745feac97f723fa71690affb3a7815f.jpg

34e1b0c265db8d2b3fc1ca158d172e943bb.jpg

 

c648a6dda0318dff1b123549094a30e26be.jpg

2. keepalived+LVS

1).先编辑配置文件/etc/keepalived/keepalived.conf 先把之前的配置文件给清空掉,之后再增加新的内容

vrrp_instance VI_1 {
    #备用服务器上为 BACKUP
    state MASTER
    #绑定vip的网卡为ens33
    interface ens33
    virtual_router_id 51
    #备用服务器上为90
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass aminglinux
    }
    virtual_ipaddress {
        192.168.126.200
    }
}
virtual_server 192.168.126.200 80 {
    #(每隔10秒查询realserver状态)
    delay_loop 10
    #(lvs 算法)
    lb_algo wlc
    #(DR模式)
    lb_kind DR
    #(同一IP的连接60秒内被分配到同一台realserver)
    persistence_timeout 60
    #(用TCP协议检查realserver状态)
    protocol TCP

    real_server 192.168.126.129 80 {
        #(权重)
        weight 100
        TCP_CHECK {
        #(10秒无响应超时)
        connect_timeout 10
        nb_get_retry 3
        delay_before_retry 3
        connect_port 80
        }
    }
    real_server 192.168.126.126 80 {
        weight 100
        TCP_CHECK {
        connect_timeout 10
        nb_get_retry 3
        delay_before_retry 3
        connect_port 80
        }
     }
}

37edc597b62215fb8987d09d77c269d7e88.jpg

做完上面配置之后还要进行启动一下脚本之后再浏览器上进行测试

 

转载于:https://my.oschina.net/u/4000361/blog/2995982

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值