Keepalived是一个开源的高可用性解决方案,用于在多个服务器之间实现故障切换和负载均衡。它主要用于确保网络服务的持续可用性,例如Web服务器、数据库服务器等。Keepalived使用虚拟路由冗余协议(VRRP)来实现故障检测和切换。

配置文件解析(不要复制这段):

! Configuration File for keepalived

global_defs {
   router_id 1  # 全局定义部分,指定路由器的ID,主调度器和副调度器id不能一致
}

vrrp_instance VI_1 {
   state MASTER   # VRRP实例的状态,主调度器为MASTER,辅调度器为BACKUP
   interface eth0   # 使用的网络接口
   virtual_router_id 51   # 虚拟路由器组的ID,主调度器要和辅一致
   priority 100   # 优先级
   advert_int 1   # VRRP广告的间隔时间
   authentication {
     auth_type PASS   # 认证类型为密码
     auth_pass 123456   # 认证密码
   }
   virtual_ipaddress {
     192.168.0.100  # 虚拟IP地址
   }
}

virtual_server 192.168.0.100 80 {   #虚拟服务器地址、端口
   delay_loop 6  # 健康检查的间隔时间
   lb_algo rr  # 负载均衡算法为Round Robin
   lb_kind DR  # 负载均衡模式为Direct Routing
   persistence_timeout 50  # 持久化超时时间
   protocol TCP  # 使用的协议为TCP

   real_server 192.168.0.101 80 {   #第一个Web节点的地址、端口
     weight 1  # 后端服务器的权重,权重越高,被分配该服务器的概率越大
     TCP_CHECK {     #健康检查的方式
       connect_timeout 3  # 连接超时时间
       nb_get_retry 3  # 重试次数
       delay_before_retry 3  # 重试前的延迟时间
       connect_port 80  # 连接端口
     }
   }

   real_server 192.168.0.102 80 {   #第二个Web节点的地址、端口
   weight 1  # 后端服务器的权重
   TCP_CHECK {
       connect_timeout 3  # 连接超时时间
       nb_get_retry 3  # 重试次数
       delay_before_retry 3  # 重试前的延迟时间
       connect_port 80  # 连接端口
   }
  }
}

无备注,便于复制粘贴

global_defs {
   router_id 2
}
vrrp_instance VI_1 {
    state BACKUP
    interface ens33
    virtual_router_id 2
    priority 99
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 123456
    }
    virtual_ipaddress {
        169.69.85.10
    }
}

virtual_server 169.69.85.10 3306 {
    delay_loop 15
    lb_algo rr
    lb_kind DR
    protocol TCP
    real_server 169.69.85.111 3306 {
    weight 2
    TCP_CHECK {
        connect_port 3306
        connect_timeout 3
        nb_get_retry 3
        delay_before_retry 4
        }
    }
    real_server 169.69.85.112 3306 {
    weight 2
    TCP_CHECK {
        connect_port 3306
        connect_timeout 3
        nb_get_retry 3
        delay_before_retry 4
        }
    }
}
最后修改:2024 年 04 月 24 日
如果觉得我的文章对你有用,请随意赞赏