1.keepalived简单介绍



        Keepalived是一个基于VRRP协议来实现的WEB服务高可用方案。能够利用其来避免单点故障。使用多台节点安装keepalived。

其它的节点用来提供真实的服务。相同的,他们对外表现一个虚拟的IP。主server宕机的时候。备份server就会接管虚拟IP,继续提供服务,从而保证了高可用性。

keepalived的原理图例如以下所看到的:

       

       

        最左边是客户机。它訪问我们的虚拟IP。然后我们有master(主控制节点)和backup(备用控制节点)。

最右边的就是我们提供服务的真机了。



2.搭建keepalived服务

       

        我们使用四个节点来做这个实验,两个充当控制节点。另外两个提供服务。

然后用真机的浏览器訪问虚拟IP。



        注意事项:

            1.全部节点要做好解析。

            2.时间同步

            3.yum源设置好(除了主要的源。高可用等也要加入)

          

      

        如图是我们的操作控制台:

       

       

        keepalived的安装包为:

        keepalived-1.2.13.tar.gz

       

        两个控制节点分别解压和编译、安装keepalived:

       



        在编译keepalived之前我们须要安装一些相关的包:

       

       

       

       

      

       编译keepalived源代码包:

      

      

       这个是我们的 编译结果:

      

      

       然后我们进行安装:

     

     

       上述的步骤在两个控制节点上都要进行,最后在配置文件里我们再设定主副节点。

建立软链接,把keepalived的配置文件和服务启动文件链接到指定位置:

      

     

       设置配置文件:

     


      

       我们设置了邮件的发送地址和ip。MASTER制定为主控制节点,虚拟id两个节点必须同样。

delay_loop 指定6秒检測服务状态。

     



       设置虚拟ip。这是我们客户机訪问的IP。

     

       

       这个是剩余的配置文件内容,我们设置连接方式为直连方式DR,负载策略为轮叫方式rr。协议威TCP。然后我们设置了两个提供服务节点的IP和port。分别为192.168.2.108和192.168.2.109的80port。也就是网页訪问服务。



    

       然后我们设置备机的配置文件。模式设置为BACKUP,权重改动为50。这样才干够优先让主控制节点接管。



       然后我们打开keepalived服务。并查看日志。发现已经识别了192.168.2.110虚拟IP:

            


      

        在两个提供真机的服务节点上安装arptable_jf软件:

        


      

        设置arptables的策略:

       



       

         

        然后我们要在两个控制节点上安装ipvsadm软件来监控服务的状态:

       

 

      

       

        假设无法安装的话。查看yum源,设置成例如以下所看到的:

       

      

        在两个提供服务的真机上安装httpd。设置完默认公布内容后启动服务:

        

        

         然后我们在主控制节点上查看当前的监控信息:

        

        

         在真机的浏览器上查看192.168.2.110的信息。

由于是轮叫策略。所以会轮换显示192.168.2.108和192.168.2.109的默认公布内容:

        

        

3小结:

         这样我们就搭建了keepalived下的高可用集群。

这个的复杂程度要低于heartbeat。在生产环境中也是很常见的。

linux高级技巧:集群之keepalived的更多相关文章

  1. Linux CentOs集群LVS+Keepalived负载均衡的实现

    准备工作 环境:Win10下Centos6.4虚拟机. 负载均衡:两台(一主一备)  LVS + Keepalived. HTTP服务器:3台. 给每台服务器配置IP 1.VIP(virtual ip ...

  2. LVS集群和Keepalived高可用实战

    第四十章LVS集群和Keepalived高可用实战 一.ARP协议 1.概念 地址解析协议,即ARP(AddressResolutionProtocol),是根据IP地址获取物理MAC地址的一个TCP ...

  3. Linux企业集群用商用硬件和免费软件构建高可用集群PDF

    Linux企业集群:用商用硬件和免费软件构建高可用集群 目录: 译者序致谢前言绪论第一部分 集群资源 第1章 启动服务 第2章 处理数据包 第3章 编译内容 第二部分 高可用性 第4章 使用rsync ...

  4. Linux服务器集群系统(一)--转

    引用地址:http://www.linuxvirtualserver.org/zh/lvs1.html LVS项目介绍 章文嵩 (wensong@linux-vs.org)2002 年 3 月 本文介 ...

  5. Linux服务器集群系统(一)(转)

    add by zhj:虽然是2002年的文章,但读来还是收益良多.在 章文嵩:谈LVS及阿里开源背后的精彩故事 中LVS发起人及主要贡献者谈了LVS的开发过程及阿里开源的一些故事 原文:http:// ...

  6. 【原创】Linux服务器集群通过SSH无密码登录

    SSH 无密码授权访问slave集群机器 1. 安装SSH,所有集群机器,都要安装SSH环境介绍:  Master : CNT06BIG01 192.168.3.61 SLAVE 1: CNT06BI ...

  7. Linux服务器集群系统(LVS)

    from:http://www.linuxvirtualserver.org/zh/lvs1.html#5 本文介绍了Linux服务器集群系统--LVS(Linux Virtual Server)项目 ...

  8. 高可用集群之keepalived+lvs实战-技术流ken

    keepalived简介 lvs在我之前的博客<高负载集群实战之lvs负载均衡-技术流ken>中已经进行了详细的介绍和应用,在这里就不再赘述.这篇博文将把lvs与keepalived相结合 ...

  9. 浅析Linux服务器集群系统技术

    浅析Linux服务器集群系统技术 目录 前言 常用的服务器集群 集群系统的优势 LVS集群的通用体系结构 为什么使用层次的体系结构 为什么是共享存储 可伸缩Web服务 前言 总结两篇技术文章,努力学习 ...

  10. Gravitational Teleport 开源的通过ssh && kubernetes api 管理linux 服务器集群的网关

    Gravitational Teleport 是一个开源的通过ssh && kubernetes api 管理linux 服务器集群的网关 支持以下功能: 基于证书的身份认证 ssh ...

随机推荐

  1. Knockout应用开发指南(完整版) 目录索引(转)

    使用Knockout有一段时间了(确切的说从MIX11大会宣传该JavaScript类库以来,我们就在使用,目前已经在正式的asp.net MVC项目中使用),Knockout使用js代码达到双向绑定 ...

  2. RecylerView为item添加点击事件

    RecyclerView侧重的是布局的灵活性,虽说可以替代ListView但是连基本的点击事件都没有,这篇文章就来详细讲解如何为RecyclerView的item添加点击事件. 1 原理: 为Recy ...

  3. Sqoop hive 和mysql 交互 完整案例

    本文完成:在hive里建管理表:注入部分数据:利用sqoop导入mysql中 期间:解决中文乱码问题   飞行报告故障表 建表命令 查看表 人工灌入少量数据 Windows系统向Linux系统数据传输 ...

  4. SpringBoot中如何使用jpa和jpa的相关知识总结

    jpa常用的注解: 注解 解释 @Entity 声明类为实体或表. @Table 声明表名. @Basic 指定非约束明确的各个字段. @Embedded 指定类或它的值是一个可嵌入的类的实例的实体的 ...

  5. js获取微信版本号的方法

    微信现在几乎已经普遍在使用,但是微信版本一直在更新,不同的版本有不同的功能,于是了解微信的版本号很重要,以便自己及时更新体验新的功能.那么如何用js获取微信版本号呢? 一.判断微信版本号 ? 1 2 ...

  6. php总结回顾

    做人不能一直埋着头往前跑,还要偶尔停下来看下来时的路.所以今天就来回顾下之前的吧 下面依次介绍 [一]TP加载流程 ①应用入口文件index.php→②tp公共入口文件ThinkPHP.php→③核心 ...

  7. Manjaro安装配置美化字体模糊发虚解决记录

    Manjaro安装记录 前言: ​ 记录自己Manjaro18安装的一些坑,避免下次满互联网找解决方法.在此之前试过Manjaro.Ubuntu.Fedora.linux Mint系统的pac.yum ...

  8. 洛谷——P3173 [HAOI2009]巧克力

    P3173 [HAOI2009]巧克力 题目描述 有一块n*m的矩形巧克力,准备将它切成n*m块.巧克力上共有n-1条横线和m-1条竖线,你每次可以沿着其中的一条横线或竖线将巧克力切开,无论切割的长短 ...

  9. Luogu P4016 「 网络流 24 题 」负载平衡问题

    吐槽题目难度,这个题建模好像比前两个都要难,但是难度评级却比第二个要低. 解题思路 依旧是考虑如何建模和建立源点汇点.每个点的货物数量到最后都一样的话肯定是等于他们的平均值.用 $num$ 数组存储原 ...

  10. UVA - 11212 Editing a Book (IDA*搜索)

    题目: 给出n(1<n<10)个数字组成的序列,每次操作可以选取一段连续的区间将这个区间之中的数字放到其他任意位置.问最少经过多少次操作可将序列变为1,2,3……n. 思路: 利用IDA* ...