Lvs+Keepalived配置篇

1.配置安装LVS
server1(master):  keepalived、ipvsadm  IP:172.25.62.1
server4(backup): keepalived、ipvsadm   IP:172.25.62.4
server2:Apache、arptables  IP:172.25.62.2
server3:Apache、arptables  IP:172.25.62.3
2.配置yum源    yum源中的参数可以在/var/www/html/rhel6.5/ 镜像挂载的目录下找到

3.安装ipvsadm并设置调度策略   这里采用DR模式   先配置server1 server4先不管

设置VIP用于与客户端之间通信

设置调度策略
查看后端Realserver的地址


 调度策略相关参数
-A 表示添加VIP
-a 表示添加站点
-t 表示指定为tcp
-s 指定调度机制为轮询(RR)
-r 指定后端地址
-g 表示模式为DR模式

如果添加策略时出错可以到/etc/sysconfig/ipvsadm里面进行修改      ##修改之后 reload才能生效
查看调度策略


Realserver的配置     server2和server3上进行
1.安装arptables_jf 用于接收ARP请求但不响应 作用是将使用VIP地址直接与客户端通信,服务器对VIP请求不响应

server3安装

在两个Realserver上添加VIP


设置Realserver策略并保存 抑制服务器上的VIP,对VIP请求不做响应
-A 表示添加   -d 表示 目标地址  -j 为动作   -s 为源地址


启动Realserver上的Apache服务




LVS在物理机测试


下面进行keepalived安装的相关操作
1.下载软件包keepalived-1.4.0.tar.gz 或者其他版本  解压 安装相关依赖性

指定安装路径

查看其支持的功能

编译并安装

查看安装是否成功

添加配置链接、启动链接以及其他链接

启动服务进行测试


高可用备用端配置
server1和server4都安装scp

传递配置文件包和yum源的配置文件


查看是否传递成功

在server4上安装ipvsadm


至此server1上的ipvsadm和keepalived安装完毕

keepalived服务配置
1.配置邮件服务相关配置
server1和server4上都安装邮件服务

配置keepalived配置文件  只修改选中部分


进行邮件服务的测试


配置高可用  keepalived文件的参数下拉至最低部有关于配置文件的解释


server1重启keepalived服务看VIP是否生效   重启之后等一会VIP才会出现

配置服务集群   删掉剩余部分

重启服务

将配置文件传到备用服务器


在备用服务器server4上修改服务器状态


修改完之后重启服务

web服务器server2和server3之前已经安装过Apache进行过ARP抑制 直接启动服务即可 server2和3都启动

查看VIP VIP在master即server1上


测试高可用:
当master停止服务时

VIP将自动切换到备用服务器

并且负载均衡依旧正常

在这里有可能会出现访问VIP无响应的情况 修改keepalived文件  重启服务即可


检测其健康检查

在这里有可能会出现下面这种情况  这种情况是因为keepalived没有及时将故障的服务器移出集群

解决方法



之后再次访问  就把坏的服务器剔除了

然后我们把server3的服务停掉把server2的apache服务开启 再次访问

可以看出 之前上面给出的解决方法可能是有问题的  可能keepalived把坏的服务器踢出集群需要时间把
下面是keepalived配置文件的部分参数解读

! Configuration File for keepalived

global_defs {
   notification_email {
    root@localhost   ##接受报警的邮箱
   }
   notification_email_from keepalived@localhost  ##邮件发送者
   smtp_server 127.0.0.1
   smtp_connect_timeout 30   ##连接smtp的超时时间
   router_id LVS_DEVEL
   vrrp_skip_check_adv_addr
   #vrrp_strict
   vrrp_garp_interval 0
   vrrp_gna_interval 0
}

vrrp_instance VI_1 {
    state MASTER      ##备用机需要改成BACKUP
    interface eth0     ##高可用 检测网络接口
    virtual_router_id 51   ##主 备的id必须一致 在0-255之间默认51
    priority 100         ##主机的优先级 备用机比这个小 
    advert_int 1          ##主备之间的通告时间间隔妙数
    authentication {
        auth_type PASS    ##设置验证类型
        auth_pass 1111     ##设置验证码
    }
    virtual_ipaddress {
        172.25.62.100   ##vip
    }
}

virtual_server 172.25.62.100 80 {
    delay_loop 3     ##每隔三秒查询realserver的状态
    lb_algo rr     ##  rr轮叫算法
    lb_kind DR    ## LVS的DR模式
    #persistence_timeout 50   ##保持会话使用的时长ftp服务类型
    protocol TCP          ##tcp协议

    real_server 172.25.62.2 80 {   ##RS
        weight 1      #权重
        TCP_CHECK {     ##realserver的状态检测设置部分、
            connect_timeout 3   ##3秒无相应超时
            retry 3     ##重试次数
            delay_before_retry 3   ##重试间隔
        }
    }

    real_server 172.25.62.3 80 {
        weight 1
        TCP_CHECK {
            connect_timeout 3
            retry 3
            delay_before_retry 3
        }
    }

}




 

猜你喜欢

转载自blog.csdn.net/qq_41636653/article/details/82983853