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

本文详细介绍了如何在两台服务器host1和host2上配置keepalived以实现虚拟IP(VIP)172.28.23.100的Failover。通过调整priority设置主从服务器,并在host1停止服务后,VIP自动切换至host2。同时,文中还提及了添加IPv6类型的VIP的方法,只需修改配置文件并重启服务。
摘要由CSDN通过智能技术生成

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

  • 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<
在使用nginx和keepalived的负载均衡集群中,为了提高集群的高可用性,通常会使用虚拟IPVIP)来实现故障转移。以下是在CentOS 7上配置nginx和keepalived虚拟IP的步骤。 1. 安装nginx和keepalived 在CentOS 7上安装nginx和keepalived: ``` sudo yum install nginx sudo yum install keepalived ``` 2. 配置nginx 在nginx配置文件中添加以下内容: ``` upstream backend { server 192.168.0.1; server 192.168.0.2; } server { listen 80; server_name example.com; location / { proxy_pass http://backend; } } ``` 此配置中,将请求转发到名为“backend”的上游服务器组,其中包含两个IP地址(192.168.0.1和192.168.0.2)。您可以根据需要添加或删除服务器。 3. 配置keepalivedkeepalived配置文件中添加以下内容: ``` vrrp_script check_nginx { script "/usr/bin/pgrep nginx" interval 2 weight 2 } vrrp_instance VI_1 { interface eth0 state MASTER virtual_router_id 51 priority 101 authentication { auth_type PASS auth_pass mypassword } virtual_ipaddress { 192.168.0.100/24 dev eth0 } track_script { check_nginx } } ``` 此配置中,使用vrrp_script定义了一个名为“check_nginx”的脚本,以检查nginx进程是否正在运行。使用vrrp_instance定义了一个名为“VI_1”的VRRP实例,其中包含了虚拟路由器ID、节点优先级、虚拟IP地址和认证信息。使用track_script配置keepalived监控nginx进程的运行状态。 4. 启动服务 在两个节点上启动nginx和keepalived服务: ``` sudo systemctl start nginx sudo systemctl enable nginx sudo systemctl start keepalived sudo systemctl enable keepalived ``` 5. 测试虚拟IP 在浏览器中输入虚拟IP地址(例如http://192.168.0.100),应该能够访问nginx服务器集群。此时,如果一个nginx服务器宕机,keepalived将自动将虚拟IP地址转移到另一个nginx服务器上,以确保集群的高可用性。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值