Nginx 配置高可用的集群

1、什么是 nginx 高可用?

“高可用性”(High Availability)通常来描述一个系统经过专门的设计,从而减少停工时间,而保持其服务的高度可用性。Nginx于Keepalived可以实现高可用,实现双机热备+自动切换;

2、但是怎么实现实现双机热备+自动切换呢?

  需要在服务器安装 keepalive,以及编写脚本;以下开始搭建

3、环境准备

3.1  (1)需要两台 nginx 服务器 (2)需要 keepalived (3)需要虚拟 ip
3.2      配置高可用的准备工作

  (1)需要两台服务器 192.168.2.112 和 192.168.2.113

   (2)在两台服务器安装 nginx

(3)在两台服务器安装 keepalived

4、在两台服务器安装 keepalived

  (1)使用 yum 命令进行安装  yum install keepalived –y
 
      (2)安装之后,在 etc 里面生成目录 keepalived,有文件 keepalived.conf

5、完成高可用配置(主从配置)

(1)修改/etc/keepalived/keepalivec.conf 配置文件 global_defs {
   notification_email {
     [email protected]
     [email protected]
     [email protected]
   }
   notification_email_from [email protected]
   smtp_server 192.168.2.112
   smtp_connect_timeout 30
   router_id LVS_DEVEL
}
 
vrrp_script chk_http_port {
 
   script "/usr/local/src/nginx_check.sh"   #这个是脚本命令
     interval 2      #(检测脚本执行的间隔)
 
    weight 2
 
}
              
vrrp_instance VI_1 {     state MASTER   # 备份服务器上将 MASTER 改为 BACKUP       interface ens33  //网卡     virtual_router_id 51   # 主、备机的 virtual_router_id 必须相同     priority 90     # 主、备机取不同的优先级,主机值较大,备份机值较小
        advert_int 1

  authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {         192.168.2.11 // VRRP H 虚拟地址
    }
}

(2)在/usr/local/src 添加检测脚本

#!/bin/bash A=`ps -C nginx –no-header |wc -l` if [ $A -eq 0 ];

  then     /usr/local/nginx/sbin/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

(4)将备份服务器的配置也是如上修改,将备份服务器上将 MASTER 改为 BACKUP

   interface ens33  //网卡     virtual_router_id 51   # 主、备机的 virtual_router_id 必须相同     priority 90     # 主、备机取不同的优先级,主机值较大,备份机值较小

(5)、把两台服务器上 nginx 和 keepalived 启动 启动 nginx:./nginx 启动 keepalived:systemctl start keepalived.service

 6 最终测试 (1)在浏览器地址栏输入 虚拟 ip 地址 192.168.2.11

(2)把主服务器(192.168.2.112)nginx 和 keepalived 停止,再输入 192.168.2.11
 

  

原文地址:https://www.cnblogs.com/hellohero55/p/11939196.html

时间: 2024-10-10 13:53:22

Nginx 配置高可用的集群的相关文章

heartbeat v2配置高可用web集群和基于nfs搭建MySQL高可用集群

安装环境:Centos 6.4, httpd2.4,mysql5.5,heartbeat v2 提供两台机器node1和node2,在/etc/hosts文件中添加名称解析,并且主机名称要与节点名称要相同,即uname -n的名称要和hosts定义的名称必须一样. #   IP                         HOSTNAME             ALIAS 10.204.80.79     node1.mylinux.com     node1 10.204.80.80  

lvs+keepalived+nginx+tomcat高可用高性能集群部署

2台前端 keepalived+lvs,热备的方式,保证一台lvs前端能正常访问就行,如果一台down,另外一台热备升级到master主机 master: 192.168.1.210 ubuntu 12.0.4 salve: 192.168.1.211 ubuntu 12.0.4 后端2台web服务器通过lvs的算法轮询被访问 web1: 192.168.1.204 centos 5.10 nginx+tomcat web2: 192.168.1.206 centos 5.10 nginx+to

nginx+keepalived+tomcat配置高可用web集群

基本架构: 角色 ip 安装软件 作用 主机名 nginx主 192.168.247.129 nginx+keepalived 反向代理 nginxmaster.com nginx备 192.168.247.130 nginx+keepalived 反向代理 nginxsalve.com tomcat1 192.168.247.128 tomcat web服务器 tomcat1.com tomcat2 192.168.247.131 tomcat web服务器 tomcat2.com nfs主

kubeadm配置高可用etcd集群

操作系统为ubuntu18 kubernetes版本为v1.15.1 k8s默认在控制平面节点上的kubelet管理的静态pod中运行单个成员的etcd集群,但这不是高可用的方案. etcd高可用集群至少需要三个成员组成. etcd默认端口为2379,2380,三个节点的这两个端口都要能通. 可以在kubeadm配置文件更改默认端口. 这个实验有五个服务器. 我开的腾讯云香港服务器做的实验,网速很快,ssh稳定. 百度云没测. 阿里云测试不给力. 推荐腾讯云. k8s1: master1? k8

高可用RabbitMQ集群安装配置

RabbitMQ集群安装配置+HAproxy+Keepalived高可用 rabbitmq 集群 消息队列 RabbitMQ简介 RabbitMQ是流行的开源消息队列系统,用erlang语言开发.RabbitMQ是AMQP(高级消息队列协议)的标准实现. AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计.消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然.AMQP的主

CentOS Linux 负载均衡高可用WEB集群之LVS+Keepalived配置

CentOS Linux 负载均衡高可用WEB集群之LVS+Keepalived配置 LB集群是locd balance集群的简称.翻译成中文是:负载均衡集群的意思:集群是一组相互独立的.通过高速网络互联的计算机相互之间构成一个组合,并以单一的系统的模式加以管理.LVS是Linux Virtual Server的简写,翻译中文是Linux虚拟服务器,是一个虚拟的服务器集群系统. 负载均衡集群:是为了企业提供更为实用,性价比更高的系统机构解决方案.负载均衡集群把用户的请求尽可能的平均分发到集群的各

nginx结合keepalived做高可用负载集群服务

一.概述 前面几篇介绍了nginx做web网站以及https网站,反向代理,LVS的NAT与DR调度负载,但由于nginx本身负载是七层,需要套接字,即使基于upstream模块模拟成四层代理也是瓶颈,因此本文介绍nginx基于keepalived做高可用负载均衡集群服务,目标就是两台keepalived对nginx反向代理负载服务做检查与调度,做成双主模式,nginx负载调度后端的httpd网站,任何一台调度器(nginx或keepalived服务)故障,不影响业务;后端任何一台web故障也不

Nginx+Tomcat+Keepalived实现高可用web集群

Nginx+Tomcat+Keepalived实现高可用web集群: 环境:CenOS 6.5Nginx-Master:10.10.10.128Nginx-Backup:10.10.10.129Tomcat1:10.10.10.130Tomcat2:10.10.10.131VIP:10.10.10.100 一.环境基础配置1.更换国内yum源2.关闭防火墙.SELinux3.时间同步 二.Web端安装Web服务 1.查看是否安装JDK [[email protected] ~]# java -v

Keepalived+Nginx+Tomcat 实现高可用Web集群(转)

Keepalived+Nginx+Tomcat 实现高可用Web集群 溯水心生 关注 2018.01.08 20:28* 字数 1382 阅读 965评论 1喜欢 9 集群规划图片 一.Nginx的安装过程 1.下载Nginx安装包,安装依赖环境包 (1)安装 C++编译环境 yum -y install gcc #C++ (2)安装pcre yum -y install pcre-devel (3)安装zlib yum -y install zlib-devel (4)安装Nginx 定位到n