巅云智能建站平台搭建版(创业流派版)火爆上线,毕生受权!新增:文章智能收罗+全站真静态打包+都会分站+智能小法式+不法词过滤+H5自顺应+智能链词等功效功效概况
赞助文档Help

keepalived连系nginx完成nginx高可用的体例

一佰互联网站建造(www.taishanly.com) 宣布日期 2020-04-23 09:20:56 阅读数: 212

1.简介

Keepalived 是一个基于VRRP和谈来完成的LVS办事高可用计划,能够操纵其来避免单点毛病。一个LVS办事会有2台办事器运转Keepalived,一台为主办事器(MASTER),一台为备份办事器(BACKUP),可是对表面现为一个假造IP,主办事器会发送特定的动静给备份办事器,当备份办事器收不到这个动静的时辰,即主办事器宕机的时辰, 备份办事器就会接收假造IP,持续供给办事,从而保障了高可用性。Keepalived是VRRP的完善完成,是以在先容keepalived之前,先先容一下VRRP的事理。

1.VRRP 和谈简介

在现实的收集情况中,两台须要通讯的主机大大都情况下并不间接的物理毗连。对如许的情况,它们之间路由若何挑选?主机若何选定达到目标主机的下一跳路由,这个题目凡是的处置体例有二种:

  1. 在主机上操纵静态路由和谈(RIP、OSPF等)
  2. 在主机上设置装备摆设静态路由

很较着,在主机上设置装备摆设静态路由是很是不实在际的,由于办理、保护本钱和是不是撑持等诸多题目。设置装备摆设静态路由就变得非常风行,但路由器(或说默许网关default gateway)却常常成为单点毛病。VRRP的目标便是为了处置静态路由单点毛病题目,VRRP经由过程一竞选(election)和谈来静态的将路由使命交给LAN中假造路由器中的某台VRRP路由器。

2.VRRP 使命机制

在一个VRRP假造路由器中,有多台物理的VRRP路由器,可是这多台的物理的机械并不能同时使命,而是由一台称为MASTER的担任路由使命,别的的都是BACKUP,MASTER并非一成稳定,VRRP让每一个VRRP路由器到场竞选,终究得胜的便是MASTER。MASTER具有一些特权,比方,具有假造路由器的IP地点,咱们的主机便是用这个IP地点作为静态路由的。具有特权的MASTER要担任转发发送给网关地点的包和呼应ARP要求。

VRRP经由过程竞选和谈来完成假造路由器的功效,一切的和谈报文都是经由过程IP多播(multicast)包(多播地点224.0.0.18)情势发送的。假造路由器由VRID(规模0-255)和一组IP地点构成,对表面现为一个周知的MAC地点。以是,在一个假造路由 器中,不论谁是MASTER,对外都是不异的MAC和IP(称之为VIP)。客户端主机并不须要由于MASTER的转变而点窜本身的路由设置装备摆设,对客户端来讲,这类主从的切换是通明的。

在一个假造路由器中,只要作为MASTER的VRRP路由器会一向发送VRRP布告信息(VRRPAdvertisement message),BACKUP不会抢占MASTER,除非它的优先级(priority)更高。当MASTER不可用时(BACKUP收不到布告信息), 多台BACKUP中优先级最高的这台会被抢占为MASTER。这类抢占是很是疾速的(<1s),以保障办事的持续性。由于宁静性斟酌,VRRP包操纵了加密和谈遏制加密。

3.VRRP 使命流程

(1).初始化:   

路由器启动时,若是路由器的优先级是255(最高优先级,路由器具有路由器地点),要发送VRRP布告信息,并发送播送ARP信息布告路由器IP地点对应的MAC地点为路由假造MAC,设置布告信息按时器筹办按时发送VRRP布告信息,转为MASTER状况;不然进入BACKUP状况,设置按时器查抄按时查抄是不是收到MASTER的布告信息。

(2).Master

  1. 设置按时布告按时器;
  2. 用VRRP假造MAC地点呼应路由器IP地点的ARP要求;
  3. 转发目标MAC是VRRP假造MAC的数据包;
  4. 若是是假造路由器IP的具有者,将接管目标地点是假造路由器IP的数据包,不然抛弃;
  5. 当收到shutdown的事务时删除按时布告按时器,发送优先权级为0的布告包,转初始化状况;
  6. 若是按时布告按时器超不时,发送VRRP布告信息;
  7. 收到VRRP布告信息时,若是优先权为0,发送VRRP布告信息;不然判定数据的优先级是不是高于本机,或相称并且现实IP地点大于本地现实IP,设置按时布告按时器,复位主机超时按时器,转BACKUP状况;不然的话,抛弃该布告包;

(3).Backup

  1. 设置主机超时按时器;
  2. 不能呼应针对假造路由器IP的ARP要求信息;
  3. 抛弃一切目标MAC地点是假造路由器MAC地点的数据包;
  4. 不接管目标是假造路由器IP的一切数据包;
  5. 当收到shutdown的事务时删除主机超时按时器,转初始化状况;
  6. 主机超时按时器超时的时辰,发送VRRP布告信息,播送ARP地点信息,转MASTER状况;
  7. 收到VRRP布告信息时,若是优先权为0,表现进入MASTER推举;不然判定数据的优先级是不是高于本机,若是高的话认可MASTER有用,复位主机超时按时器;不然的话,抛弃该布告包;

4.ARP查问处置

当外部主机经由过程ARP查问假造路由器IP地点对应的MAC地点时,MASTER路由器答复的MAC地点为假造的VRRP的MAC地点,而不是现实网卡的 MAC地点,如许在路由器切换时让内网机械发觉不到;而在路由重视新启动时,不能自动发送本机网卡的现实MAC地点。若是假造路由器开启的ARP代办署理 (proxy_arp)功效,代办署理的ARP回应也回应VRRP假造MAC地点。

2.搭建情况

1.办事器1:10.63.0.154  装置keeplived并设置priority 优先值为100
2.办事器2:10.63.0.155  装置keeplived并设置priority 优先值为98
3.设置两台办事器对应的假造ip为:10.63.0.158

3.装置keepalived主节点

本次装置keepalived接纳yum的形式,在办事器1上装置,首要操纵步骤以下:

1.装置ipvsadm,指令:yum install ipvsadm,装置完成后,可经由过程指令ipvsadm –v查抄版本号。
2.装置keepalived,指令:yum install keepalived,装置完成后,可经由过程指令Keepalived –v查抄版本号。
3.建立/usr/local/nginx/nginx_check.sh剧本。剧本内容以下: 

#!/bin/bash
#判定nginx办事是不是启动,若是不存在,挪用nginx启用号令,并遏制2秒,若#启动失利,杀掉keepalived
A=`ps -C nginx --no-header |wc -l`
if [ $A -eq 0 ];then 
 /usr/sbin/nginx
 sleep 2
 if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then
  killall keepalived
 fi
fi

设置nginx_check.sh权限,设置号令为:chmod  777   /usr/local/nginx/nginx_check.sh

4.设置装备摆设keepalived节点信息,默许设置装备摆设文件为/etc/keepalived/keepalived.conf。keepalived.conf设置装备摆设文件以下: 

! Configuration File for keepalived

global_defs {
 router_id nginx_master154
}

vrrp_script chk_nginx {
 script "/usr/local/nginx/nginx_check.sh"
 interval 2
 weight 20
}
vrrp_instance VI_1 {
 state MASTER
 interface eth0
 virtual_router_id 154
 mcast_src_ip 10.63.0.154
 priority 100
 nopreempt
 advert_int 1
 authentication {
  auth_type PASS
  auth_pass 1111
 }
 track_script {
  chk_nginx
 }
 virtual_ipaddress {
  10.63.0.158
 }
}
}

设置装备摆设文件关头参数申明:

  1.  router_id   //界说节点称号
  2. vrrp_script chk_nginx {    script "/etc/keepalived/nginx_check.sh"     interval 2     weight -20  }    //每隔2秒中去履行/etc/keepalived/nginx_check.sh剧本一次,这项查抄从起头便一向遏制,interval表现距离时候,weight -20的意义是,剧本履行当判定非常时,把10.63.0.154这个节点的优先级下降20。
  3. state MASTER   //表现该节点脚色界说为MASTER
  4. virtual_router_id 154  //界说假造的节点标识
  5. interface eth0   //界说网卡称号 查抄办事器网卡称号可经由过程指令:ifconfig或ip  a,如图:

以上设置装备摆设文件完成后,启动nginx,启动keepalived,可测试nginx是不是可被假造ip地点拜候。启动keepalived指令:systemctl start keepalived.service,启动后可经由过程指令 systemctl status keepalived.service查抄状况。操纵假造ip拜候nginx主界面截图以下:

    

3.装置keepalived备用节点

 在办事器2下面装置keepalived的体例和办事器1完整一样,在keepalived.conf设置装备摆设文件中只要点窜三个处所:

  1. interface eth0   //界说网卡称号 查抄办事器2的网卡 如网卡称号为 eno24 ,则界说为:interface eno24
  2. priority  //优先值设置为98
  3. mcast_src_ip 10.63.0.155

两台办事器下面的keepalived装置胜利后,经由过程假造ip10.63.0.158挪用测试,发明一直是主节点的页面,不会挪用备用节点的页面。设置把办事器1下面的keepalived封闭后,再次挪用,会呈现备用节点的主界面,以下图:

    

4.Linux办事办理东西systemctl

Linux中,有service和chkconfig两个号令办理办事。systemctl 是办理办事的首要东西, 它整合了chkconfig 与 service功效于一体。(能够经由过程该号令办理yum装置软件,同时设置是不是开机启动)

  1. systemctl is-enabled servicename.service #查问办事是不是开机启动
  2. systemctl enable *.service #开机运转办事
  3. systemctl disable *.service #打消开机运转
  4. systemctl start *.service #启动办事
  5. systemctl stop *.service #遏制办事
  6. systemctl restart *.service #重启办事
  7. systemctl reload *.service #从头加载办事设置装备摆设文件
  8. systemctl status *.service #查问办事运转状况
  9. systemctl --failed #显现启动失利的办事

注:*代表某个办事的名字,如http的办事名为httpd

比方在CentOS 7 上装置http

[root@CentOS7 ~]# yum -y install httpd

启动办事(同等于service httpd start)  systemctl start httpd.service
遏制办事(同等于service httpd stop)  systemctl stop httpd.service
重启办事(同等于service httpd restart) systemctl restart httpd.service
查抄办事是不是运转(同等于service httpd status) systemctl status httpd.service 开机自启动办事(同等于chkconfig httpd on)  systemctl enable httpd.service
开机时禁用办事(同等于chkconfig httpd on) systemctl disable httpd.service

ps -ef | grep nginx #查抄办事历程

#非systemctl设置装备摆设开机启动:chmod +x /etc/rc.d/rc.local
#翻开rc.localvi /etc/rc.local
#插手启动剧本此中途径必然要用全途径如:/usr/local/nginx/sbin/nginx

以上便是本文的全数内容,但愿对大师的学习有所赞助,也但愿大师多多撑持网页设想。

一佰互联是天下着名建站品牌办事商,咱们有九年、网站建造、网页设想、php开辟和域名注册及假造主机办事经历,供给的办事更是天下着名。最近几年来还整合团队上风自立开辟了可视化多用户”“3.0平台版,拖拽排版网站建造设想,轻松完成pc站、手机微网站、小法式、APP一体化全网营销网站扶植 ,已胜利的为天下上百家收集公司供给自助建站平台搭建办事。

相干消息more

06
12月
若何采办假造主机?若何长途买卖

若何采办假造主机?若何长途买卖假造主机是在长途大办事器硬盘上分别出来的小空间,他供给网页运转的根基情况。办事商经由过程假造主机开设办理法式,经由过程... >>概况

03
05月
网站若何做首创内容

对网站来讲,首创内容的主要性想必大师都晓得,是一个网站的魂灵和成长底子。大师也都晓得这个事理,但由于惰性习气或不晓得从那里取得首创内容,... >>概况

20
04月
HTML5地舆定位实例

本文实例报告了html5获得地舆定位的体例,分享给大师供大师参考。详细体例以下:html5 获得坐标代码以下: 复制代码代码以下:<!... >>概况

28
04月
php获得文件名后缀经常利用体例小结

本文实例汇总了php获得文件名后缀经常利用体例。分享给大师供大师参考。详细完成体例以下:<?phpheader("Content-... >>概况

高端网站扶植

美工统筹SEO,为企业电子商务营销助力!

德律风:

023-85725751
建站

产物

域名注册 假造主机 云办事器 企业邮局
智能建站 APP打包 微站/小法式 创业平台
网站推行 媒体营销 智能收罗 AI机械人
400德律风 短信营销 店销机械人
私家定制 流派网站