keepalived 保证集群的高可用

keepalived 保证集群的高可用

高并发: 能够同时供多台客户端访问
高可用: 防止集群中因为某个节点坏掉,而导致整个集群不能正常的提供服务
keepalived起初就是为了和lvs进行搭配,配合lvs对后端的集群进行健康检查,当后端的集群中有一个服务器宕机,他将会将这个服务器从后端节点中剔除,来保证集群的可用性,当后端的这个服务能够正常提供服务的时候,再将该服务加入到后端的集群中。后来keepalived实现了vrrp协议
vrrp 虚拟路由协议 漂移ip
lvs 要有两台

client

负载

负载

web1

web2

后期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)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/101989.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Hybrid开发框架一、Weex

    Hybrid开发框架一、Weex前言最近开始试水Weex开发,使用这么长一段时间,感觉写Weex还是非常方便的。作为一个Android开发,免不了要追查一下weex的sdk源码。今天,就以WeexSDKforAndroid为例,分析SDK的认识WeexSDK源码https://github.com/alibaba/weex/tree/dev/android整体分析下拉,按照js文件的渲染过程,绘制出了下面…

    2022年9月22日
    0
  • pycharm R语言_pycharm安装后无解释器

    pycharm R语言_pycharm安装后无解释器最近被网上的一些R语言做出的图迷住,遂突发奇想学习R语言。按照教程装好了R语言解释器与Rstudio后,才得知pycharm中有R语言的插件,安装后可以在pycharm中写R语言。pycharm安装R语言插件打开File|Settings|Plugins,在搜索框里搜索RLanguageSupport,安装就可以了。安装结束后重启pycharm,再进入File|Settin…

    2022年8月28日
    1
  • dos的批量copy命令

    dos的批量copy命令1、主要是有需求,采取百度的,发现挺好的,还是帮作者推广一下。来自https://www.cnblogs.com/xiykj/archive/2004/01/13/13299548.html“Dos命令复制所有目录下同类型文件”2、需求:想拷贝文件夹内部的同类型文件(比如*.jpg),但是这个jpg文件在不同的文件夹下面,因此copy起来还是不方便,因此需要寻求命令代码解决3、命令是:for/r%iin(.jpg)*docopy“%i”/yd:\img其中,加粗的是变成自己需

    2022年7月18日
    17
  • Python中常用的第三方库_vscode如何使用第三方库

    Python中常用的第三方库_vscode如何使用第三方库第10章Python第三方库使用1.Python第三方库的获取和安装1.1pip工具安装1.2自定义安装1.3文件安装1.4pip工具使用2.pyinstaller库概述3.pyinstaller库与程序打包4.jieba库概述5.jieba库与中文分词6.wordcloud库概述7.wordcloud库与可视化词云1.Python第三方库的获取和安装Python第三方库依照安装方式灵活性和难易程度有3个方法,这3个方法是:pip工具安装、

    2022年10月14日
    0
  • 如何写一篇可实施的技术方案?

    如何写一篇可实施的技术方案?为何要写这篇博文?一个错误的方案设计重点是什么?拿模板说说总结

    2022年5月11日
    34
  • shopee和lazada受欢迎程度_马六甲东南亚电商erp

    shopee和lazada受欢迎程度_马六甲东南亚电商erp电商运营,各平台有各平台的特征,各地区有各地区的不同,没有什么一招鲜的方法可以通杀全平台,所以运营这个系列,我们一定要从分析不同站点的特征和操盘方式来开头。这一篇文章一定要有一个前提条件:旨在给刚入行和准备转战本土店的中小卖家一个简单的指南。可以在起步阶段有所参考。站点本身没有好坏之分,任何一个市场,都会有人做得风生水起。闲话少叙,我们先单提出来一个,台湾站。shopee和lazada站点全解析台湾站台湾站是Shopee的市场,Lazada没有。从跨境转向本土的同学,肯定是对该站点最熟悉了。因为中国台湾站是

    2022年9月15日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号