如何给keepalived配置vip(虚拟ip)

2023-11-19

首先为了测试机器,准备两台服务器:

  • host1 172.28.23.73
  • host2 172.28.23.96
  • 虚拟ip 172.28.23.100

第一步:在线安装keepalived中间件

sudo yum install -y keepalived

有时候需要先卸载再安装

sudo yum -y remove keepalived

第二步:配置 keepalived

(1)host1 上 keepalived 配置

$ vim /etc/keepalived/keepalived.conf
vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 51
    priority 101
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        172.28.23.100
    }
}

简单的解释下参数

  • eth0是网卡,有些是eth33,可以通过ifconfig命令进行查看;
  • priority 是用来标记主从服务器的,priority 101表示主服务器,priority 100表示从服务器;
  • virtual_ipaddress表示虚拟ip的地址

(2)host2 上 keepalived 配置

$ vim /etc/keepalived/keepalived.conf
vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        172.28.23.100
    }
}

这两个配置文件差别就在priority 101priority 100,分别表示主从关系。

第三步: 启动 keepalived 服务

systemctl start keepalived.service
systemctl enable keepalived.service

第四步:查看IP地址信息

  • host1上 IP 地址信息
ip addr show eth0

得到输出:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether fa:16:3e:ab:d2:19 brd ff:ff:ff:ff:ff:ff
    inet 172.28.23.73/24 brd 172.28.23.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet 172.28.23.100/32 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 2001:fecc:0:623::9/64 scope global 
       valid_lft forever preferred_lft forever
    inet6 fe80::f816:3eff:feab:d219/64 scope link 
       valid_lft forever preferred_lft forever

其中可以看到 172.28.23.100/32 scope global eth0,说明现在host1是作为虚拟IP的master来运行的。

  • host2 上 IP 地址信息
$ ip addr show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether fa:16:3e:95:87:6b brd ff:ff:ff:ff:ff:ff
    inet 172.28.23.96/24 brd 172.28.23.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 2001:fecc:0:623::a/64 scope global 
       valid_lft forever preferred_lft forever
    inet6 fe80::f816:3eff:fe95:876b/64 scope link 
       valid_lft forever preferred_lft forever

此时host2上ip地址信息中不包含虚拟IP “172.28.23.100” 信息。
第五步:验证 IP 地址 Failover

  • 现在手动停止host1上的 keepalived 服务
systemctl start keepalived.service

重新查询host1的ip信息

ip addr show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether fa:16:3e:ab:d2:19 brd ff:ff:ff:ff:ff:ff
    inet 172.28.23.73/24 brd 172.28.23.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 2001:fecc:0:623::9/64 scope global 
       valid_lft forever preferred_lft forever
    inet6 fe80::f816:3eff:feab:d219/64 scope link 
       valid_lft forever preferred_lft forever

此时host1上ip地址信息中不包含虚拟IP “172.28.23.100” 信息。

接着在host2上面先停止在开启keepalived服务

systemctl stop keepalived.service
systemctl start keepalived.service
  • 再次查询host2的IP的信息
# ip addr show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether fa:16:3e:95:87:6b brd ff:ff:ff:ff:ff:ff
    inet 172.28.23.96/24 brd 172.28.23.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet 172.28.23.100/32 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 2001:fecc:0:623::a/64 scope global 
       valid_lft forever preferred_lft forever
    inet6 fe80::f816:3eff:fe95:876b/64 scope link 
       valid_lft forever preferred_lft forever

现在可以看到 host2 上 ip 地址信息中已经包含虚拟IP “172.28.23.100” 信息了。
此时如果再把 host1 上的 keepalived 服务启动,会发现虚拟IP “172.28.23.100” 又重新绑定到 host1 上了。

如何添加ipv6地址类型为虚拟IP(vip)

  • 思路是一样的,在确认好服务器支撑ipv6的情况下,将vip换成ipv6格式的地址就行,若是服务器不支持ipv6,则可以根据教程来添加ipv6支持!
  • 如将172.28.23.100改成2001:fecc:0:622::a/64
首先:重新修改houst1上的keepalived.conf文件
vim /etc/keepalived/keepalived.conf
vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 51
    priority 101
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        2001:fecc:0:622::a/64 #ipv6地址
    }
}
  • 重启keepalived服务
systemctl restart keepalived.service
  • 再次查看IP信息
ip addr show eth0

得到以下输出:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether fa:16:3e:ab:d2:19 brd ff:ff:ff:ff:ff:ff
    inet 172.28.23.73/24 brd 172.28.23.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 2001:fecc:0:622::a/64 scope global nodad  #虚拟的ipv6地址
       valid_lft forever preferred_lft forever
    inet6 2001:fecc:0:623::9/64 scope global 
       valid_lft forever preferred_lft forever
    inet6 fe80::f816:3eff:feab:d219/64 scope link 
       valid_lft forever preferred_lft forever

其他操作和之前添加vip是一样的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何给keepalived配置vip(虚拟ip) 的相关文章

  • Docker安装RabbitMQ docker安装RabbitMQ完整详细教程

    Docker安装RabbitMQ docker安装RabbitMQ完整详细教程 Docker 上安装 RabbitMQ 3 12 的步骤 选择要安装的RabbitMQ 版本 1 拉取 RabbitMQ 镜像 2 创建并运行容器 3 Rabb
  • H5移动端便捷兼容测试方式

    一 准备 1 谷歌浏览器 2 H链接 3 主流设备分辨率 尺寸 二 步骤 1 打开F12 选择手机模式 2 看顶部设备信息 点击 县级弹窗最底部的edit进入编辑模式 3 添加想要测试的设备 设备的宽高需要按照手机的分辨率和像素值计算 以i

随机推荐

  • Oracle的三种高可用集群方案

    转载自 http www cnblogs com baiboy p orc2 html label1 Oracle的三种高可用集群方案 1 RAC Real Application Clusters 多个Oracle服务器组成一个共享的Ca
  • Java 基本数据类型之间的运算规则

    博主前些天发现了一个巨牛的人工智能学习网站 通俗易懂 风趣幽默 忍不住也分享一下给大家 点击跳转到网站 前言 这里只讨论七种基本数据类型变量间的运算 不包含boolean类型的 1 自动类型提升 结论 当容量小的数据类型的变量与容量大的数据
  • 水果识别系统-tensorflow项目

    介绍 水果识别系统 可识别15种水果 人工智能 机器学习 模式识别项目 编程语言Python 基于tensorflow机器学习库通过卷积神经网络对数据集进行训练 经过多次迭代训练得到模型 预测精度达到99 技术栈 python tensor
  • Spring AOP、拦截器、过滤器的区别

    一 区别与概念 Filter过滤器 拦截web访问url地址 Interceptor拦截器 拦截以 action结尾的url 拦截Action的访问 Spring AOP拦截器 只能拦截Spring管理Bean的访问 业务层Service
  • 解决dataframe格式表格的合并

    这几天遇到了一个关于表格合并的问题 其实问题很简单 对于两个表格df1和df2 取出df1的每一行特征和df2的每一行的特征合并 再将label合并 但是看了很多pandas关于表的合并 其并不适用到我这个问题 所以在此我想简单的总结一下关
  • 使用虚拟机安装ikuai软路由系统,搭建pppoe拨号服务器

    搭建pppoe拨号服务器 一 搭建ikuai软路由系统 1 VMware版本 2 ikuai官网上下载系统镜像 3 使用虚拟机安装ikuai系统 4 登录ikuai管理界面 二 安装win7虚拟机验证拨号功能 三 其他电脑要使用这个pppo
  • 【解决】使用IDEA创建springboot项目时,出现错误Cannot download ‘https://start.spring.io‘: connect timed out

    第一步创建项目 create New Project 第二步 错误的意思为 初始化失败 https start spring io 请检查URL 网络和代理设置 错误消息 无法下载 https start spring io 连接超时 解决
  • java数据迁移程序

    环境 mysql 目标 亿级数据迁移 最终耗时 1 2小时 服务器更佳 建议在晚上或者没人访问的情况下操作 思路 1 不能一下将所有数据 导入到目标数据表 耗时太久 且占用资源 所有就用程序批量执行 每次执行一个范围段 比如第一个线程 1
  • stm32局部变量定义过大导致栈溢出

    我在stm32做归一化以及自相关的项目时 一开始直接定义了长度为8192的数组 进行自相关 单片机一直没有反应 上位机不输出信息 然后我把点数改为128后就能正常输出了 并且在调试后 我发现最高能运行的点数是512 经过上网查询我终于发现了
  • 容器适配器 -------------- stack 、queue、priority_queue的使用以及 为什么默认使用deque作为底层容器?

    什么是适配器 适配器是一种设计模式 设计模式是一套被反复使用的 多数人知晓的 经过分类编目的 代码设计经验的总结 该种模式是将一个类的接口转换成客户希望的另外一个接口 1 为什么将stack queue和priority queue称作为容
  • 第十六次CCF认证模拟试题(201903-2):二十四点(Java完整版)

    最近在练习算法 觉得CCF的算法题都还不错 就做了一下子 试卷原题 Java版解法 import java util ArrayList import java util Scanner public class Main public s
  • 不能不熬夜了

    我知道 熬夜不好 但是 现在 白天单位被鸟事所忙 没事磨洋工也得装个样子 看不了程序了 所以 只能把工作当作工作外 把业余当作工作了 况且 家庭压力太大
  • 如何用chrome查看post get及返回的数据

    chrome浏览器按下F12打开开发者工具 点击Network 找到过滤器 筛选XHR Method那一列会显示POST GET 转载于 https www cnblogs com yancongyang p 8142669 html
  • js调用angularjs的函数

    function test txm 获得对象 var appElement document querySelector ng controller MainCtrl 获得scope var scope angular element ap
  • 抖音短视频seo源码开发部署-技术分享(四)

    一 抖音短视频seo源码开发流程 抖音短视频SEO源码开发流程如下 1 分析需求 首先需要明确你的SEO目标 分析竞争对手 了解抖音短视频平台的规则 选定目标关键词和主题 2 编写代码 根据需求编写代码 并将其集成到你的应用程序或网站中 3
  • Association Class VS Full Class

    详细分析请见 http etutorials org Programming UML Chapter 6 Class Diagrams Advanced Concepts Association Class 1 关联类的必要性 关联类隔离了
  • X210开发板(S5PV210芯片)uboot中SD卡分区分析(init_raw_area_table函数)

    1 init raw area table函数调用关系 start s start armboot mmc initialize mmc init mmc startup init raw area table 2 struct raw a
  • visio画图常见问题解答

    使用visio画图有很多优点 与office相关产品完全兼容 可随时修改 操作简单等等 这里不再多说 我们在使用这一工具的时候常常会遇到一些小问题 但是这些小问题看似小 有的时候却会让我们折腾上半天 废话少说 现在把常见的几个问题的解决方案
  • java数组求和函数_Excel表格求和,难道你只会用SUM函数?(下)

    Excel求和函数 绝大部分人只会用SUM函数 今天再来分享4个求和函数 年前集齐8个求和函数年后开运 1 使用SUMXMY2函数返回两个数组中对应值差的平方和 SUMXMY2函数用于返回两数组中对应数值之差的平方和 函数语法 SUMXMY
  • 如何给keepalived配置vip(虚拟ip)

    首先为了测试机器 准备两台服务器 host1 172 28 23 73 host2 172 28 23 96 虚拟ip 172 28 23 100 第一步 在线安装keepalived中间件 sudo yum install y keepa