Keepalived配置与使用--转载
发布日期:2021-09-08 01:45:00 浏览次数:37 分类:技术文章

本文共 2653 字,大约阅读时间需要 8 分钟。

作者: JeremyWei | 可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明

介绍

是一个基于VRRP协议来实现的WEB服务高可用方案,可以利用其来避免单点故障。一个WEB服务至少会有2台服务器运行Keepalived,一台为主服务器(MASTER),一台为备份服务器(BACKUP),但是对外表现为一个虚拟IP,主服务器会发送特定的消息给备份服务器,当备份服务器收不到这个消息的时候,即主服务器宕机的时候,备份服务器就会接管虚拟IP,继续提供服务,从而保证了高可用性。

+---------VIP(192.168.0.7)----------+    |                                   |    |                                   |server(MASTER) <----keepalived----> server(BACKUP)(192.168.0.1)                       (192.168.0.2)

VRRP

在协议中,有两组重要的概念:VRRP路由器和虚拟路由器,主控路由器和备份路由器。 VRRP路由器是指运行VRRP的路由器,是物理实体,虚拟路由器是指VRRP协议创建的,是逻辑概念。一组VRRP路由器协同工作,共同构成一台虚拟路由器。该虚拟路由器对外表现为一个具有唯一固定IP地址和MAC地址的逻辑路由器。处于同一个VRRP组中的路由器具有两种互斥的角色:主控路由器和备份路由器,一个VRRP组中有且只有一台处于主控角色的路由器,可以有一个或者多个处于备份角色的路由器。VRRP协议使用选择策略从路由器组中选出一台作为主控,负责ARP相应和转发IP数据包,组中的其它路由器作为备份的角色处于待命状态。当由于某种原因主控路由器发生故障时,备份路由器能在几秒钟的时延后升级为主路由器。由于此切换非常迅速而且不用改变IP地址和MAC地址,故对终端使用者系统是透明的。

安装

编译安装:

$ wget http://www.keepalived.org/software/keepalived-1.2.2.tar.gz$ tar -zxvf keepalived-1.2.2.tar.gz$ cd keepalived-1.2.2$ ./configure --prefix=/usr/local/keepalived$ make && make install

拷贝需要的文件:

$ cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/keepalived$ cp /usr/local/keepalived/sbin/keepalived /usr/sbin/$ cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/$ mkdir -p /etc/keepalived/$ cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf

/etc/keepalived/keepalived.conf是默认配置文件

配置

master:

global_defs {   notification_email {      user@example.com   }   notification_email_from mail@example.org   smtp_server 192.168.200.1   smtp_connect_timeout 30   router_id LVS_DEVEL}vrrp_instance VI_1 {    state MASTER #标示状态为MASTER    interface eth0    virtual_router_id 51    priority 101   #MASTER权重要高于BACKUP    advert_int 1    mcast_src_ip 192.168.2.115 #vrrp实体服务器的IP    authentication {        auth_type PASS #主从服务器验证方式        auth_pass 1111    }    #VIP    virtual_ipaddress {        192.168.2.233 #虚拟IP    }}

backup:

global_defs {   notification_email {       user@example.com   }   notification_email_from mail@example.org   smtp_server 192.168.200.1   smtp_connect_timeout 30   router_id LVS_DEVEL}vrrp_instance VI_1 {    state BACKUP #状态为BACKUP    interface eth0    virtual_router_id 51    priority 100  #权重要低于MASTER    advert_int 1    mcast_src_ip 192.168.2.227 #vrrp实体服务器的IP    authentication {        auth_type PASS        auth_pass 1111    }    #VIP    virtual_ipaddress {        192.168.2.233 #虚拟IP    }}

使用

$ /etc/init.d/keepalived start | restart | stop

当启动了keepalived之后,通过ifconfig是看不到VIP的,但是通过ip a命令是可以看到的。 当MASTER宕机,BACKUP升级为MASTER,这些VRRP_Instance状态的切换都可以在/var/log/message中进行记录。

转载地址:https://blog.csdn.net/weixin_34310369/article/details/85590174 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:couchdb and redis
下一篇:SqlDataReader类

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2024年03月27日 17时43分30秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

php 合并切片的文件,webuploder+PHP实现大文件断点(切片)续传 2019-04-21
php 选择日期限制多少人代码,如何使用element-ui 限制日期选择 2019-04-21
oracle中rman坏块,Oracle基础教程之通过RMAN修复坏块 2019-04-21
oracle数据库优化11g,ORACLE 11G SQL 调优 2019-04-21
oracle 查找所有有数据的表,Oracle 查找数据库中有记录的表 2019-04-21
Oracle syskm,Python cx_Oracle.SYSDBA属性代码示例 2019-04-21
oracle的osw是什么,Tools:OSW工具-Oracle的OS watcher 2019-04-21
Linux系统如何植入脚本,【1分钟系列教程】Linux系统Shell脚本编写思路与过程 2019-04-21
linux 虚拟机 网络打印机,Fedora 17中实现虚拟机共享host虚拟打印机 2019-04-21
linux获取本进程参数,linux如何用pid获取进程参数? 2019-04-21
linux挂载文件系统上的时间,linux文件系统的挂载和自动挂载 2019-04-21
appium python_python爬虫23|手机,上来自己动了这就是Appium Python的厉害之处 2019-04-21
python中zip什么意思_python中zip是什么函数 2019-04-21
android bp文件_[Android]恋恋APK登录协议分析 2019-04-21
hexo部署成功但是没效果_Hexo博客教程(四)| 换一个炫酷的响应式主题 —— Matery... 2019-04-21
c++函数不明确_构建和使用Go软件包作为C库 2019-04-21
bufferedwriter缓冲区设置多大比较合适_Linux0.11缓冲区机制详解 2019-04-21
@scheduled每分钟执行一次_在Linux,Mac下定时执行Alink任务 2019-04-21
python 两个列表相互映射_Python中的lambda函数 2019-04-21
爬虫单个ip代理设置_爬虫使用代理IP的几种方案 2019-04-21