Nginx教程

7、 Nginx的高可用集群

本文主要是介绍7、 Nginx的高可用集群,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目录
  • 7、 Nginx的高可用集群

7、 Nginx的高可用集群

1、什么是nginx高可用 

(1)需要两台nginx服务器 
(2)需要keepalived 
(3)需要虚拟ip 

2、配置高可用的准备工作 
(1)需要两台服务器  192.168.56.103 和  192.168.56.104 
(2)在两台服务器安装nginx 
(3)在两台服务器安装keepalived 
 
3、在两台服务器安装keepalived 
(1)使用yum命令进行安装  进入usr目录下输入如下命令
  yum install keepalived –y 
 查看是否安装上:rpm -q -a keepalived
 
(2)安装之后,在etc里面生成目录keepalived,有文件keepalived.conf
4、完成高可用配置(主从配置) 
主服务器与从服务器都要改配置文件
(1)修改/etc/keepalived/keepalivec.conf配置文件 以下内容替换到文件中
global_defs { # 全局定义
   notification_email { 
          acassen@firewall.loc 
          failover@firewall.loc 
          sysadmin@firewall.loc 
   } 
   notification_email_from Alexandre.Cassen@firewall.loc 
   smtp_server 192.168.17.129 
   smtp_connect_timeout 30 
   router_id LVS_DEVEL  # 访问的主机名,通过它可以访问到主机 命令:vi /etc/host
} 

# 检测脚本和权重参数 
vrrp_script chk_http_port { 
   
   script "/usr/local/src/nginx_check.sh"  # 检查脚本路径
   
   interval 2            #(检测脚本执行的间隔)每隔2秒执行一次脚本
   
   weight 2   # 权重  设置当前服务器的权重
   
} 

# 虚拟ip配置 
vrrp_instance VI_1 { 
        state MASTER      # 主服务器文件写MASTER,备份服务器上将  MASTER 改为  BACKUP    
        interface enp0s8    # 网卡 ,在哪个网卡上绑定虚拟主机的虚拟ip
        virtual_router_id 51      # 主、备机的virtual_router_id必须相同 
        priority 100          # 主、备机取不同的优先级,主机值较大,备份机值较小 主100/备可以90
        advert_int 1   # 每隔1秒发送一个心跳,查看主服务器是否存活
        # 权限校验方式
        authentication { 
            auth_type PASS  # 使用密码
            auth_pass 1111  # 密码1111
		} 
		virtual_ipaddress { 
            # 可以绑定多个虚拟ip
            192.168.56.50 # VRRP H虚拟ip地址 注意:虚拟ip要和这两个虚拟机在同一网段,即前三个要一致
		} 
} 
(2)在/usr/local/src添加检测脚本 文件名为:nginx_check.sh
#!/bin/bash 
A=`ps -C nginx –no-header |wc -l` 
if [ $A -eq 0 ];then 
    /usr/local/nginx/sbin/nginx   # 检测 nginx 的启动路径
    sleep 2 
    if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then 
        killall keepalived 
    fi 
fi 
(3)把两台服务器上nginx和keepalived启动 
启动nginx:
	./nginx 
启动keepalived:
	systemctl start keepalived.service 
查看keepalived进程:ps -ef | grep keepalived

注意:虚拟ip要和这两个虚拟机在同一网段,即前三个要一致,都是192.168.56

5、最终测试 
(1)在浏览器地址栏输入  虚拟ip 地址  192.168.56.50  两台服务器都绑定了这个虚拟ip

(2)把主服务器(192.168.56.103)nginx和keepalived停止
停止keepalived:
	systemctl stop keepalived.service 
停止nginx 
  	./nginx -s stop
浏览器再输入192.168.56.50

配置文件小结:
查看主机名命令:vi /etc/host
查看网卡名命令:ifconfig
这篇关于7、 Nginx的高可用集群的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!