使用Keepalived实现Nginx高可用性

上篇keepalived+MySQL双主实现高可用性介绍了使用Keepalived配置MySQL透明高可用的方法,本文趁热打铁,实现Nginx+Keepalived的高可用性架构,相比MySQL的高可用更加简单。Nginx的配置方法可以参考Nginx基本服务与upstream配置详解,并使用里面的环境。其中debugo01和debugo02作为负载均衡,而debugo03和debugo04作为web server。

1. nginx监控脚本

该脚本检测ngnix的运行状态,并在nginx进程不存在时尝试重新启动ngnix。

2. 配置keepalived

一个为MASTER,一个为BACKUP。启动debugo01和debugo02的keepalived

下面关闭nginx并占用nginx的80端口,阻止nginx顺利重启。通过debugo02的日志可以看出,状态和VIP已经成功切换

^^
参考:
详解利用Keepalived+Nginx解决站点高可用性

Posted in Ops, Tools.
  1. Pingback: Nginx+Keepalived实现站点高可用 - 月松博客月松博客

  2. Pingback: 内部OA系统:Nginx+Keepalived实现站点高可用(1)-紫金星

  3. Pingback: Nginx+Keepalived实现站点高可用 | 写代码度日的骚年

  4. 我这边就是KEEPALIVED 无法执行检测NGINX脚本

    每次重启后都不会去启动NGINX

    该脚本是ROOT用户,KEEPALIVE 也是ROOT用户启动.
    人工执行该脚本是可以的.

  5. Pingback: Nginx+Keepalived实现站点高可用 | 张彬技术博客