keepalived 安装记录

keepalived 安装记录

下载keepalived

shell> wget https://www.keepalived.org/software/keepalived-2.2.8.tar.gz

安装keepalived

解压并编译安装

shell> tar -zxvf keepalived-2.2.8.tar.gz
shell> cd  keepalived-2.2.8
shell> ./configure --prefix=/zdxlz/public/keepalived
shell> make && make install

配置Keepalived

shell> mkdir /etc/keepalived
shell> cp /zdxlz/public/keepalived/etc/keepalived/keepalived.conf.sample /etc/keepalived/keepalived.conf
shell> cp /zdxlz/public/keepalived/etc/sysconfig/keepalived /etc/sysconfig/keepalived
添加到开机自启
shell> chkconfig keepalived on


如果提示keepalived: command not found 解决方法如下
shell> ln -s /zdxlz/public/keepalived/sbin/keepalived /sbin/ 
如果遇权限不足 执行以下命令
shell> chmod 755 /etc/init.d/keepalived


相关操作
shell> service keepalived start   #启动服务
shell> service keepalived stop    #停止服务
shell> service keepalived restart #重启服务

请不要着急去启动Keepalived

服务器IP配置信息

IP(虚拟IP)IP主机名Nginx端口
192.168.22.45192.168.22.43nginx_master80
192.168.22.45192.168.22.44nginx_backup80

master 配置

! Configuration File for keepalived

global_defs {
   router_id nginx_master
}

vrrp_script check_nginx{
        script "/etc/keepalived/check-nginx.sh"
        interval 2
#       timeout 1
        fall 1

}

vrrp_instance nginx  {
    state MASTER
    interface ens33
    virtual_router_id 51
    #本机IP地址
	mcast_src_ip 192.168.22.43   
    #优先级 数值越大 优先级越高
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
    	#虚拟IP(VIP)
        192.168.22.45 
    }
	 track_script{
        check_nginx
    }
}

backup 配置

! Configuration File for keepalived

global_defs {
   router_id nginx_backup
}

vrrp_script check_nginx{
        script "/etc/keepalived/check-nginx.sh"
        interval 2
#       timeout 1
        fall 1

}

vrrp_instance nginx  {
	#
    state BACKUP
    #网卡名称
    interface ens33
    virtual_router_id 51
    #本机IP地址
	mcast_src_ip 192.168.22.44      
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
    	#虚拟IP(VIP)
        192.168.22.45 
    }
	 track_script{
        check_nginx
    }
}

check-nginx.sh (linux进程检测脚本)

#!/bin/bash

check_nginx(){
    nginxpid=`ps -C nginx --no-header | wc -l`
    if [$nginxpid -eq 0]; then
    	service nginx start
    	sleep 1
    	nginxpid=`ps -C nginx --no-header | wc -l`
    	if [$nginxpid -eq 0]; then
    		killall keepalived
    	fi
    fi
}

check_nginx

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Keepalived是一款开源的高性能、轻量级的虚拟IP(VIP)高可用软件,常用于Linux系统中实现网络服务的高可用性。它通过VRRP (Virtual Router Redundancy Protocol) 协议来监控和切换服务器角色,当主节点发生故障时,备份节点会自动接管VIP服务。 **安装Keepalived**: 1. 安装前确保你的系统已经添加了相应的软件源,如果是基于Debian/Ubuntu系统,可以通过以下命令添加官方源: ```bash sudo apt-get update sudo apt-get install keepalived ``` 2. 如果你的系统使用的是RPM包管理器(如CentOS),则执行: ```bash sudo yum install keepalived ``` 3. 安装完成后,你可以通过`keepalived -v`检查是否安装成功,并配置启动项以便在系统启动时自动运行。 **Keepalived与Nginx高可用**: - **配置文件**: 编辑`/etc/keepalived/keepalived.conf`文件,定义VRRP组、虚拟IP地址、VIP绑定到哪个网卡,以及与Nginx相关的健康检查(通常使用TCP端口或HTTP响应)。 - **虚拟IP(VIP)**: 在Keepalived中为Nginx配置一个虚拟IP,这样客户端连接到这个IP,实际流量会被分发到后端的服务器。 - **健康检查**: 在配置文件中设置`track_script`或`vrrp_script`,指定Nginx的健康检查脚本,Keepalived会定期运行这些脚本来判断Nginx服务是否正常。 - **状态切换**: 当一个Nginx实例不可用时,Keepalived会根据VRRP协议切换到备份服务器,保证服务的连续性。 - **监控和日志**: 配置日志记录和通知策略,以便在服务状态变化时能够收到通知。 **相关问题--:** 1. Keepalived的配置文件主要包含哪些部分? 2. 如何在Keepalived中添加自定义的健康检查? 3. 在高可用场景下,如何避免VIP漂移导致的服务中断?

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值