keepalived可以认为是VRRP协议在Linux上的实现,主要有三个模块,分别是core、check和vrrp。core模块为keepalived的核心,负责主进程的启动、维护以及全局配置文件的加载和解析。check负责健康检查,包括常见的各种检查方式。vrrp模块是来实现VRRP协议的。本文基于如下的拓扑图:
配置keepalived+nginx的方法比配置keepalived+LA Cluster的方法要简单 ; 使用nginx做调度器的话 , 只需要将vip进行实时调度 , 不用配置real server (因为在nginx 上配置) ; 但是需要注意的是 , 假设当前主机没有出现故障 , 但是nginx服务出现故障怎么办 ? 至需要检测nginx服务是否正常运行 , 如果没有正常运行 , 权重值减一定的数值 , 使status 变为 backup 就可以了 ;
1.1 配置nginx做为反代理服务器
在http配置段中添加upstream配置文 :
upstream SERVER_NAME {
server IP-1;
server IP-2;
}
在server配置段中的location 中添加配置文
location / {
proxy_pass http:SERVER _NEMA;
}
两台nginx反代服务器配置好后启动 , 并做测试 :
要确定好nginx反代服务器能够正常运行 ;
1.2 修改keepalived.conf配置文件 :
用nginx作调度器(director) 关键两点 :
(1) 网络资源的实时转移 (基于vrrp协议的实现)
(2) 实时监测nginx反代服务器的健康状态
所以配置文如下 :
原文地址:http://lgdong.blog.51cto.com/11880698/1869452