加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_丽江站长网 (http://www.0888zz.com/)- 科技、建站、数据工具、云上网络、机器学习!
当前位置: 首页 > 站长资讯 > 外闻 > 正文

Nginx+Keepalived实现Web服务器高可用

发布时间:2019-07-30 23:13:54 所属栏目:外闻 来源:今日头条
导读:副标题#e# 1、Nginx 业务背景 现公司需求快速搭建web服务器,对外提供给用户web服务。 需求拆分 需要基于http协议的软件,搭建服务实现 介绍 常见用法: 1) web服务器软件 httpd http协议 同类的web服务器软件:apache(老牌) nginx(俄罗斯) IIS(微软) 2)代

Keepalived软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能。因此,Keepalived除了能够管理LVS软件外,还可以作为其他服务(例如:Nginx、Haproxy、MySQL等)的高可用解决方案软件。

Nginx+Keepalived实现web服务器高可用

keepalived主要使用三个模块,分别是core、check和vrrp。

core模块为keepalived的核心,负责主进程的启动、维护以及全局配置文件的加载和解析。

check负责健康检查,包括常见的各种检查方式。

vrrp模块是来实现VRRP协议的。

2.2、安装

master和backup都需要进行安装,也就是server01和server03机器

#安装keepalived shell > yum -y install keepalived

Nginx+Keepalived实现web服务器高可用

keepalived需要使用的目录和文件:

Nginx+Keepalived实现web服务器高可用

2.3、配置

①备份主备服务器的配置文件

  1. shell > cd /etc/keepalived 
  2.  shell > cp keepalived.conf keepalived.conf_bak 

②分别修改主备服务器配置文件

  1. shell > vim keepalived.conf 

示例配置文件说明

  1. ! Configuration File for keepalived 
  2. #发送邮件的配置 
  3. global_defs { 
  4. notification_email { 
  5. acassen@firewall.loc 
  6. failover@firewall.loc 
  7. sysadmin@firewall.loc 
  8. notification_email_from Alexandre.Cassen@firewall.loc 
  9. smtp_server 192.168.200.1 
  10. smtp_connect_timeout 30 
  11. router_id LVS_DEVEL 
  12. #vrrp协议的配置 
  13. vrrp_instance VI_1 { 
  14. #工作模式 
  15. state MASTER 
  16. #监听的网卡 
  17. interface eth0 
  18. #虚拟路由id 需要和备服务器一致 
  19. virtual_router_id 51 
  20. #权重 优先级 
  21. priority 100 
  22. #vrrp包的发送周期 1s 
  23. advert_int 1 
  24. #权限验证 
  25. authentication { 
  26. auth_type PASS 
  27. auth_pass 1111 
  28. #需要绑定切换的VIP 
  29. virtual_ipaddress { 
  30. 192.168.200.16 
  31. 192.168.200.17 
  32. 192.168.200.18 

主服务器

  1. ! Configuration File for keepalived 
  2.  global_defs { 
  3.  notification_email { 
  4.  acassen@firewall.loc 
  5.  failover@firewall.loc 
  6.  sysadmin@firewall.loc 
  7.  } 
  8.  notification_email_from Alexandre.Cassen@firewall.loc 
  9.  smtp_server 192.168.200.1 
  10.  smtp_connect_timeout 30 
  11.  router_id LVS_DEVEL 
  12.  } 
  13.  vrrp_instance VI_1 { 
  14.  state MASTER 
  15.  interface eth0 
  16.  virtual_router_id 51 
  17.  priority 100 
  18.  advert_int 1 
  19.  authentication { 
  20.  auth_type PASS 
  21.  auth_pass 1111 
  22.  } 
  23.  #master默认只需要修改使用VIP即可 
  24.  virtual_ipaddress { 
  25.  192.168.17.200 
  26.  } 
  27.  } 

备服务器

  1. ! Configuration File for keepalived 
  2. global_defs { 
  3. notification_email { 
  4. acassen@firewall.loc 
  5. failover@firewall.loc 
  6. sysadmin@firewall.loc 
  7. notification_email_from Alexandre.Cassen@firewall.loc 
  8. smtp_server 192.168.200.1 
  9. smtp_connect_timeout 30 
  10. router_id LVS_DEVEL 
  11. vrrp_instance VI_1 { 
  12. #修改工作模式为备 
  13. state BACKUP 
  14. interface eth0 
  15. virtual_router_id 51 
  16. priority 100 
  17. advert_int 1 
  18. authentication { 
  19. auth_type PASS 
  20. auth_pass 1111 
  21. #注意修改VIP 
  22. virtual_ipaddress { 
  23. 192.168.17.200 

③分别按照顺序启动主服务器和备服务器的keepalived

  1. shell > service keepalived start 

④查看主备服务器的网卡信息

#需要通过ip a命令查看 分别在server01和server03查看 shell > ip a

2.4、模拟故障

模拟服务器故障宕机,查看是否可以切换服务到备用机器。

(编辑:应用网_丽江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读