keepalived 保证集群的高可用
高并发: 能够同时供多台客户端访问 高可用: 防止集群中因为某个节点坏掉,而导致整个集群不能正常的提供服务 keepalived起初就是为了和lvs进行搭配,配合lvs对后端的集群进行健康检查,当后端的集群中有一个服务器宕机,他将会将这个服务器从后端节点中剔除,来保证集群的可用性,当后端的这个服务能够正常提供服务的时候,再将该服务加入到后端的集群中。后来keepalived实现了vrrp协议 vrrp 虚拟路由协议 漂移ip lvs 要有两台
后期keepalived对lvs负载均衡服务器是用做节点检查的,避免单点故障 负载均衡的集群中,分为(master backup) 如果发生故障,从节点将会在集群中选出一个主,来代替主的位置,主和从之间会发送特定的消息,(这个时间一般为1s),当从服务器接收不到主给的消息,就意味着主服务器宕机,然后从将接替主来进行工作,从而保证集群的高可用 当主服务器修好以后,就会继续主的位置
client 192.168.2.100 lvs1 192.168.2.10 lvs2 192.168.2.11 web1 192.168.2.20 httpd 1111 web2 192.168.2.30 httpd 2222
lvs1 以及lvs2都要进行
lvs1和lvs2搭建keepalived
./configure --prefix=/ --with-kernel-dir=/usr/src/kernel && make && make install
修改主配置文件
3 global_defs { #全局配置 4 notification_email { #管理员的邮箱 5 acassen@firewall.loc 6 failover@firewall.loc 7 sysadmin@firewall.loc 8 } 9 notification_email_from Alexandre.Cassen@firewall.loc #邮件的发送者 10 smtp_server 192.168.200.1 #邮件服务器的ip 11 smtp_connect_timeout 30 #邮件连接超时时间 12 router_id LVS_DEVEL #节点的表示 hostname 13 } 15 vrrp_instance VI_1 { ##vrrp组 16 state MASTER #节点的状态 17 interface ens32 #用来发送vrrp的网卡 18 virtual_router_id 51 #server_id 19 priority 100 #优先级 1—255 20 advert_int 1 #发送vrrp通告的时间 21 authentication { #认证 22 auth_type PASS 23 auth_pass 1111 24 } 25 ##虚拟ip
31 #健康检查间隔的时间 32 调度算法 33 lvs工作模式 35 会话保持时间 36 使用tcp传输
39权重 40连接的端口 41超时时间 42
scp传输过去
在lvs2上面在进行配置文件更改
然后查看ip 应该是两个lvs中一个有拟ip一个没有 如果一个宕机了会换成另一个出现虚拟ip
web1以及web2都进行
客户端验证:
keepalived 脑裂 keepalived 出现两个主的情况 1 statr MASTER 节点的状态都是主 防火墙没有放行 prioity 100 优先级一致 vrrp_instance vl_1 组名不一致 viryual_router_id 51 不一致 当主恢复后 漂移IP转移需要时间 在生产环境当中 要关闭主恢复后不会转移 nopreempt 这个参数必须记住 实际环境中必须添加
keepalived + haproxy (不用配置ip)
相关文章
- Nacos集群部署-高可用保证
- 【Docker】搭建部署Redis高可用集群实验
- 高可用的MongoDB集群详解大数据
- Akka(10): 分布式运算:集群-Cluster详解编程语言
- 构建MongoDB群集构建:极速启动高可用集群(mongodb群集)
- clusterMySQL NDB Cluster: 构建高可用分布式数据库集群(mysqlndb)
- 【MySQL 集群复制实现高可用及数据安全】(mysql集群复制)
- .SQL Server 集群:通往数据库高可用之路(sqlserver集群6)
- 搭建最优可用的小型Redis集群(最小redis集群)
- 精通Redis高可用集群部署深度剖析(redis高可用集群部署)
- Redis集群中的退出困境(redis 集群 退出)
- 构建高可用的Redis集群之配置篇(redis集群的配置)
- Redis集群热部署实现高可用(redis 集群热部署)
- 方案Redis集群故障分析及解决方案研究(redis集群故障和解决)
- Redis集群的优势与不足比较(redis 集群对比)
- 借助Redis集群实现启动服务端的完美实现(Redis集群启动服务端)
- Redis集群系统搭建解决方案(redis集群制作方案)
- Redis集群分发均衡的实现(redis 集群分发)
- 入数据使用Redis集群增强数据写入功能(redis集群写)
- Redis集群偶数节点的选举(redis 集群偶数选举)
- 搭建Redis集群一键搭建,快速实现数据高可用(redis 集群 一键)
- 构建健壮的Redis集群,实现高可用的ACP(redis集群acp)
- 搭建三主节点的Redis集群(redis集群3个主节点)
- 突破集群架构,安全支持可靠的RedisJWT(redis集群jwt)
- 基于Redis集群的分布式JWT实现(redis集群jwt)
- Oracle 11g集群架构下的启动之旅(oracle11集群启动)