[linux] 安装 keepalived
来源:互联网 发布:java api1.6中文版chm 编辑:程序博客网 时间:2024/06/18 13:37
下载 keepalived
官网下载
安装 keepalived
$ wget http://www.keepalived.org/software/keepalived-1.3.2.tar.gz$ tar -xzvf keepalived-1.3.2.tar.gz$ cd keepalived-1.3.2$ ./configure$ make && make install
- 安装问题 1
configure: error:!!! OpenSSL is not properly installed on your system. !!!!!! Can not include OpenSSL headers files.!!!
解决方法
检查问题发现 openssl 已经被安装,但是没有安装 openssl-devel
yum install openssl-devel
- 问题 2
In file included from vrrp_daemon.c:37:0:./../include/vrrp_iproute.h:32:24: 致命错误:linux/mpls.h:没有那个文件或目录 #include <linux/mpls.h> ^编译中断。make[2]: *** [vrrp_daemon.o] 错误 1make[2]: 离开目录“/root/soft/keepalived-1.3.2/keepalived/vrrp”make[1]: *** [all-recursive] 错误 1make[1]: 离开目录“/root/soft/keepalived-1.3.2/keepalived”make: *** [all-recursive] 错误 1
此问题没有解决,暂时搁置。采用 yum install keepalived
方法安装
- 问题3
keepalived 主备服务器没有正常通信
注:检测两个 keepalived 主机之间是否能通信的办法有 停掉主keepalived 服务,看备 keepalived 的日志 /var/log/messages 里是否有 keepalived 相关日志信息
解决方法
- 关闭 SELinux、firewall 等防火墙、安全策略软件
- keepalived 使用 vrp 协议进行通信(端口号为 112)
keepalived 配置说明
! Configuration File for keepalived## 配置故障发生时的通知对象以及机器标识global_defs { notification_email {## 故障时,给谁发送通知邮件,可添加多个# acassen@firewall.loc }## 邮件发送方# notification_email_from Alexandre.Cassen@firewall.loc## 通知邮件的smtp地址# smtp_server 192.168.200.1## 连接smtp服务器的超时时间# smtp_connect_timeout 30## 标识本节点的字条串,通常为hostname,但不一定非得是hostname。故障发生时,邮件通知会用到 router_id LVS_DEVEL}## 定义 vrrp 实例 vrrp_instance VI_1 {## MASTER,配置为主服务器;BACKUP 为备用服务器 state MASTER## 通讯网卡,与系统网卡名称一致## 查询网卡名称可使用 `ip a` or `ifconfig` or 'ip addr' 等命令 interface enp0s3## 虚拟路由标识,这个标识是一个数字,并且同一个 vrrp 实例使用唯一的标识 virtual_router_id 51## 优先级,0--254,权重值 MASTER 一定要高于 BACKUP priority 101## 同步时间间隔,实际部署时可以设置小一点,减少延时 advert_int 1## 验证信息 authentication {## 验证类型 auth_type PASS## 验证密码,用于通讯主机间验证,备用服务器必须与主服务器密码相同 auth_pass 1111 }## 虚拟 IP,主服务器与从服务器设置相同的虚拟 IP,可配置多个## 注:外部访问时,hosts 指向与本虚拟 IP 一致 virtual_ipaddress { 192.168.4.200 dev enp0s3# 192.168.200.17# 192.168.200.18 }## 虚拟服务定义块 virtual_server 192.168.4.200 80{## 健康检查时间间隔,单位 秒 delay_loop 6## 负载均衡转发规则,一般包括 DR、NAT 和 TUN 三种 lb_kind DR## 会话保持时间,单位 秒 persistence_timeout 50## 转发协议,一般有 TCP、UDP 两种 protocol TCP## 实际服务器 IP real_server 192.168.4.171 80{## 权重值 数值越大,权重越高 weight 1## 检测到真实服务 down 后执行的脚本 notify_down '/root/nginx_pid.sh'## http 或 ssl 检查方式 HTTP_GET|SSL_GET{ url{ path '/index.html' } connect_port 80 connect_timeout 3 nb_get_retry 3 delay_before_retry 3 }## Tcp检查 TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 connect_port 80 }## 脚本检查 MISC_CHECK {## 外部程序检查 misc_path /usr/local/bin/script.sh!## 脚本执行超时时间 misc_timeout 10 } }}
nginx_pid.sh 脚本内容
## 查看是否有 nginx 进程if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then ## 如果进程值为 零,重启 nginx /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf sleep 2## 验证 nginx 进程是否重启成功 if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then ## 结束 keepalived 进程 killall keepalived fifi
0 0
- Linux安装keepalived
- linux下安装keepalived
- [linux] 安装 keepalived
- Linux-----源码安装keepalived
- Linux-centos下安装keepalived
- linux安装keepalived(源码安装)
- Linux下安装配置使用 Keepalived
- Linux下安装配置使用 Keepalived
- Linux下Keepalived 安装与配置
- Linux下keepalived安装与配置
- keepalived安装
- keepalived安装
- keepalived 安装
- Keepalived安装
- 安装Keepalived
- keepalived安装
- keepalived 安装
- keepalived安装
- C++变量和常量
- SpringMVC接收页面表单参数
- 关于js中变量的作用范围
- Redis 的 keyspace notification
- 使用load data local infile 导入文本文件到MySQL乱码问题
- [linux] 安装 keepalived
- jsonp跨域
- SDWebImage的使用详解
- JAVA泛型1
- 抽象类与接口
- jMeter入门实例
- 类类类
- ···
- ReactNative添加广告SDK