前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【keepalive】安装

【keepalive】安装

作者头像
看、未来
发布2022-05-06 15:14:54
2920
发布2022-05-06 15:14:54
举报

网上教程挺多的,这个是能成功的。

文章目录

1. 官网下载tar包

代码语言:javascript
复制
https://www.keepalived.org/

喜欢哪个版本自己选。

最好先准备好这些东西:

代码语言:javascript
复制
apt-get install curl gcc libssl-dev libnl-3-dev libnl-genl-3-dev libsnmp-dev -y

2. 上传到指定目录安装

代码语言:javascript
复制
./configure --prefix=/usr/local/keepalived --sysconf=/etc
代码语言:javascript
复制
make && make install

3. 配置文件

代码语言:javascript
复制
cd /etc/keepalived
cp keepalived.conf keepalived.conf.bak
vim keepalived.conf

配置文件内容如下:

代码语言:javascript
复制
! Configuration File for keepalived

global_defs {
   # 负载均衡标识,在局域网内应该是唯一的。一般为主机名。
   router_id 主机名称
}

vrrp_script chk_http_port {
    # 检测心跳执行的脚本
    script "/usr/local/src/nginx_check.sh"
    # 检测脚本执行间隔,单位:秒
    interval 4
    weight 2
}

vrrp_instance VI_1 {
    # 指定keepalived的角色,MASTER为主,BACKUP为备
    state MASTER
    # 当前进行vrrp通讯的网络接口卡(当前centos的网卡)
    interface ens33
    # 指定VRRP实例ID(虚拟路由编号),范围是0-255,主从要一直
    virtual_router_id 202
    # 优先级,数值越大,获取处理请求的优先级越高, 优先级高的将成为MASTER。
    priority 100
    # 指定发送VRRP通告的间隔,默认为1s(vrrp组播周期秒数)
    advert_int 1
    # 设置验证类型和密码,MASTER和BACKUP必须使用相同的密码才能正常通信
    authentication {
        # 指定认证方式。PASS简单密码认证(推荐),AH:IPSEC认证(不推荐)。
        auth_type PASS
        # 指定认证所使用的密码。最多8位。
        auth_pass 2020
    }
    # 调用检测脚本
    track_script {
        chk_http_port
    }
    # 定义虚拟ip(VIP),可多设,每行一个
    virtual_ipaddress {
        192.168.199.143
    }
}

4. 配置nginx检测脚本文件

代码语言:javascript
复制
cd /usr/local/src
vim nginx_check.sh

脚本内容:

#!/bin/bash
A=`ps -C nginx --no-header | wc -l`
if [ $A -eq 0 ];then
    /usr/local/nginx-1.18.0/sbin/nginx
    sleep 4
    if [ `ps -C nginx --no-header | wc -l` -eq 0 ];then
        killall keepalived
    fi
fi

5. keepalived 启动/重启/停止/查看状态

代码语言:javascript
复制
systemctl start/restart/stop/status keepalived

注:启动keepalived会执行nginx检测脚本,此时如果nginx未启动则会同时启动nginx。

6. 查看日志

代码语言:javascript
复制
tail -f /var/log/messages

7. 浏览器访问虚拟IP地址

代码语言:javascript
复制
192.168.199.143

8、须知

使用service keepalived start命令启动服务时,默认会将/etc/sysconfig/keepalived文件中KEEPALIVED_OPTIONS参数作为keepalived服务启动时的参数,并从/etc/keepalived/目录下加载keepalived.conf配置文件,或用-f参数指定配置文件的位置。

另外需要注意的一点是,keepalived启动时不会检查配置文件的语法是否正确,所以我们在编写配置文件时要特别小心,别写错了,否则会出现一些意想不到的现象。

代码语言:javascript
复制
# Options for keepalived. See `keepalived --help' output and keepalived(8) and
# keepalived.conf(5) man pages for a list of all options. Here are the most
# common ones :
#
# --vrrp               -P    Only run with VRRP subsystem.
# --check              -C    Only run with Health-checker subsystem.
# --dont-release-vrrp  -V    Dont remove VRRP VIPs & VROUTEs on daemon stop.
# --dont-release-ipvs  -I    Dont remove IPVS topology on daemon stop.
# --dump-conf          -d    Dump the configuration data.
# --log-detail         -D    Detailed log messages.日志默认输出在/var/log/message文件中
# --log-facility       -S    0-7 Set local syslog facility (default=LOG_DAEMON)
#
KEEPALIVED_OPTIONS="-D"

keepalived正常运行后,会启动3个进程,其中一个是父进程,负责监控其子进程。一个是vrrp子进程,另外一个是checkers子进程。

代码语言:javascript
复制
shell> ps -ef | grep keepalived
root       831     1  0 11:22 ?        00:00:00 keepalived -D
root       840   831  0 11:22 ?        00:00:00 keepalived -D
root       841   831  0 11:22 ?        00:00:00 keepalived -D

到此keepalived就安装完成了。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-03-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • 1. 官网下载tar包
  • 2. 上传到指定目录安装
  • 3. 配置文件
  • 4. 配置nginx检测脚本文件
  • 5. keepalived 启动/重启/停止/查看状态
  • 6. 查看日志
  • 7. 浏览器访问虚拟IP地址
  • 8、须知
相关产品与服务
负载均衡
负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档