设为首页 收藏本站
查看: 900|回复: 0

[经验分享] Keepalived高可用服务器以及haproxy的负载均衡

[复制链接]
YunVN网友  发表于 2018-12-30 11:42:08 |阅读模式
Keepalived高可用服务器以及haproxy的负载均衡

Keepalive运行原理

Keepalived检测每个服务节点状态
当服务器节点异常或工作出现故障,keepalived将故障节点从集群从集群系统中踢除
故障节点恢复后,自动将其加入
使用keepalived软件配置HA集群
使用keepalived软件配置HA集群

1.提供服务的主机需要装keepalived和web服务

yum -y install httpd keepalived
2.修改提供服务的主机的keepalived的配置文件 /

35行以后是做调度器的高可用配置
规划主、备服务器,设置VIP(公网IP)

这里的主备是抢占式的
global_defs {
notification_email {
acassen@firewall.com   //设置报警收件人邮箱
}
notification_email_from link@firewall.com //发件人邮箱
smtp_server 192.168.200.1   //邮件服务器地址
smtp_connect_timeout 30  //邮件超时时间
router_id LVS_DEVEL      //设置路由ID
#vrrp_strict    //这条需要注释掉,不然下面的VIP就会不通
}
vrrp_instance webha {  //webha 集群名称
state MASTER    //描述名,
interface eth0   //与集群内服务主机之间通信使用网卡
virtual_router_id 51  
priority 100     //优先级,数值越高,越优先,主的优先级高,默认100
优先级最大255,超过失效
advert_int 1    //集群内服务主机之间的通信时间间隔,单位秒
authentication {
auth_type PASS  //认证类型
auth_pass 1111  //使用密码
}
virtual_ipaddress {    //设置VIP地址
192.168.200.16
}
}
当web服务down了,高可用集群的调度主备不会浮动VIP

vim /root/check_80.sh
#!/bin/bash
netstat -ntulp | grep 80
if [ $? -ne 0 ];then
systemctl stop keepaloved.service
if
综合应用:keepalived+LVS 配置LVS调度器HA集群

需求:把主机A配置为主LVS调度器,B主机为备用的LVS调度器,当分发器A宕机了,B主机立即启用

1.A、B上安装keepalived软件,ipvsadm软件
Yum -y install keepalived ipvsadm
2.修改/etc/keepalived/keepalived.conf
修改优先级划分主备(AB)服务主机
修改认证的密码    主备(AB)服务器的密码必须一致
修改IPV(virtual_ipaddress)为192.168.4.253
以下配置A、B一致
virtual_server 192.168.4.253 80 {   //定义虚拟调度机
delay_loop 6
lb_algo rr                     //调度算法
lb_kind DR          //工作模式,与后台realserver的工作模式一致
persistence_timeout 50
protocol TCP
connect_timeout 3      
nb_get_retry 3
delay_before_retry 3
real_server 192.168.4.52 80 {   //后台提供web服务的主机
weight 1
}
}
这个步骤是将A、B设为为keepalived主备机,并且加上LVS(ipvsadm),实现高可用(HA)和
负载均衡(LB)的综合应用
3.在A、B上启动并设置开机自启(keepalived)
systemctl restart keepalived.service
systemctl enable keepalived.service
4.在客户机上进行测试,
curl http://192.168.4.253
前提:后台提供web服务的机器必须正常运行
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
ifconfig lo:1 192.168.4.253/32
扩展:以上配置做完之后,keepalived不会对后端的httpd服务做健康检查,,如果需要,必须进行tcp连接检查

real_server 192.168.4.52 80 {
weight 1
TCP_CHECK {
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
使用Haproxy软件配置LB集群

工作模式 1.mode http
2.mode tcp
3.mode htalth
Mode http

1.http close
每次响应请求后立即断开连接
2.keep-alive
每一连接可以发起多个请求,但是多个请求需要服务器按顺序一个一个响应不能一次性作出响应
3.pipelining
一次连接可以发起多次请求,这些请求服务器并行进行响应,同时处理请求,减少了延迟,但是
对服务器的要求比较高,
配置:

1.装包
Yum -y install haproxy
2.配置文件及介绍
Vim /etc/haproxy/haproxy.cfg
default:为后续的其他部分设置默认参数,缺省参数可以被后续部分覆盖
frontend:描述接收客户端侦听套接紫集
backend:描述转发连接的服务器集
listen:把frontend和backend结合到一起的完整声明
//这里为/etc/haproxy/haproxy.cfg的配置
default
stats uri  /admin     #以友好的页面展示LB集群实际状况
listen webla 192.168.4.56:80
cookie SERVERID rewrite
balance roundrobin
server weba 192.168.4.55:80 cookie app1inst1 check inter 2000 rise 2 fall 5
server webb 192.168.4.57:80 cookie app2inst2 check inter 2000 rise 2 fall 5
3.启动服务及查看状态
Systemctl restart haproxy
Systemctl status haproxy
4.有好页面的访问
http://192.168.4.56/admin



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-657551-1-1.html 上篇帖子: Keepalived高可用服务器以及haproxy的负载均衡 下篇帖子: Keepalived软件学习之VRRP协议学习
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表