前提前段时间顺利地把整个服务集群和中间件全部从UCloud迁移到阿里云,笔者担任了架构和半个运维的角色。这里详细记录一下通过Nginx、Consul、Upsync实现动态负载均衡和服务平滑发布的核心知识点和操作步骤,整个体系已经在生产环境中平稳运行。编写本文使用的虚拟机系统为CentOS7.x,虚拟机的内网IP为192.168.56.200。 动态负载均衡的基本原理一般会通过upstre
转载 2024-08-27 10:45:34
91阅读
  Nginx 的负载均衡是通过 upstream 模块实现的。 upsteam 是Nginx 编译安装的时候,默认会安装的,upstream 还有热备的功能,默认带健康检查功能。负载均衡的基本架构,先上图: 测试使用三台机器,centos 7 环境(编译按安装 稍微有Linux 经验的朋友就不会在意,版本不要太 特别就行)主机名IP地址LB172.17.0.3Web-1172.17.0.4We
写在前面 这次又被问到Nginx四层负载均衡的问题了,别慌,我们一起来细细分析这个看似简单的问题。负载均衡可以分为静态负载均衡和动态负载均衡,接下来,我们就一起来分析下Nginx如何实现四层静态负载均衡和四层动态负载均衡。静态负载均衡 Nginx的四层静态负载均衡需要启用ngx_stream_core_module模块,默认情况下,ngx_stream_core_module是没有启用的,需要在安
一、nginx reload的问题问题描述nginx reload是有一定损耗的,如果你使用的是长连接的话,那么当reload nginx时长连接所有的worker进程会进行优雅退出,并当该worker进程上的所有连接都释放时,进程才真正退出。解决办法对于社区版nginx目前有三个选择方式:Tengine 的Dyups模块。微博的Upsync+Consul 实现动态负载均衡。OpenResty的b
转载 2024-02-17 12:37:41
97阅读
一、核心模块upstream1.upstream模块介绍2.相关参数2.1内部参数3.调度算法3.1rr轮询(默认)3.2weight(权重)3.3ip_hash3.4fair动态算法3.5url_hash二、http proxy 模块1.http proxy介绍2.参数3.配置4.部署两个虚拟主机5.测试 一、核心模块upstream1.upstream模块介绍nginx的负载均衡功能依赖于n
转载 2024-03-28 10:04:03
85阅读
一、yum安装consul  #安装yum-utils yum install -y yum-utils #配置consul的下载仓库 yum-config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo #必须上面步骤,不然会找不到仓库 yum -y install consul
转载 2024-04-15 10:58:51
113阅读
1、安装nginx-upsync-module wget https://github.com/weibocom/nginx-upsync-module/archive/master.zip 作用:nginx动态获取最新upstream信息 2、解压安装 unzip master.zip nginx
转载 2018-11-06 01:36:00
143阅读
2评论
简介为nginx服务器编写的一个上传模块,能够处理传统mutipart/form-data的上传,同时支持断点续传。为什么要使用upload module1.简单:使用上传模块,开发中不需要再处理文件的写入,只需要在nginx配置文件中增加几行,即可实现上传的功能。2.可靠:上传模块目前版本为2.2.0,已经相当稳定。3.功能强大:支持断点续传。使用upload module配置指令说明uploa
Nginx 的负载均衡模块目前支持 4种调度算法,下面进行分别介绍,其中后两项属于第三方调度算法。先来了解一下upstream的淘宝技术团队开发的nginx模快nginx_upstream_check_module来检测后方realserver的健康状态,如果后端服务器不可用,则所有的请求不转发到这台服务器。 以下为参数意义#server default: max_fails=1(设置最大失败次数
转载 2024-03-27 11:13:45
612阅读
 注:linux我使用的是7.0版本,Nginx版本是1.9.9,记得关闭防火墙开始正文(我是在/usr/local中配置的):安装PCRE库:1.cd /usr/local/ 2.wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.33/pcre-8.33.tar.gz 3.tar -zxvf pcre-8.33.tar.g
Nginx专栏手把手教你Nginx常用模块详解之ngx_http_access_module(一)手把手教你Nginx常用模块详解之ngx_http_addition_module(二)手把手教你Nginx常用模块详解之ngx_http_api_module(三)手把手教你Nginx常用模块详解之ngx_http_gzip_module(四)手把手教你Nginx常用模块详解之ngx_http_li
转载 2024-03-27 11:31:29
174阅读
Nginx服务搭建与基础演示 安装与配置//安装先决条件 sudo yum install yum-utils //安装nginx sudo yum install nginx配置nginx默认配置文件路径:# upstream模块 upstream starcold {#starcold upstream的名字 hash $remote_addr consistent;#负载均衡算法
转载 2024-04-24 13:33:31
231阅读
前面的博客介绍了怎么编译支持http3的nginx,并添加了upsync模块。为了在生产环境验证QUIC,我在aws搭建了一个Nginx + upsync + consul的集群 ,支持动态负载均衡。consul介绍consul是HashiCorp公司(曾经开发过vgrant) 推出的一款开源工具, 基于go语言开发, 轻量级, 用于实现分布式系统的服务发现与配置。 consul内置有KV存储,
转载 2024-04-03 14:30:49
94阅读
因为使用nginx自带的健康检查模块是被动检查的,即请求到一台服务器上报错500之后,发现有问题再转发到其他服务器,这样就多了一次转发消耗,而且并不能对某个接口进行检查,有些接口是故意报500错误的,这样也转发到了另外一台服务器,所以不合逻辑在这里,可以使用淘宝团队研发的nginx_upstream_check_module模块对服务器主动健康检查,定时检查某个接口,只要这个接口没有报500,就认
转载 2024-04-01 19:16:45
224阅读
Nginx+Consul+UpSync动态配置负载均衡(二)一、安装nginx模块1.合并module2.重新编译nginx二、添加stream配置文件1.添加stream模块2.创建stream配置文件3.创建持久化文件目录4.启动nginx三、模拟tcp服务端1.创建tcp服务器2.给每个服务做区分四、开启并验证tcp的动态负载均衡1.启动Consul服务2.添加服务端信息到consul3.
首先 安装好 Consul upsync然后: 1、配置安装Nginx 需要做配置,包括分组之类的,创建目录,有些插件是需要存放在这些目录的 groupadd nginxuseradd -g nginx -s /sbin/nologin nginxmkdir -p /var/tmp/nginx/client/mkdir -p /usr/local/nginx
Nginx + consul + upsync 完成动态负载均衡前置知识DNS域名解析过程外网映射nginx 核心知识什么是nginx应用场景名词解释四层负载均衡七层负载均衡负载均衡故障转移动态负载均衡Nginx + consul + upsync 完成动态负载均衡1、安装centos7的基础环境2、安装consul (服务注册与发现)3、安装nginx 并且为其添加upsync模块4、进行测试
各组件作用:ConsulWeb:Consul的客户端可视化界面,管理负载均衡配置的信息ConsulServer:Consul服务端,用于存放负载均衡配置Nginx:以间隔时间动态读取ConsulServer配置Upsync:新浪微博开源的基于Nginx实现动态配置的三方模块。Nginx-Upsync-Module的功能是拉取Consul的后端server的列表,并动态更新Nginx的路由信息。此模
upstream机制Nginx提供的upstream机制,是nginx设计理念的忠实体现。异步、无阻塞,这是nginx的追求,任何对这种设计思想的违反,都会导致nginx达不到它预期的性能,包括nginx提供的fastCGI也是如此。 Upstream到底用来干什么呢?就是nginx在正常的请求处理过程中,需要访问其他SERVER,这时,nginx提供了这样的机制,把底层的http通讯全
转载 2024-04-26 16:22:55
63阅读
一、Consul1、作用        服务注册:可能通过API将服务注册到Consul中。        服务发现:可以通过API获取服务的IP和PROT。        故障检测:支持如TCP、HTTP等方式的健康检查机制,从而当服务有故障时自动摘除。  
转载 2024-04-02 20:21:16
43阅读
  • 1
  • 2
  • 3
  • 4
  • 5