Keepalived简介
Keepalived的作用是检测服务器的状态,如果有一台web服务器宕机,或工作出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工作正常后Keepalived自动将服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的服务器。
Keepalived安装
准备工作
下载Keepalived
首先到官网下载Keepalived,点击Keepalived官网
我把下载好的Keepalived及相关组件放到/opt/soft/Keepalived/
目录下
|
|
准备nginx
准备两台Nginx的主机,我这里两台的ip分别是:
- 192.168.1.21:80
- 192.168.1.23:80
也就是使用了上篇文章的nginx,hosts映射关系如下:
|
|
开始安装
安装Keepalived
分别在2台服务器独立安装Keepalived系统,一台是Master服务器(192.168.1.23)是主要的工作服务器,另一台是备份(slave)服务器(192.168.1.21),在Master服务器出现问题后,由后者接替其工作,也就是在一台工作的Nginx崩溃的情况下,系统能够检测到,并自动将请求切换到另外一台备份的Nginx服务器上。
|
|
安装目录
安装时我们使用的默认路径安装,可以看到安装目录是/usr/local/etc/keepalived
,keepalived.conf
是keepalived的主要配置文件
|
|
开始配置
外网进行Nginx访问的浮动IP:192.168.1.222
我们将192.168.1.23这台服务器上运行的Nginx作为主要的Nginx,其上的keepalived服务我们设置成Master方式。
我们将192.168.1.21这台服务器上运行的Nginx作为备用的Nginx服务,其上的keepalived服务我们设置为Backup方式。
配置Master
- master上的原始IP信息
|
|
- MASTER keepalived.conf配置
|
|
配置Backup
- backup上的原始IP信息
|
|
- BACKUP keepalived.conf配置
|
|
启动keepalived
启动主节点和备用节点,keeplived启动关闭命令
|
|
执行完以上几条命令后,我们就可以使用以下命令来启动、停止keepalived。
|
|
- 主机启动状态
主机绑定了虚拟ip
|
|
- 备机启动状态
备机未绑定虚拟ip
|
|
测试一下
1.访问192.168.1.234,进入主机的nginx
2.停掉192.168.1.23主机的keepalived服务,刷新页面,进入备机
主机ip:
|
|
备机ip:
|
|
备机日志:
|
|
3.重新启动192.168.1.24主机的keepalived服务,刷新页面,重新进入主机
备机日志:
|
|
检测nginx状态脚本
|
|
- 注意字符集问题,否则脚本不能执行
- 注意脚本权限问题,否则脚本不能运行