keepalive实现VIP高可用

1.keepalive原理图

2.keepalive下载

官方下载路径www.keepalived.org

3.keepalive安装

下载后是未编译的源码<spanlang="en-us>">

需要编译安装

Unzip keepalived-1.3.6.zip
Cd keepalived-1.3.6
./configure
Make all
Make install

4.keepalive配置

创建配置目录

Mkdir -p /etc/<wiz_tmp_highlight_tag class="cm-searching" style="background: yellow;">keepalived

编辑<wiz_tmp_highlight_tag class="cm-searching" style="background: yellow;">keepalived.conf文件

复制代码
! Configuration File for keepalived
 
global_defs {
   router_id router2
}
 
vrrp_instance VI_2 {
    state BACKUP
    interface eth1
    virtual_router_id 188
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 2222
    }
    virtual_ipaddress {
        134.64.14.175   
    }
}
复制代码
复制代码
! Configuration File for keepalived
 
global_defs {
   router_id router1
}
 
vrrp_instance VI_2 {
    state BACKUP
    interface eth1
    virtual_router_id 188
    priority 101
    nopreempt
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 2222
    }
    virtual_ipaddress {
        134.64.14.175 #vip
    }
}
复制代码

5.keepalive启动

/usr/local/sbin/keepalived -f /etc/keepalived/keepalived.conf

keepalived启动后会有三个进程

父进程:内存管理,子进程管理等等

子进程:VRRP子进程

子进程:healthchecker子进程

6.加入系统自启动

cp /usr/local/sbin/keepalived /etc/rc.d/init.d/
cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/
cp /usr/local/sbin/keepalived /usr/sbin/
vi /etc/rc.local
/etc/init.d/keepalived start

7.重启验证ip切换情况

8.问题解决

在配置过程中遇到一个报错,vip拉不起来

Jan 16 20:04:23 ty14165 Keepalived_vrrp[15067]: VRRP_Instance(VI_2) ignoring received advertisment...
Jan 16 20:04:24 ty14165 Keepalived_vrrp[15067]: (VI_2): ip address associated with VRID 88 not present in MASTER advert : 134.64.14.175
Jan 16 20:04:24 ty14165 Keepalived_vrrp[15067]: bogus VRRP packet received on eth1 !!!

问题原因是virtual_router_id 在同一网络中不同的集群,该参数值不能一致,必须修改

posted @   tonnytangy  阅读(4490)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示