安装前准备

基础系统:CentOS 7

yum -y install gcc gcc-c++ autoconf automake make

yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel

1.下载keepalived

方法一:

yum -y install keepalived

#下载安装文件

cd /usr/local

wget http://www.keepalived.org/software/keepalived-2.0.18.tar.gz

#解压文件

tar -zxvf keepalived-2.0.18.tar.gz

#编译

cd keepalived-2.0.18/

#--prefix 指定安装地址

#/usr/local/keepalived/ 安装的目录,不要和自己安装文件一个目录,不然报错

./configure --prefix=/usr/local/keepalived/

#编译并安装

make && make install

2.配置

复制文件:

[root@localhost ~]# cp /usr/local/keepalived-2.0.18/keepalived/etc/init.d/keepalived /etc/init.d/

[root@localhost ~]# mkdir /etc/keepalived

[root@localhost ~]# cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/

[root@localhost ~]# cp /usr/local/keepalived-2.0.18/keepalived/etc/sysconfig/keepalived /etc/sysconfig/

[root@localhost ~]# cp /usr/local/keepalived/sbin/keepalived /usr/sbin/

编辑:

vi /etc/keepalived/keepalived.conf

/etc/keepalived/keepalived.conf内容如下

global_defs {

notification_email {

#mr@mruse.cn # 指定keepalived在发生切换时需要发送email到的对象,一行一个

#sysadmin@firewall.loc

}

notification_email_from xxx@163.com # 指定发件人

smtp_server smtp@163.com # smtp 服务器地址

smtp_connect_timeout 30 # smtp 服务器连接超时时间

router_id LVS_1 # 必填,标识本节点的字符串,通常为hostname,但不一定非得是hostname,故障发生时,邮件通知会用到

}

vrrp_script chk_tomcat { #详细看下面

script "/etc/keepalived/tomcat_check.sh" #检测服务shell

interval 2 #每个多长时间探测一次

weight -20 #每个多长时间探测一次

}

_instance VI_1 { # 实例名称

state MASTER # 必填,可以是MASTER或BACKUP,不过当其他节点keepalived启动时会将priority比较大的节点选举为MASTER

interface ens33 # 必填, 节点固有IP(非VIP)的网卡,用来发VRRP包做心跳检测

mcast_src_ip 192.168.2.89 #本机的ip,需要修改

virtual_router_id 101 # 必填,虚拟路由ID,取值在0-255之间,用来区分多个instance的VRRP组播,同一网段内ID不能重复;主备必须为一样;

priority 100 # 必填,用来选举master的,要成为master那么这个选项的值最好高于其他机器50个点,该项取值范围是1-255(在此范围之外会被识别成默认值100)

advert_int 1 # 必填,检查间隔默认为1秒,即1秒进行一次master选举(可以认为是健康查检时间间隔)

authentication { # 必填,认证区域,认证类型有PASS和HA(IPSEC),推荐使用PASS(密码只识别前8位)

auth_type PASS # 默认是PASS认证

auth_pass 1111 # PASS认证密码

}

virtual_ipaddress {

192.168.2.90 # 必填,虚拟VIP地址,允许多个

}

track_script { # 检测shell

chk_tomcat

}

}

vrrp_script 里的script返回值为0时认为检测成功,其它值都会当成检测失败;

weight 为正时,脚本检测成功时此weight会加到priority上,检测失败时不加;

A.主失败:主 priority < 从 priority + weight 时会切换。

B.主成功:主 priority + weight > 从 priority + weight 时,主依然为主

weight 为负时,脚本检测成功时此weight不影响priority,检测失败时priority – abs(weight)

A.主失败:主 priority – abs(weight) < 从priority 时会切换主从

主成功:主 priority > 从priority 主依然为主

检测shell:/etc/keepalived/tomcat_check.sh 可以根据 tomcat 服务检测结果返回不同的值,成功执行 exit 0 返回 0,失败执行 exit 1 返回 1,vrrp_script 可以结合返回值来对当前keepalived优先级做处理

3.开启服务

设置 keepalived 服务开机启动

# chkconfig keepalived on

# 启动keepalived 服务

# service keepalived start

查看keepalived进程,出现如下三个进程即为启动成功

[root@localhost ~]# ps -ef | grep keep

root 7925 1 0 11:27 ? 00:00:00 /usr/local/keepalived/sbin/keepalived -D

root 7926 1 0 11:27 ? 00:00:00 /usr/local/keepalived/sbin/keepalived -D

root 7927 7926 0 11:27 ? 00:00:00 /usr/local/keepalived/sbin/keepalived -D

root 7956 7888 0 12:02 pts/1 00:00:00 grep --color=auto keep

4.指定日志的输出文件

修改 /etc/sysconfig

vim /etc/sysconfig

#指定位置修改为如下内容

KEEPALIVED_OPTIONS="-D -d -S 0"

修改 /etc/rsyslog.conf

vim /etc/rsyslog.conf

#在最后一行添加如下内容

local0.* /var/log/keepalived.log

重启服务测试

service rsyslog restart

service rsyslog restart

#如下命令有日志内容输出即为成功

tailf /var/log/keepalived.log

#centos 基本可以成功,但是 debain 可能失败,失败上面 2 个文件可以改为如下内容,再重启服务测试

KEEPALIVED_OPTIONS="-D -d -S 1"

local1.* /var/log/keepalived.log

如果有哪些不对的地方烦请指认,先行感谢

linux keepalived 脚本,Linux下 keepalived 的安装和配置相关推荐

  1. ubuntu删除安装的mysql数据库_Ubuntu下MySQL数据库安装与配置与卸载

    安装: sudo apt-get install mysql-server mysql-client 一旦安装完成,MySQL 服务器应该自动启动.您可以在终端提示符后运行以下命令来检查 MySQL ...

  2. Linux下Nagios的安装与配置

    Linux下Nagios的安装与配置 2017-03-23 17:40:20     来源:    点击:0 Nagios是企业普遍使用的最具影响力的网络信息监视系统之一,它可以动态监视指定的网络状态 ...

  3. Linux下Tomcat的安装与配置

    本篇文章主要对如何在Linux下安装与配置Tomcat进行介绍.             如果想要了解Windows下Tomcat的安装与配置,请参考文章: https://blog.csdn.net ...

  4. Linux下samba的安装与配置

    physique 博客园 首页 新随笔 联系 管理 订阅 随笔- 203  文章- 0  评论- 33 Linux下samba的安装与配置 转载来源:http://blog.chinaunix.net ...

  5. linux下jdk的安装与配置jdk-6u45-linux-i586.bin

    linux下jdk的安装与配置 一.安装JDK从sun网站上直接下载JDK:http://download.oracle.com/otn-pub/java/jdk/6u45-b06/jdk-6u45- ...

  6. linux 安装cvs,linux下cvs详细安装和配置.docx

    Linux 下cvs详细安装和配置 2009-03-18 14:37:12 标签:[推送到技术圈] 版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始岀处 作者信息和本声明.否则将追究 ...

  7. Linux下EPICS的安装与配置——CSS安装与配置

    本文继"Linux系统下EPICS的安装与配置"文章后,给出了客户端CSS新版本Phoebus的安装与配置. Phoebus是一个框架和一系列工具,用于监视和操作大型控制系统,例如 ...

  8. linux mrtg 安装,17.1.2 Linux下MRTG的安装与配置

    17.1.2  Linux下MRTG的安装与配置 MRTG通过SNMP从设备中得到使用设备(如交换机)的网络流量信息,并把PNG格式图形以HTML方式显示出来,便于网络管理员对所监控设备(交换机)进行 ...

  9. Linux系统下禅道的安装以及配置教程

    Linux系统下禅道的安装以及配置教程 首先查看Linux安装的版本,64的还是32的! 查看Linux版本:[root@localhost ~]# getconf LONG_BIT 1.Linux中 ...

  10. MongoDb Windows linux平台环境及主流编程语言驱动安装同时配置mongoDb的远程连接

    MongoDb Windows linux平台环境及主流编程语言驱动安装同时配置mongoDb的远程连接 <一,>MongoDB 简介篇Ruiy; MongoDB是一个高性能,开源,无模式 ...

最新文章

  1. Redis源码分析-TCMalloc
  2. 组合游戏系列5: 井字棋、五子棋AlphaGo Zero 算法实战
  3. RabbitMQ单机多实例配置
  4. IOS基础之使用UICollectionView纯代码创建
  5. NDVI最大值法MVC合成之ArcGIS Cell Statistics 实现
  6. php面向对象之单表操作类
  7. 在Java中正确使用注释
  8. 通过拓展Function.prototype实现一个AOP
  9. javascript从url中获取请求参数
  10. MySQL5.5安装到最后一步卡住的解决办法(即使删除了隐藏文件内C:\ProgramData的MySQL以后还是没解决问题)
  11. PAT甲级1009 多项式相乘
  12. BAT及各大互联网公司前端笔试面试题--Html,Css篇
  13. Git操作的基本命令
  14. SNAP7 C++ 通讯
  15. 京东下单接口sdk java,Flutter 插件开发-接入京东SDK唤醒(ios篇)
  16. [Silverlight C#]反向波兰语表示法计算器教程
  17. PING命令结果中的TTL是什么?
  18. 基于php的心理测试,据说是韩国最受欢迎的心理测试~~
  19. #创新应用#飞流下载:下载娱乐两不误
  20. Linux操作系统 —— 普通用户无权限执行命令怎么办

热门文章

  1. HTML学习笔记之三(localstorage的使用)
  2. Android探索之旅 | 为应用添加角标(Badge)
  3. dede DedeTag Engine Create File False
  4. 中国五大顶级域名7月第一周增3.2万 美国减7.3万
  5. F5 LTM设备降级实战
  6. ASP.NET 2.0防止同一用户同时登陆【转】
  7. man iptables by iptables-save v1.3.5
  8. 数智化转型人才“大考”,综合人才成为企业“基础设施”
  9. 解决使用个推后背景音乐音量变小问题
  10. thinkphp-条件判断-范围判断-NOTBETWEEN