CentOS7编译安装Keepalived2.0.19
实验环境:centos7
节点1:10.15.192.21
节点2:10.15.192.22
vip地址:10.15.192.23
1、下载文件
cd /usr/local/src
wget https://www.keepalived.org/software/keepalived-2.0.19.tar.gz
# 官网地址 https://www.keepalived.org/download.html
2、解压文件
tar xzf keepalived-2.0.19.tar.gz
cd keepalived-2.0.19
3、安装依赖
yum -y install libnl libnl-devel openssl-devel
4、初始化配置
cd keepalived-2.0.19/
./configure --prefix=/usr/local/keepalived
5、编译安装
make && make install
6、配置
mkdir /etc/keepalived
cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/
cp /usr/local/keepalived/sbin/keepalived /etc/init.d/
节点1配置文件如下,注意两个节点mcast_src_ip 和 priority 值
cat keepalived.conf
! Configuration File for keepalived global_defs {
router_id hf-ayd-web-balance-01
script_user root
enable_script_security
} vrrp_script chk_nginx {
script "/etc/keepalived/nginx_check.sh"
interval 2
weight -20
} vrrp_instance VI_1 {
state BACKUP
interface eth0
virtual_router_id 151
mcast_src_ip 10.15.192.21
priority 100
advert_int 1
nopreempt authentication {
auth_type PASS
auth_pass 1111
} virtual_ipaddress {
10.15.192.23
} track_script {
chk_nginx
}
}
节点2配置文件如下
cat keepalived.conf
! Configuration File for keepalived global_defs {
router_id hf-ayd-web-balance-02
script_user root
enable_script_security
} vrrp_script chk_nginx {
script "/etc/keepalived/nginx_check.sh"
interval 2
weight -20
} vrrp_instance VI_1 {
state BACKUP
interface eth0
virtual_router_id 151
mcast_src_ip 10.15.192.22
priority 90
advert_int 1
nopreempt authentication {
auth_type PASS
auth_pass 1111
} virtual_ipaddress {
10.15.192.23
} track_script {
chk_nginx
}
}
7、管理服务
systemctl start keepalived #启动
systemctl restart keepalived #重启
systemctl stop keepalived #关闭
systemctl status keepalived # 状态
常见问题一:keepalived配置nopreempt参数无效解决方法
nopreempt #设置为不抢占 注:这个配置只能设置在backup主机上,而且这个主机优先级要比另外一台高
master不能设置nopreempt
解决方案是:不设置master,全部设置成backup,这样大家都是backup,就都能添加nopreempt,即使原本成为master的LB坏掉重新修好之后也不会抢占master。
通常如果master服务死掉后backup会变成master,但是当master服务又好了的时候 master此时会抢占VIP,这样就会发生两次切换对业务繁忙的网站来说是不好的。所以我们要在配置文件加入 nopreempt 非抢占,但是这个参数只能用于state 为backup,故我们在用HA的时候最好master 和backup的state都设置成backup 让其通过priority来竞争
常见问题二:编译安装keepalived时提示以下错误
make
cd . && /bin/sh /data/keepalived-2.0.19/missing automake-1.15 --foreign Makefile
/data/keepalived-2.0.19/missing: line 81: automake-1.15: command not found
WARNING: 'automake-1.15' is missing on your system.
You should only need it if you modified 'Makefile.am' or
'configure.ac' or m4 files included by 'configure.ac'.
The 'automake' program is part of the GNU Automake package:
<http://www.gnu.org/software/automake>
It also requires GNU Autoconf, GNU m4 and Perl in order to run:
<http://www.gnu.org/software/autoconf>
<http://www.gnu.org/software/m4/>
<http://www.perl.org/>
make: *** [Makefile.in] Error 127
解决方法如下:
yum install automake -y
autoreconf -ivf
再次执行make
编译报错问题安装参考:https://blog.csdn.net/arackethis/article/details/42222905
部署参考:https://www.cnblogs.com/gray13/p/11690590.html
CentOS7编译安装Keepalived2.0.19的更多相关文章
- 编译安装Keepalived2.0.0
简介 Keepalived是基于vrrp协议的一款高可用软件.Keepailived有一台主服务器和多台备份服务器,在主服务器和备份服务器上面部署相同的服务配置,使用一个虚拟IP地址对外提供服务,当主 ...
- 编译安装 keepalived-2.0.16.tar.gz
一.下载安装包 wget https://www.keepalived.org/software/keepalived-2.0.16.tar.gz 安装相关依赖 把所有的rpm包放在一个目录下. rp ...
- CentOS7编译安装MySQL8.0
1.下载mysql8.0.16源码包和cmake源码包 cd /usr/local/srcwget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-b ...
- centos7 二进制安装mysql-8.0.19
安装包下载地址:https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz 1.检 ...
- Centos7编译安装kafka-manager-2.0.0.2
一.kafka-manager简介 项目地址为:https://github.com/yahoo/kafka-manager 为了简化开发者和服务工程师维护Kafka集群的工作,yahoo构建了一个叫 ...
- centos7 编译安装 redis-6.0.5
安装redis sudo yum install redis centos自带的redis才3.2 太旧了所以使用源码编译 需要先安装gcc新版才能编译 centos7 默认的 gcc 版本为:4.8 ...
- Centos7编译安装zabbix-4.0.1
架构组合:nginx1.9.10+php7.0.32+mysql5.7.22+zabbix4.0.1 nginx1.9.10 先装依赖 openssl-1.1.0f tar zxvf openssl- ...
- centos7编译安装pure-ftpd-1.0.42
一.下载 wget https://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.42.tar.gz 二.安装 tar xvf ...
- centos7下编译安装php-7.0.15(PHP-FPM)
centos7下编译安装php-7.0.15(PHP-FPM) 一.下载php7源码包 http://php.net/downloads.php 如:php-7.0.15.tar.gz 二.安装所需依 ...
随机推荐
- 北漂不易,逆风前行[给想在北京工作的java同学们诚恳的建议!]
作为一个北漂程序员(java开发),从业6年,北漂十一年,走了不少弯路,也曾孤独彷徨,楼主今天特地总结了一些经验,希望能给大家(准备做北漂 或 北漂的朋友们)一点启发.从生活.专业和薪水这2个方向来分 ...
- UDF——处理二维网格的利器:Boost.Geometry库
本文编译工具:VC++ UDF Studio 该插件可以直接在Visual Studio中一键编译.加载.调试UDF源码,极大提高编写排错效率,且支持C++,MFC,Windows API和第三方库, ...
- 关于App收集个人信息基本规范,这里公开征求你的意见!
关于App收集个人信息基本规范,这里公开征求你的意见! https://www.thepaper.cn/newsDetail_forward_4122573 以后国家开始规范App收集个信息基本规范, ...
- [FY20 创新人才班 ASE] 第 1 次作业成绩
作业概况 条目 备注 作业链接 [ASE高级软件工程]热身作业! 提交人数 19 未完成人数 2 满分 10分 作业情况总结 本次作业作为大家软工课程的第一次作业,完成度相当不错(尤其是在国外暑研/赶 ...
- Hibernate 连接MySQL/SQLServer/Oracle数据库的hibernate.cfg.xml文件
用Hibernate配置连接数据库可以方便我们对POJO的操作,节省了很多时间和代码.下面就分别说明连接不同数据库需要在hibernate.cfg.xml做的配置. 需要数据库驱动包可以点击这里下载: ...
- Unity调用windows系统dialog 选择文件夹
#region 调用windows系统dialog 选择文件夹 [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)] public ...
- mysql备份、还原数据库(命令行)
这里记录下MySQL如何通过命令行备份和还原数据库. 简单的三个步骤 方法很简单,可以分为三个步骤: 1.打开cmd控制台(命令行). 2.输入相应命令完成备份还原操作. 3.关闭cmd控制台. 就和 ...
- MySql 参数赋值bug (MySql.Data, Version=6.9.6.0 沙雕玩意)
直接将参数赋值为常量0则参数值为null,出现异常:MySql.Data.MySqlClient.MySqlException (0x80004005): Column 'PayType' canno ...
- 《Netty 权威指南(第2 版)》目录
图书简介:<Netty 权威指南(第2 版)>是异步非阻塞通信领域的经典之作,基于最新版本的Netty 5.0 编写,是国内很难得一见的深入介绍Netty 原理和架构的书籍,也是作者多年实 ...
- MAC电脑卸载Jenkins
终端输入下面命令 '/Library/Application Support/Jenkins/Uninstall.command' zudeMoPro:~ zhu$ '/Library/Applica ...