🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# keepalived服务概念说明 [TOC] ## 一、介绍说明 ### 1. keepalived软件能干什么? Keepalived软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能. Keepalived软件主要是通过VRRP协议实现高可用功能的。 VRRP是Virtual Router Redundancy Protocol(虚拟路由器冗余协议)的缩写, VRRP出现的目的就是为了解决静态路由单点故障问题的,它能够保证当个别节点宕机时,整个网络可以不间断地运行 ### 2. keepalived软件工作原理?(重点) 1. VRRP的出现是为了解决静态路由的单点故障。 2. VRRP是用过IP多播的方式(默认多播地址(224.0.0.18))实现高可用对之间通信的。 3. 工作时主节点发包,备节点接包,当备节点接收不到主节点发的数据包的时候,就启动接管程序接管主节点的资源。备节点可以有多个,通过优先级竞选, ### 3. keepalived软件主要功能? * 管理LVS负载均衡软件 * 实现对LVS集群节点健康检查功能 * 作为系统网络服务的高可用功能 ## 二、部署keepalived高可用服务: ### 1.确认反向代理服务是否工作正常 1) 在lb01/lb02上测试web服务器是否可以正常 ```sh curl -H host:www.etiantian.org 10.0.0.7/oldboy.html curl -H host:www.etiantian.org 10.0.0.8/oldboy.html curl -H host:www.etiantian.org 10.0.0.9/oldboy.html curl -H host:bbs.etiantian.org 10.0.0.7/oldboy.html curl -H host:bbs.etiantian.org 10.0.0.8/oldboy.html curl -H host:bbs.etiantian.org 10.0.0.9/oldboy.html ``` 2) 在浏览器上测试访问lb01/lb02 1. 解析hosts文件,将域名解析为10.0.0.5,进行测试访问 2. 解析hosts文件,将域名解析为10.0.0.6,进行测试访问 3. 测试前同步lb01和lb02配置文件 ```sh scp -rp /application/nginx/conf/nginx.conf 10.0.0.6:/application/nginx/conf/ ``` ## 三、安装部署高可用keepalived服务 ### 1.安装keepalived服务软件 ```sh yum install -y keepalived ``` ### 2.编写keepalived配置文件 1) 配置文件说明 /etc/keepalived/keepalived.conf 配置文件 * global_defs 全局配置(*) * vrrp_instance vrrp配置(*) * virtual_server LVS节点配置 2) lb01主负载均衡器配置 ```sh cat >/etc/keepalived/keepalived.conf <<"EOF" global_defs { router_id lb01 } vrrp_instance gorup01 { state MASTER interface eth0 virtual_router_id 51 priority 150 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 10.0.0.3/24 dev eth0 label eth0:1 } } EOF ``` ### 3.lb02配置信息 ```sh cat >/etc/keepalived/keepalived.conf <<"EOF" global_defs { router_id lb02 } vrrp_instance group01 { state BACKUP interface eth0 virtual_router_id 51 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 10.0.0.3/24 dev eth0 label eth0:1 } } EOF ``` ### 4.启动并测试 1) 启动 ```sh /etc/init.d/keepalived reload ``` 2) 进行测试访问 略