Nginx + keepalive如何实现双机主备

  介绍

小编给大家分享一下Nginx + keepalive如何实现双机主备,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!

首先介绍一下keepalive,它是一个高性能的服务器高可用或热备解决方案,起初是专为lv负载均衡软件设计的,keepalive主要来防止服务器单点故障的发生问题,可以通过其与Nginx的配合实现web服务端的高可用。

keepalive以VRRP协议为实现基础,VRRP是虚拟路由器冗余协议(虚拟路由冗余协议)的缩写,VRRP协议将两台或多台路由器设备虚拟成一个设备,对外提供虚拟路由器IP(一个或多个)。

VRRP出现的目的就是为了解决静态路由的单点故障问题的,它能保证当个别节点宕机时,整个网络可以不间断地运行。

下面我们介绍一下Nginx keepalive高可用方案的部署安装。

<强>环境准备

在两台主机上准备如下压缩文件:

<李>

keepalived-2.0.20.tar.gz

<李>

nginx-1.16.1.tar.gz

虚拟IP

真实IP

Nginx端口

主从

192.168.124.20 192.168.124.13

80

192.168.124.20 192.168.124.14

80

备份

<强>安装Nginx

 Nginx + keepalive如何实现双机主备

新建一个用户:

useradd  tianyan

确定安装目录,我这里的安装目录是:/home/tianyan tianyan_soft/Nginx。安装。

在这个目录下分别新建两个目录用于安装nginx和keepalive,解压两个压缩包。

执行安装命令:

。/configure ——prefix=/home/tianyan/tianyan_soft/nginx.install  \   ——sbin-path=/home/tianyan/tianyan_soft/nginx.install/sbin/nginx ——conf-path=/home/tianyan/tianyan_soft/nginx.install/conf/nginx.conf  \   ——error-log-path=/home/tianyan/tianyan_soft/nginx.install/error.log  \   ——http-log-path=/home/tianyan/tianyan_soft/nginx.install/access.log  \   ——pid-path=/home/tianyan/tianyan_soft/nginx.install/nginx.pid  \   ——lock-path=/home/tianyan/tianyan_soft/nginx.install/nginx.lock  \   ——用户=tianyan 组=tianyan  \   ——with-http_stub_status_module  \   ——with-http_gzip_static_module  \   ——with-http_ssl_module  \   ——with-http_realip_module  \   ——with-threads  \   ——with-pcre  \   ——http-client-body-temp-path=/home/tianyan/tianyan_soft/nginx.install/客户/,\   ——http-proxy-temp-path=/home/tianyan/tianyan_soft/nginx.install/代理/,\   ,——http-fastcgi-temp-path=/home/tianyan/tianyan_soft/nginx.install/fcgi, \   ——http-uwsgi-temp-path=/home/tianyan/tianyan_soft/nginx.install/uwsgi  \   ——http-scgi-temp-path=/home/tianyan/tianyan_soft/nginx。安装/scgi

如果报错,记得安装相关依赖:

yum  install  gcc  gcc-c + + nginx:,(紧急情况),绑定(),用0.0.0.0:80  failed  (13:, Permission 否认)。

注:以非根权限启动时,会出现nginx:[紧急情况]()绑定到0.0.0.0:80失败(13:没有权限)错误。

原因:Linux只有根用户可以使用1024年一下的端口

<强>解决办法:

1。按照根权限启动

2。将/usr/local/nginx/conf/nginx.参看文件中80的端口改以1024为上。

<强>安装keepalive

。/configure ——prefix=/usr/地方/keepalive

上述命令执行完毕后继续执行:

make ,,, make 安装

安装完毕后,目录是这个样子:

 Nginx + keepalive如何实现双机主备

将配置文件拷贝到系统对应的目录下

mkdir /etc/keepalive   cp /usr/地方/keepalive/etc/keepalive/keepalived.conf /etc/keepalive/keepalived.conf   cp /usr/地方/keepalive/etc/sysconfig/keepalived /etc/sysconfig/keepalive

编辑主节点的keepalive。参看

vim /etc/keepalive/keepalive。参看

内容参考如下:

! Configuration  File  for  keepalive      global_defs  {   #才能一个没重复的名字即可   router_id  hyq_slave才能   ,,}         # ng是否运行   vrrp_script  chk_nginx  {   ,,,script “/etc/keepalive/nginx_check.sh"   ,,interval  2   ,,weight  -20   }      vrrp_instance  VI_1  {   state 才能;BACKUP ,, #,必填,可以是主人或备份      interface  ens33才能   ,virtual_router_id  101   ,priority  90   advert_int 才能;1      #才能,如果两节点的上联交换机禁用了组播,则采用vrrp单播通告的方式   #才能,本机ip   unicast_src_ip  192.168.124.14才能   unicast_peer {才能   ,,,#,其他机器ip   ,,192.168.124.13   ,,}   #,才能设置nopreempt防止抢占资源   nopreempt才能      authentication {才能   ,,,auth_type 通过   ,,auth_pass  1111   ,,}      #,才能与上方nginx运行状况检测呼应   track_script {才能   ,,chk_nginx   ,,}   virtual_ipaddress {才能   ,,192.168.124.20   ,,}   }

Nginx + keepalive如何实现双机主备