【上云基础系列 02-01】通过SLB+1台ECS+ESS弹性伸缩,搭建一个精简版的上云标准弹性架构(含方案及教程)

本文涉及的产品
全球加速 GA,每月750个小时 15CU
公网NAT网关,每月750个小时 15CU
传统型负载均衡 CLB,每月750个小时 15LCU
简介: 通常,构建一个弹性架构(即使是一个最基础的入门版),至少需要2台ECS。但是,很多小微企业刚开始上云的时候,为了节省成本不愿意购买更多的服务器。通过 “ALB+ESS弹性伸缩+1台ECS+RDS”方案,在保障低成本的同时,也不牺牲业务架构的弹性设计,更避免了很多人因为节省成本选择了单体架构后频繁改造架构的困局。方案中的几个设计非常值得小微企业借鉴:(1)通过ALB/RDS的按量付费,节省了初期流量不大时的费用;(2)通过ESS弹性伸缩,不需要提前购买服务器资源,但是当业务增长或减少时却保持了资源弹性自动扩缩容。

前言:

通常,构建一个弹性架构的时候,即使是一个最基础的入门版,也至少需要SLB+2*ECS+RDS(至少需要2台ECS),如下图和内容所示:

【入门级】标准弹性架构建设方式

方案介绍:【上云基础系列-02】企业推荐!必学必会的上云标准架构(弹性架构)

基于“入门级标准弹性架构”建站教程:


但是,很多小微企业刚开始上云的时候,为了节省成本不愿意购买更多的服务器,此时可以低成本的大家一个架构么?答案是可以!

通过应用型负载均衡ALB+ESS弹性伸缩+1台云服务器ECS+数据库RDS,也可以低门槛搭建一个既便宜又好用的弹性架构。

那么,增加了这么多产品,如何做到低成本的呢,关键在于业务初期的产品选型和计费方式,总体有以下几个策略:
1)ALB、RDS等新增产品,选择按量付费,可以有效节省业务初期流量不大时的费用

2)通过ESS弹性伸缩,不需要提前购买服务器资源,但是当业务增长或减少时,能根据设定的策略自动调整计算资源数量(即业务所需的实例数量),应对业务流量波动的同时,提高资源利用率,有效降低成本

整个方案,在保障低成本的同时,也不牺牲业务架构的弹性设计,更避免了很多人因为节省成本选择了单体架构后频繁改造架构的困局。

应用型负载均衡ALB+ESS弹性伸缩+1台云服务器ECS+数据库RDS”的弹性架构 精简版

实战教程:

以下,是一个Web应用上云经典架构实战。选择并模拟一套开源的代码架构(若依开源代码),通过在 “应用型负载均衡ALB+ESS弹性伸缩+1台云服务器ECS+数据库RDS”的精简版弹性架构上进行部署,并成功上线。


一、部署网站应用

先使用“若依开源代码”构建一个用户权限管理系统的网站应用。以此来掌握云服务器、数据库等云服务产品的使用,为构建一个高可用的业务架构,以保障业务系统的稳定性和高可用性打稳基础。

1.1登陆阿里云ECS,准备搭建项目运行环境

  1. 进入ECS控制台,找到ECS实例,远程连接到系统内。准备安装JDK环境、Maven环境、Node环境

1.2安装JDK环境

  1. 在服务器ECS系统内安装JDK环境,输入以下代码在linux中安装JDK
yum install -y java-1.8.0-openjdk-devel.x86_64
  1. JDK默认安装目录在/usr/lib/jvm其完整路径为/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.402.b06-1.el7_9.x86_64/
  2. 配置java环境变量,修改/etc/profile文件,在此文件的末尾加上以下代码(注意:等号两边不要有空格)
vim   /etc/profile  #进入到profile文件,在末尾加上以下配置,注意:等号两边不要有空格
  export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.402.b06-1.el7_9.x86_64/
  export PATH=$PATH:$JAVA_HOME/bin
  1. 执行命令刷新配置文件以生效
source  /etc/profile
  1. 查看JDK版本
java -version
  1. 看到JDK版本则成功:

1.3安装Maven环境

  1. 在服务器ECS系统内安装Maven环境
yum -y install maven-3.0.5-17.el7.noarch
  1. 查看Maven安装路径
ls /usr/share/mavenmaven
  1. 在默认安装目录下创建Maven仓库文件夹:
mkdir /usr/share/maven/repository
  1. 编辑 settings.xml 文件:
  1. 在settings.xml文件中修改两个地方:本地仓库文件路径和Maven镜像仓库
vim /usr/share/maven/conf/settings.xml

#进入文件后,修改<localRepository>标签对中的路径,修改本地仓库为上一步创建的文件夹/usr/share/maven/repository路径

修改前

修改后

  1. 在标签对中添加对,修改镜像仓库为阿里云国内Maven镜像仓库,提供java所需依赖项
<mirror>
          <id>alimaven</id>
          <name>aliyun maven</name>
          <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
          <mirrorOf>central</mirrorOf>
</mirror>

  1. 配置Maven环境变量,修改/etc/profile文件,在此文件的末尾加上以下代码(注意:等号两边不要有空格)
vim   /etc/profile  #进入到profile文件,在末尾加上以下配置,注意:等号两边不要有空格
  MAVEN_HOME=/usr/share/maven/
  PATH=$MAVEN_HOME/bin:$PATH
  export MAVEN_HOME PATH
  1. 执行命令刷新配置文件以生效
source  /etc/profile
  1. 看到Maven版本则成功

1.4安装Node环境

  1. 在服务器ECS系统内安装Node环境,需要ECS有公网能力
wget https://nodejs.org/dist/v14.2.0/node-v14.2.0-linux-x64.tar.gz
  1. 创建Node安装路径
mkdir /usr/local/node
  1. 解压下载的node.js 到上一步创建的安装路径中
tar -zxvf node-v14.2.0-linux-x64.tar.gz -C /usr/local/node
  1. 创建软链接,使在任何路径下都可以执行Node
ln -s   /usr/local/node/node-v14.2.0-linux-x64/bin/node   /usr/local/bin/node
ln -s   /usr/local/node/node-v14.2.0-linux-x64/bin/npm   /usr/local/bin/npm
  1. 配置Node环境变量,修改/etc/profile文件,在此文件的末尾加上以下代码(注意:等号两边不要有空格)
vim   /etc/profile  #进入到profile文件,在末尾加上以下配置,注意:等号两边不要有空格
  export NODE_HOME=/usr/local/node/node-v14.2.0-linux-x64/bin/
  export PATH=$PATH:$NODE_HOME:/usr/local/bin/
  1. 执行命令刷新配置文件以生效
source  /etc/profile
  1. 看到Node版本则成功

1.5安装Git

  1. 在服务器ECS系统内安装Git环境
yum -y install git
  1. 看到Git版本则成功

1.6通过git下载若依开源项目源码(前后端不分离版)至ECS

  1. 下载若依源码,需要ECS有公网能力
git clone https://gitee.com/y_project/RuoYi.git
  1. 若依代码成功下载至 /root/RuoYi 文件夹内
  1. 查看数据库连接池文件“application-druid.yml”,将索引的数据库地址与阿里云RDS相匹配(本操作前,需要先进行1.7步骤中的RDS配置)
  1. 说明:localhost位置代表数据库地址IP/URL,3306端口号,ry是数据库名称,username/password是数据库用户名和密码

1.7配置RDS

  1. 登录RDS控制台,进入RDS实例,准备进行RDS数据库配置
  1. 将ECS地址加入到白名单,(购买RDS时若已将VPC网段加入白名单则忽略此步骤)
  1. 创建数据库名称为“ry”,与数据库连接池文件中数据库名称“ry保持一致
  1. 获取数据库内网地址,稍后修改数据库连接池文件“application-druid.yml”中localhost为RDS内网地址
  1. 创建RDS账号用户名密码,稍后修改数据库连接池文件“application-druid.yml”中用户名密码与之一致
  1. 修改若依的数据库连接池文件
  1. 数据库信息保持与RDS一致
vim RuoYi/ruoyi-admin/src/main/resources/application-druid.yml
  1. 登录若依官网:https://ruoyi.vip/,进入“RuoYi源码下载”,如下图所示
  2. 参照若依开源项目代码中数据库文件,将若依项目的数据文件,通过sql安装至阿里云数据库RDS(浏览器打开此网页先不要关闭)
  1. 打开官网的quartz.sql文件,复制SQL语句
  1. 登陆RDS数据库,将上一步复制的SQL语句粘贴到RDS的名为ry的数据库中
  1. 找到数据库ry,并粘贴若依sql/quartz.sql文件中的sql语句,执行。
  1. 注意:本教程使用DMS导入sql代码时,不支持commit事务,复制的sql代码最后一行"commit;"需要删除,再点击执行
  1. 在RDS中新建一个sql窗口
  1. 打开Ruoyi官网的数据库文件中的ry_20240112.sql文件,复制sql语句
  1. 继续在数据库ry中,粘贴若依sql/ry_20240112.sql文件中的sql语句

1.8编译打包Ruoyi项目

  1. 在服务器ECS系统内部,编译Ruoyi项目
cd  RuoYi   #当前路径默认在/root下,Ruoyi源码默认也下载在此路径,进入到Ruoyi目录中
mvn  clean package -Dmaven.test.skip=true    #将文件夹内文件,编译打包成jar包
  1. 查看打包后的jar包地址,在ruoyi-admin/target目录下会有一个ruoyi-admin.jar的jar包
  1. 运行jar包,成功启动若依框架程序
nohup java -jar ruoyi-admin/target/ruoyi-admin.jar > output.log 2>&1 &

命令释义:

nohup:确保程序在用户退出后仍继续运行

java -jar ruoyi-admin/target/ruoyi-admin.jar:执行jar文件中的主类。

> output.log:将标准输出重定向到名为的文件中,用于保存程序运行时的输出信息。

2>&1:将标准错误输出重定向至标准输出,即也写入到output.log文件中。

&:使命令在后台运行。

  1. 查看后台是否运行了Ruoyi程序,显示Running的Ruoyi程序则成功
job

  1. 查看启动日志
  1. 日志保存在output.log中,查看日志也可以看是否启动成功,出现以下内容则成功

1.9构建Ruoyi的Systemd服务

systemd提供了一个系统和服务管理器,使用systemctl命令对服务进行开启、关闭、重启等操作。systemd管理(开/关/重启)服务时会读取对应的配置文件,也称之为unit文件。也就是说,要想使用systemd来管理服务,此服务就要配置unit文件。

为Ruoyi配置unit文件,使可以通过systemctl命令管理Ruoyi,并让Ruoyi开机自启

/etc/systemd/system/设置了开机自启的软件的unit文件

/usr/lib/systemd/system 系统所有已安装软件的unit文件

vim /etc/systemd/system/ruoyi.service
创建并进入到文件中设置以下:
[Unit]
Description=RuoYi Admin Service
After=network.target
[Service]
User=root
WorkingDirectory=/root/RuoYi/ruoyi-admin/target
ExecStart=/usr/bin/java -jar /root/RuoYi/ruoyi-admin/target/ruoyi-admin.jar
SuccessExitStatus=143
TimeoutStopSec=10
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
systemctl enable ruoyi.server --now

二、构建包含业务服务的实例镜像

为确保后续扩容出的实例中有部署业务,需要先以该实例为基础创建自定义镜像,后续创建的实例会以该镜像作为基础镜像,在实例启动时,您的业务服务也随之启动

  1. 进入ECS控制台,将地域切换到在步骤1中准备的实例的地域。
  2. 找到步骤1中准备好的ECS实例,在右侧操作列,选择┇> 云盘与镜像 > 创建自定义镜像

  1. 在弹出的创建自定义镜像对话框中,记录镜像名称,方便后续查找,单击确认按钮,等待镜像创建完成。可以在ECS控制台左侧导航栏单击实例与镜像 > 镜像查看镜像创建进度。

三、创建管理服务集群的伸缩组

弹性高可用架构的核心是通过伸缩组实现服务器的快速扩容和缩容,创建并启用伸缩组具体操作如下:

  1. 登录弹性伸缩控制台,在伸缩组管理页面,单击创建伸缩组按钮进入创建伸缩组页面。按照以下表格或截图配置完成创建,未涉及的配置项保持默认。

配置项

说明

伸缩组名称

根据界面提示输入。本案例伸缩组名称为TelescopeGroup

伸缩组类型

选中ECS

组内实例配置信息来源

选中选择已有实例

选择已有实例

选择在步骤1中准备的ECS实例。

组内最小实例数

伸缩组中实例数的最小值,当伸缩组实例数低于该值时,会自动触发扩展。本案例最小实例数为1。

手动创建添加进伸缩组里的实例占用配额。例如最小实例数为1,创建伸缩组时同时手动添加已有实例到伸缩组中,则符合组内最小实例数为1,当没触发报警任务时伸缩组默认不会创建新实例。

组内最大实例数

伸缩组中实例数的最大值,当伸缩组实例数高于该值时,会自动触发收缩。本案例最大实例数为5。

默认冷却时间(秒)

伸缩组发生伸缩活动后的默认冷却时间。在冷却时间内,伸缩组会拒绝由报警任务触发的伸缩活动请求,其他类型任务触发的伸缩活动可以绕过冷却时间立即执行,例如手动执行任务、定时任务。

本案例设置为300。

专有网络选择交换机

这两个配置项会根据您选择的ECS实例,自动填充。

重要:建议创建并选择多个可用区的交换机,避免出现单一可用区实例库存不足导致扩容失败,创建交换机,请参见创建交换机

展开高级配置 > 实例的健康检查

选中实例状态检查负载均衡健康检查,启用该功能后,系统会根据健康检查的结果,确保伸缩组中的所有实例及其业务服务正常运行。一旦发现服务异常,将及时用新实例替换故障实例。

添加已有实例

将步骤1创建好的实例添加进伸缩组中

  1. 伸缩组创建完成后在伸缩组管理页,找到刚刚创建的伸缩组,在右侧操作列下,单击查看详情进入该伸缩组的详情页。
  2. 修改伸缩配置中的实例镜像。

在通过选择已有实例创建伸缩组后,会根据此ECS的原始镜像创建一个伸缩配置,但扩容出的新实例是原始镜像,不包含后续部署好的业务服务软件包。因此需要将步骤2中自定义的镜像添加到伸缩组中作为基础镜像。

  1. 如图所示,在实例配置来源 > 伸缩配置页签下,单击唯一的伸缩配置操作列下的修改镜像

  1. 在弹出的修改镜像的弹框中,选择自定义镜像,选择步骤2中创建的镜像。单击确认按钮完成修改。

  1. 启用伸缩组。

在伸缩组管理页,点击右上角的启用按钮。

四、创建伸缩规则与报警任务

4.1创建伸缩规则

  1. 在伸缩组管理页,找到创建的伸缩组,在右侧操作列下,单击查看详情进入该伸缩组的详情页。
  2. 在页面上方,单击伸缩规则与报警任务页签
  3. 伸缩规则页签下,单击创建伸缩规则
  1. 别创建扩容和缩容的规则

4.2创建报警任务

  1. 在伸缩组管理页,找到创建的伸缩组,在右侧操作列下,单击查看详情进入该伸缩组的详情页。
  2. 在页面上方,单击伸缩规则与报警任务页签
  3. 报警任务页签下,单击创建报警任务
  1. 别创建扩容和缩容的报警任务

五、创建负载均衡作为统一入口

为伸缩组创建并关联负载均衡,使用户请求通过负载均衡器自动分摊到集群的各台ECS实例,从而平衡负载,最大化资源利用率。本案例使用应用型负载均衡(ALB),具体操作如下:

5.1 创建负载均衡

  1. 登录应用型负载均衡ALB控制台
  2. 实例页面,单击创建应用型负载均衡
  3. 应用型负载均衡(按量付费)购买页面,按照以下表格或截图配置完成创建。

配置项

说明

地域

与步骤1中实例的地域一致。

实例网络类型

选择公网

VPC

选择步骤1中准备实例的VPC。

可用区

至少选择两个,如果选择的可用区没有交换机,需要根据界面提示创建对应可用区的交换机。创建交换机的操作说明,请参见创建交换机

5.2 创建ALB后端服务器组

此后端服务器组将会关联到伸缩组,伸缩组创建的实例会自动添加到该后端服务器组,通过负载均衡对外提供服务。

  1. 购买ALB后,应用型负载均衡ALB控制台,选择对应地域。
  2. 单击左侧导航栏的服务器组进入服务器组页面,单击创建服务器组按钮,根据界面提示完成后端服务器组的创建。未提及配置项保持默认。

配置项

说明

服务器组类型

选择服务器类型

服务器组名称

根据界面提示输入。本案例伸缩组名称为Telescope-group

VPC

选择步骤1中准备的实例的VPC。

5.3 为负载均衡器配置监听

创建一个HTTP监听来转发来自HTTP协议的请求,负载均衡实例在监听到HTTP请求时,可以将请求转发到后端服务器组的ECS实例中。

  1. 应用型负载均衡ALB控制台,选择对应的地域。
  2. 单击左侧导航栏的实例,找到步骤4.1创建的负载均衡,在右侧操作列下单击创建监听,根据界面提示完成后端服务器组的创建。未提及配置项保持默认。

配置项

说明

选择监听协议

选择HTTP

监听端口

负载均衡对外提供服务的端口,本案例服务的使用80,代表监听访问该负载均衡器80端口的请求。

选择服务器组

选择步骤4.2创建的服务器组。

5.4 为伸缩组关联负载均衡

  1. 在伸缩组管理页,找到步骤3中创建的伸缩组,在右侧操作列下,单击查看详情进入该伸缩组的详情页。
  2. 基本信息页签下,找到关联负载均衡ALB、NLB服务器组,单击添加关联负载均衡ALB、NLB服务器组,在弹出的对话框中单击添加服务器组,根据界面提示,关联步骤4.2创建的后端服务器组。完成配置后,单击确认按钮完成关联负载均衡的操作。

重要:该配置项中的端口设置为您的业务服务对外提供服务的端口,本示例的业务服务使用80端口。

创建伸缩组时手动创建到伸缩组的ECS实例,默认不会同步关联到ALB服务器中。若想将已有ECS实例作为ALB服务器的中后端服务器,需要在关联ALB服务器时,勾选"挂载或卸载服务器组时,将伸缩组现有的实例加入或移出服务器组机器分组(只针对本次挂载或卸载的服务器组)",需要在ALB服务器中手动添加。详情请参加添加后端服务器

六、为伸缩组关联RDS数据库

  1. 在伸缩组管理页,找到步骤3中创建的伸缩组,在右侧操作列下,单击查看详情进入该伸缩组的详情页。
  2. 基本信息页签下,找到关联数据库,在弹出的对话框中单击添加数据库,根据界面提示,关联RDS。完成配置后,单击确认按钮完成关联数据库的操作。

七、扩展实例(验证)弹性伸缩

在准备好伸缩组配置了伸缩规则和报警任务且已关联负载均衡之后,此时可以开始扩展实例,验证集群是否可以正常工作。

步骤3创建伸缩组时,组内最小实例数选择的1,且将已有实例(步骤1创建的有业务环境的实例)加入到伸缩组中

  1. 在伸缩组管理页,找到创建的伸缩组,在右侧操作列下,单击查看详情进入该伸缩组的详情页。
  2. 在页面上方,单击实例列表页签,找到手动创建的ECS实例,点击ECS实例ID,进到ECS控制台

  1. 远程此ECS,进行压测,使ECS的CPU消耗超过70%,验证伸缩组是否正常扩容ECS实例。

yum -y install stress                     #安装stress压测工具

nproc                                          #查看CPU个数

stress --cpu 2 --timeout 600s        #压测命令--cpu 2表示启动2个工作线程,每条线程对应一个CPU;--timeout 600s表示运行时间限制为600秒(十分钟)

  1. 等待几分钟后,查看报警任务是否触发
  1. 登录伸缩组管理控制台,找到左侧导航栏的报警任务,看到以触发add-rule扩容规则。


  1. 验证实例列表中是否扩容了新的ECS实例
  1. 在伸缩组管理页,找到创建的伸缩组,在右侧操作列下,单击查看详情进入该伸缩组的详情页。
  2. 在页面上方,单击实例列表页签,在自动创建列表看到扩容的ECS实例。
  1. 验证是否自动关了到ALB服务器中
  1. 登录ALB控制台,在左侧导航栏展开应用型负载均衡ALB,找到服务器组,通过服务器ID点击进去,在后端服务器页签看到扩容的ECS实例。






相关实践学习
快速体验PolarDB开源数据库
本实验环境已内置PostgreSQL数据库以及PolarDB开源数据库:PolarDB PostgreSQL版和PolarDB分布式版,支持一键拉起使用,方便各位开发者学习使用。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
目录
打赏
0
35
35
1
33
分享
相关文章
阿里二面:10亿级分库分表,如何丝滑扩容、如何双写灰度?阿里P8方案+ 架构图,看完直接上offer!
阿里二面:10亿级分库分表,如何丝滑扩容、如何双写灰度?阿里P8方案+ 架构图,看完直接上offer!
阿里二面:10亿级分库分表,如何丝滑扩容、如何双写灰度?阿里P8方案+ 架构图,看完直接上offer!
2025年阿里云弹性裸金属服务器架构解析与资源配置方案
🚀 核心特性与技术创新:提供100%物理机性能输出,支持NVIDIA A100/V100 GPU直通,无虚拟化层损耗。网络与存储优化,400万PPS吞吐量,ESSD云盘IOPS达100万,RDMA延迟<5μs。全球部署覆盖华北、华东、华南及海外节点,支持跨地域负载均衡。典型应用场景包括AI训练、科学计算等,支持分布式训练和并行计算框架。弹性裸金属服务器+OSS存储+高速网络综合部署,满足高性能计算需求。
使用Qwen2.5+SpringBoot+SpringAI+SpringWebFlux的基于意图识别的多智能体架构方案
本项目旨在解决智能体的“超级入口”问题,通过开发基于意图识别的多智能体框架,实现用户通过单一交互入口使用所有智能体。项目依托阿里开源的Qwen2.5大模型,利用其强大的FunctionCall能力,精准识别用户意图并调用相应智能体。 核心功能包括: - 意图识别:基于Qwen2.5的大模型方法调用能力,准确识别用户意图。 - 业务调用中心:解耦框架与业务逻辑,集中处理业务方法调用,提升系统灵活性。 - 会话管理:支持连续对话,保存用户会话历史,确保上下文连贯性。 - 流式返回:支持打字机效果的流式返回,增强用户体验。 感谢Qwen2.5系列大模型的支持,使项目得以顺利实施。
770 8
使用Qwen2.5+SpringBoot+SpringAI+SpringWebFlux的基于意图识别的多智能体架构方案
端到端的ECS可观测性方案,助力云上业务安全稳定
本文介绍了云原生时代保障业务系统可靠性的方法和挑战,重点探讨了阿里云ECS在提升业务稳定性、性能监控及自动化恢复方面的能力。文章分为以下几个部分:首先,阐述了业务可靠性的三个阶段(事前预防、事中处理、事后跟进);其次,分析了云上业务系统面临的困难与挑战,并提出了通过更实时的监测和自动化工具有效规避风险;接着,详细描述了ECS实例稳定性和性能问题的解决方案;然后,介绍了即将发布的ECS Lens产品,它将全面提升云上业务的洞察能力和异常感知能力;最后,通过具体案例展示了如何利用OS自动重启和公网带宽自适应调节等功能确保业务连续性。总结部分强调了ECS致力于增强性能和稳定性的目标。
云端问道9期方案教学-省心省钱的云上Serverless高可用架构
本文介绍了省心省钱的云上Serverless高可用架构,主要分为两个部分:1. Serverless的发展历程、特点及高可用架构;2. SAE(Serverless Application Engine)产品介绍。Serverless作为一种云计算模式,让用户无需管理底层基础设施,自动弹性扩展资源,按需付费,极大提高了资源利用率和业务灵活性。SAE作为Serverless计算服务,提供了简便的应用部署、运维自动化、丰富的弹性策略和可观测性等功能,帮助企业降低运营成本、提升研发效率。通过极氪汽车、南瓜电影等客户案例展示了SAE在实际应用中的优势。
负载均衡指南:Nginx与HAProxy的配置与优化
负载均衡指南:Nginx与HAProxy的配置与优化
237 3
解读 Nginx:构建高效反向代理和负载均衡的秘密
解读 Nginx:构建高效反向代理和负载均衡的秘密
172 2
nginx自定义负载均衡及根据cpu运行自定义负载均衡
nginx自定义负载均衡及根据cpu运行自定义负载均衡
170 1
SLB与NGINX的异同是什么
SLB与NGINX的异同是什么
834 2
解决nginx配置负载均衡时invalid host in upstream报错
在Windows环境下,配置Nginx 1.11.5进行负载均衡时遇到问题,服务无法启动。错误日志显示“invalid host in upstream”。检查发现上游服务器列表中,192.168.29.128的主机地址无效。负载均衡配置中,两个服务器地址前误加了&quot;http://&quot;。修正方法是删除上游服务器列表和proxy_pass中的&quot;http://&quot;。问题解决后,Nginx服务应能正常启动。
699 4
解决nginx配置负载均衡时invalid host in upstream报错

相关产品

  • 负载均衡