加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 业界 > 正文

Keepalived+Lvs+Nginx搭建Nginx高可用集群

发布时间:2019-10-09 22:55:47 所属栏目:业界 来源:今日头条
导读:nginx是一款很是优越的反向署理器材,支持哀求分发,负载平衡,以及缓存等等很是适用的成果。在哀求处理赏罚上,nginx回收的是epoll模子,这是一种基于变乱监听的模子,因而其具备很是高效的哀求处理赏罚服从,单机并发手段可以或许到达上百万。nginx吸取到的哀求可以

在172.16.28.130 和172.16.28.131 上安装ipvs和keepalived:

  1. # 安装ipvs 
  2. sudo yum install ipvsadm 
  3. # 安装keepalived 
  4. sudo yum install keepalived 

在172.16.28.132 和172.16.28.133 上安装nginx:

  1. # 安装nginx 
  2. sudo yum install nginx 

必要留意的是,在两台nginx处事器上必要将防火墙封锁,不然lvs+keepalived的两台呆板就无法将哀求发送到两台nginx处事器上来:

  1. # 封锁防火墙 
  2. systemctl disable firewalld.service 

查察两台负载平衡呆板是否支持lvs:

  1. sudo lsmod |grep ip_vs 
  2. # 假如看到如下功效,则声名是支持的 
  3. [zhangxufeng@localhost ~]$ sudo lsmod|grep ip_vs 
  4. ip_vs 145497 0 
  5. nf_conntrack 137239 1 ip_vs 
  6. libcrc32c 12644 3 xfs,ip_vs,nf_conntrack 

假如上述呼吁没有任何功效,则执行sudo ipvsadm 呼吁启动ipvs之后,再通过上述呼吁举办查察即可。启动ipvs之后,我们就可以在/etc/keepalived/ 目次下编辑keepalived.conf 文件,我们以172.16.28.130 呆板作为master呆板,master节点设置如下:

  1. # Global Configuration 
  2. global_defs { 
  3.  lvs_id director1 # 指定lvs的id 
  4. # VRRP Configuration 
  5. vrrp_instance LVS { 
  6.  state MASTER   # 指定当前节点为master节点 
  7.  interface ens33    # 这里的ens33是网卡的名称,通过ifconfig可能ip addr可以查察 
  8.  virtual_router_id 51   # 这里指定的是假造路由id,master节点和backup节点必要指定一样的 
  9.  priority 151   # 指定了当前节点的优先级,数值越大优先级越高,master节点要高于backup节点 
  10.  advert_int 1   # 指定发送VRRP告示的隔断,单元是秒 
  11.  authentication { 
  12.  auth_type PASS # 鉴权,默认通过 
  13.  auth_pass 123456   # 鉴权会见暗码 
  14.  } 
  15.  virtual_ipaddress { 
  16.  172.16.28.120  # 指定了假造ip 
  17.  } 
  18. # Virtual Server Configuration - for www server 
  19. # 靠山真实主机的设置 
  20. virtual_server 172.16.28.120 80 { 
  21.  delay_loop 1   # 康健搜查的时距离断 
  22.  lb_algo rr # 负载平衡计策,这里是轮询 
  23.  lb_kind DR # 调治器范例,这里是DR 
  24.  persistence_time 1 # 指定了一连将哀求打到统一台真实主机的时刻长度 
  25.  protocol TCP   # 指定了会见靠山真实主机的协议范例 
  26.  # Real Server 1 configuration 
  27.  # 指定了真实主机1的ip和端口 
  28.  real_server 172.16.28.132 80 { 
  29.  weight 1   # 指定了当前主机的权重 
  30.  TCP_CHECK { 
  31.  connection_timeout 10  # 指定了举办心跳搜查的超时时刻 
  32.  nb_get_retry 3 # 指定了心跳超时之后的一再次数 
  33.  delay_before_retry 3   # 指定了在实行之前耽误多长时刻 
  34.  } 
  35.  } 
  36.  # Real Server 2 Configuration 
  37.  real_server 172.16.28.133 80 { 
  38.  weight 1   # 指定了当前主机的权重 
  39.  TCP_CHECK { 
  40.  connection_timeout 10  # 指定了举办心跳搜查的超时时刻 
  41.  nb_get_retry 3 # 指定了心跳超时之后的一再次数 
  42.  delay_before_retry 3   # 指定了在实行之前耽误多长时刻 
  43.  } 
  44.  } 

上面是master节点上keepalived的设置,对付backup节点,其设置与master险些是同等的,只是其state和priority参数差异。如下是backup节点的完备设置:

  1. # Global Configuration 
  2. global_defs { 
  3.  lvs_id director2 # 指定lvs的id 
  4. # VRRP Configuration 
  5. vrrp_instance LVS { 
  6.  state BACKUP   # 指定当前节点为master节点 
  7.  interface ens33    # 这里的ens33是网卡的名称,通过ifconfig可能ip addr可以查察 
  8.  virtual_router_id 51   # 这里指定的是假造路由id,master节点和backup节点必要指定一样的 
  9.  priority 150   # 指定了当前节点的优先级,数值越大优先级越高,master节点要高于backup节点 
  10.  advert_int 1   # 指定发送VRRP告示的隔断,单元是秒 
  11.  authentication { 
  12.  auth_type PASS # 鉴权,默认通过 
  13.  auth_pass 123456   # 鉴权会见暗码 
  14.  } 
  15.  virtual_ipaddress { 
  16.  172.16.28.120  # 指定了假造ip 
  17.  } 
  18. # Virtual Server Configuration - for www server 
  19. # 靠山真实主机的设置 
  20. virtual_server 172.16.28.120 80 { 
  21.  delay_loop 1   # 康健搜查的时距离断 
  22.  lb_algo rr # 负载平衡计策,这里是轮询 
  23.  lb_kind DR # 调治器范例,这里是DR 
  24.  persistence_time 1 # 指定了一连将哀求打到统一台真实主机的时刻长度 
  25.  protocol TCP   # 指定了会见靠山真实主机的协议范例 
  26.  # Real Server 1 configuration 
  27.  # 指定了真实主机1的ip和端口 
  28.  real_server 172.16.28.132 80 { 
  29.  weight 1   # 指定了当前主机的权重 
  30.  TCP_CHECK { 
  31.  connection_timeout 10  # 指定了举办心跳搜查的超时时刻 
  32.  nb_get_retry 3 # 指定了心跳超时之后的一再次数 
  33.  delay_before_retry 3   # 指定了在实行之前耽误多长时刻 
  34.  } 
  35.  } 
  36.  # Real Server 2 Configuration 
  37.  real_server 172.16.28.133 80 { 
  38.  weight 1   # 指定了当前主机的权重 
  39.  TCP_CHECK { 
  40.  connection_timeout 10  # 指定了举办心跳搜查的超时时刻 
  41.  nb_get_retry 3 # 指定了心跳超时之后的一再次数 
  42.  delay_before_retry 3   # 指定了在实行之前耽误多长时刻 
  43.  } 
  44.  } 

将master和backup设置成完全一样的缘故起因是,在master宕机时,可以按照backup的设置举办处事的无缝切换。

(编辑:湖南网)

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

热点阅读