使用SLB+2ECS+NAS,部署电商web网站的高可用架构

本文涉及的产品
云服务器 ECS,u1 2核4GB 3个月
云服务器 ECS,每月免费额度200元 3个月
云服务器 ECS,u1 4核16GB 1个月
简介: 如您需要开发电商网站并且对外提供服务,当您的业务上升时,您需要为应用考虑高吞吐,高并发,高可用等能力,来应对用户的并发访问,保证应用稳定。本场景主要介绍如何使用SLB,ECS和NAS搭建高可用电商网站,助您业务上升。

使用SLB+2ECS+NAS,部署电商web网站的高可用架构

1. 实验说明

因不同用户拥有不同账号和资源,在实验开始前,请您务必看完如下说明,以保证实验流畅性。

1.1 您需准备的资源

本实验需要的资源仅为示例,其部署的高可用web服务使用了2个ECS实例(CentOS 7.9 64位)、1个负载均衡SLB实例(本文使用传统型负载均衡CLB),1个NAS实例。

重要说明:为保证完成此实验,您个人需拥有2台ECS,若您已有1台及以上ECS,若参照本示例,您需要将系统更改为CentOS 7 版本以上,并设置命令行登录密码。您也可不更换系统,但您需按照您实际情况编写相应代码,实验示例仅提供借鉴。更改系统和登录密码可点击更换操作系统(系统盘)进行参考,更换公共镜像为CentOS 7.9 64位,在安全设置中设置自定义密码并确认订单。若您此时没有ECS或只有1台ECS,请按照下方的说明领取免费资源或购买ECS。

1.2 步骤链路和权益说明

您可选择领取免费试用额度或个人账号资源开启实验。

(1)领取免费试用额度

在实验室右侧,单击领取免费试用额度,如果您有某个产品的免费试用,可单击领取(请注意查看免费资源的领用规则,本实验2台ECS仅新用户,且企业认证用户领用,其它资源新用户,个人认证和企业认证都可领用),本教程选择深圳地域,您需保证领用的产品都在同一地域,具体领用时的配置可参照下方1.3中的说明。领取完成后,您可单击我已开通,进入实验。没有领用的产品将使用您个人资源,请注意费用。

(2)个人账号资源

在实验室右侧,单击个人账号资源,单击确认开启实验,即可进入实验。

注意:使用个人账号资源创建的付费资源或免费领取的资源都归属于您个人,实验中请您按实际情况选择。

如果您是某产品新用户且有领用资格,则可以参考每个产品创建步骤中“免费试用用户”链路,领取权益并创建对应配置信息的实例;

如果您非产品新用户或无法领用,则参考每个产品创建步骤中“非免费试用用户”链路,创建对应配置信息的实例。

注意,高可用的服务架构中CLB、NAS必须保持与ECS在同一个地域。本实验中ECS/CLB/NAS均选择华南1(深圳)地域

1.3 领取免费试用权益汇总

以下为本实验免费试用资源的链接汇总,方便您对免费资源的查找。

如您需查看这些资源的地址,您可点击以下资源领取入口,若还未登录,单击页面右上方的登录/注册按钮,并根据页面提示完成账号登录(已有阿里云账号)、账号注册(尚无阿里云账号)或实名认证(根据试用产品要求完成个人实名认证或企业实名认证)。

资源领取入口

本教程配置

云服务器ECS

单击如上文字可进入链接:ECS企业试用链接

2核8GB 3个月

  • 地域:华南1(深圳)
  • 操作系统:CentOS 7.9 64位
  • 试用数量:2(ECS01、ECS02)
  • 其他参数:保持默认值或按需选择

传统型负载均衡CLB

单击如上文字可进入链接:CLB试用链接(个人/企业均可享)

每月750个小时 15LCU(免费:每月750小时实例使用时间,每月15个LCU,时长3个月)

  • 地域与可用区:选择与ECS实例相同的地域,本教程选择华南1(深圳)
  • 实例计费方式:按使用量计费
  • 实例类型:公网
  • IP 版本:IPv4
  • 试用数量:1

云数据传输

单击如上文字可进入链接:云数据传输CDT试用链接(个人/企业均可享)

100GB ,3个月(用于抵扣CLB公网流量费)

  • 规格信息:每月 100GB 普通BGP公网流量免费额度,超出按量计费
  • 试用时长:3个月
  • 地域:所有阿里云区域通用(金融云和政务云除外)
  • 试用数量:1

NAS存储

单击如上文字可进入链接:NAS试用链接(个人/企业均可享)

通用型NAS资源包,50GiB,3个月

  • 资源包类型:通用型NAS资源包
  • 地域:中国内地
  • 通用型基准容量:50GiB
  • 试用时长:3个月


3. 创建并挂载NAS

如果您是NAS产品的免费试用用户,领取步骤3.1的资源包,继续按照步骤3.2创建NAS并进行挂载。

如果您不是NAS产品的免费试用用户,直接按照步骤3.2来创建NAS并进行挂载。

3.1 NAS产品新用户,可先领取免费试用权益

如您在开头已领取免费试用,直接开始3.2步骤。

前往NAS免费试用,可看到NAS免费领取界面,此时单击立即试用

弹出如下所示框,配置都保持默认。

如下所示,勾选服务协议,并单击立即试用

如下所示,表明领用完成。此时,您需继续按照步骤3.2来创建NAS并进行挂载。

3.2 创建NAS并进行挂载

复制如下链接,打开本机浏览器粘贴进入NAS控制台。

https://nasnext.console.aliyun.com/overview

单击文件系统列表地域选择华南1(深圳),单击创建文件系统

弹出如下所示框,单击创建通用型nas

本例子中选择深圳,存储规格选择容量型(不同可用区有不同的规格,本例子选了可用区A,您可按需选择有容量型的可用区),协议类型选择NFS。

其它配置可保持默认。

此处选择与ECS相同的专有网络VPC和虚拟交换机,本示例中创建ECS的时候已经默认创建专有网络VPC和虚拟交换机,因此下拉选择此VPC和交换机。勾选服务协议,并单击购买

创建成功后,如下所示:

文件系统列表页面中,如下所示,找到刚才创建的文件系统,并在右侧操作列下单击管理

在如下所示界面中,选择挂载使用。

如下图所示,单击添加到ECS,然后单击挂载

在如下所示界面中,选取刚才创建的ecs的其中一台,ecs实例ID/名称您可在ecs控制台概览中查询。

单击选择后跳出如下配置页面,请按如下所示设置,并单击挂载。(若您前期已有ECS,可能由于系统不同,导致ECS下的目录有所不同,本示例选择的是ECS的/mnt,您若参考本示例需要确保两台ECS都挂载到此路径,若您需要挂载到其它路径,注意第四章第7步骤的配置文件也需修改,建议您按照本示例挂载确保实验流畅)

若跳出如下所示提示,单击创建并继续。

您需再单击挂载

如下所示,等待挂载状态变成已挂载,说明nas已挂载成功。

重复步骤8-10,将另外一台ECS按照同样步骤挂载。


3. 创建并挂载NAS

如果您是NAS产品的免费试用用户,领取步骤3.1的资源包,继续按照步骤3.2创建NAS并进行挂载。

如果您不是NAS产品的免费试用用户,直接按照步骤3.2来创建NAS并进行挂载。

3.1 NAS产品新用户,可先领取免费试用权益

如您在开头已领取免费试用,直接开始3.2步骤。

前往NAS免费试用,可看到NAS免费领取界面,此时单击立即试用

弹出如下所示框,配置都保持默认。

如下所示,勾选服务协议,并单击立即试用

如下所示,表明领用完成。此时,您需继续按照步骤3.2来创建NAS并进行挂载。

3.2 创建NAS并进行挂载

复制如下链接,打开本机浏览器粘贴进入NAS控制台。

https://nasnext.console.aliyun.com/overview

单击文件系统列表地域选择华南1(深圳),单击创建文件系统

弹出如下所示框,单击创建通用型nas

本例子中选择深圳,存储规格选择容量型(不同可用区有不同的规格,本例子选了可用区A,您可按需选择有容量型的可用区),协议类型选择NFS。

其它配置可保持默认。

此处选择与ECS相同的专有网络VPC和虚拟交换机,本示例中创建ECS的时候已经默认创建专有网络VPC和虚拟交换机,因此下拉选择此VPC和交换机。勾选服务协议,并单击购买

创建成功后,如下所示:

文件系统列表页面中,如下所示,找到刚才创建的文件系统,并在右侧操作列下单击管理

在如下所示界面中,选择挂载使用。

如下图所示,单击添加到ECS,然后单击挂载

在如下所示界面中,选取刚才创建的ecs的其中一台,ecs实例ID/名称您可在ecs控制台概览中查询。

单击选择后跳出如下配置页面,请按如下所示设置,并单击挂载。(若您前期已有ECS,可能由于系统不同,导致ECS下的目录有所不同,本示例选择的是ECS的/mnt,您若参考本示例需要确保两台ECS都挂载到此路径,若您需要挂载到其它路径,注意第四章第7步骤的配置文件也需修改,建议您按照本示例挂载确保实验流畅)

若跳出如下所示提示,单击创建并继续。

您需再单击挂载

如下所示,等待挂载状态变成已挂载,说明nas已挂载成功。

重复步骤8-10,将另外一台ECS按照同样步骤挂载。


4. 在2台ECS中分别部署电商网页

下载部署网页需要的网页文件及图片。

在浏览器中分别输入如下两个地址,进行下载,将文件保存在桌面上。

https://labfileapp.oss-cn-hangzhou.aliyuncs.com/oss/index.html
https://labfileapp.oss-cn-hangzhou.aliyuncs.com/oss/lipstick.png

返回ECS控制台,在实例界面中,找到其中一个实例,单击远程连接。

如下所示,在通过Workbench远程连接中,单击立即登录

在如下所示中,输入之前ecs设置的密码,单击确定

进入命令行,复制如下命令并粘贴,然后单击确定,安装Nginx。

wget https://nginx.org/download/nginx-1.20.2.tar.gz
yum -y install zlib zlib-devel gcc-c++ pcre-devel openssl openssl-devel
tar -zxvf nginx-1.20.2.tar.gz
cd nginx-1.20.2
./configure --prefix=/usr/local/nginx/ --with-http_ssl_module --with-http_stub_status_module
make 
make install

如图所示,出现make install,此时点击回车按钮。

如图所示,表明成功。

执行如下命令,单击回车。

cd /usr/local/nginx/sbin

执行如下命令,单击回车

./nginx

复制如图所示红框中的公网地址,打开浏览器并粘贴地址。

出现如图所示,表明nginx安装成功,此时可以访问网站。

执行如下命令,单击回车。

cd /usr/local/nginx/conf

执行如下命令,单击回车。

vim nginx.conf

进入如下界面后,输入键盘 i 键进入编辑模式。

出现如图,就可以进行编辑。

找到server,并将root后面的内容改成 /mnt 。

说明:此时网站的默认访问目录将会变成nas的根目录,后续的html网页将存放在nas的根目录/mnt中,因此即使此台服务器宕机,网页内容还可以被另外的服务器读取,保证网页持续访问。

ecs键退出,并输入:wq ,接着按回车键以此保存内容

执行如下命令,并回车,此时会重新读取配置文件。

/usr/local/nginx/sbin/nginx -s reload

在如下界面,选择文件>打开新文件管理

在如下所示界面中,单击mnt

进入mnt文件夹后,单击上传文件

在弹出框中,请先找到index,选中index然后单击打开就会进行上传。

再单击上传文件,找到lipstick,选中lipstick然后单击打开进行上传。

上传完成如下所示。

返回ECS控制台实例页面,复制本实例的公网IP地址,在浏览器新的页签中粘贴进入。

打开后,如下所示,网页部署成功。

说明:在index.html文件中,已编写了电商网站的基础内容,并将其中的一张图片指向了lipstick,使您可正常访问网站和图片。此处的index.html文件仅供您实验参考,具体的网页您需自己开发,此处的图片由机器学习PAI-EAS使用AIGC生成。

代码片段参考:

在ECS控制台中远程连接另外一台ECS,重复步骤3-7,将这台服务器部署网页。部署完成后,在浏览器中访问此域名,此时也会返回电商网页,说明部署成功。


5. 创建负载均衡SLB资源,实现电商网页访问

本步骤选择传统型负载均衡CLB,完成高可用服务的负载搭建,保障单台ECS停止运行时,网站仍然保持在线可访问。

如果您是CLB产品新用户,可参考本步骤5.1:完成CLB实例的免费领取和创建。完成后继续按照步骤5.3配置

如果您不是CLB产品新用户,则参考步骤5.2:完成CLB实例的创建和配置。完成后继续按照步骤5.3配置

5.1 CLB产品新用户,可先领取免费权益并创建CLB资源

如果您在开头已领取免费试用,请直接开始步骤5.3。

前往传统型负载均衡CLB,进入CLB免费试用领取界面,如下所示。

选择“传统型负载均衡CLB 3个月”活动卡片,单击立即试用,跳转至领用页面。

CLB产品选型时注意:地域选择必须保持与ECS相同(本实验选择华南1(深圳)),可用区可选择与某台ECS同地域或自主选择。

选型完成后,单击立即试用。

请继续按照步骤5.3配置。

5.2 非CLB产品新用户,直接创建CLB资源

复制如下链接,打开本机浏览器粘贴进入CLB控制台。

https://slb.console.aliyun.com/

进入传统型负载均衡CLB实例管理页面创建CLB实例。

选择传统型负载均衡CLB(原SLB)>实例管理,选择地域(注意选择目标ECS所在地域,本示例选择深圳),再单击创建传统型负载均衡

选配并开通传统型负载均衡CLB实例。

选择付费模式(按量付费)、地域和可用区(华南1(深圳),ECS01所在可用区,如本实验为可用区D)。

选择实例计费方式(按使用量计费)、实例类型(公网,IPv4)等,单击立即购买

如下所示,勾选服务协议,并单击立即开通

请继续按照步骤5.3配置。

5.3 配置CLB资源

检查实例已创建完成。

返回SLB控制台的CLB实例管理页面,在刚才创建实例所选地域下,可看到实例已创建。

配置CLB实例监听。

在实例右侧操作栏单击监听配置向导。

配置协议&监听,如下所示,协议选择TCP,监听端口输入80,监听名称可自定义。

配置后端服务器,选择默认服务器组,单击继续添加

在如下所示界面中,勾选之前创建的两台服务器,并单击下一步。

如下所示,默认配置,单击添加。

在如下界面中,设置两台服务器的端口为80,单击下一步

配置健康检查:开启健康检查选择开启,单击下一步

配置审核页面,单击提交

负载均衡业务配置向导对话框中,单击知道了

返回CLB实例列表,在端口/健康检查/后端服务器中,可以看到已经有了默认服务器组,说明添加成功。

此时单击目标实例名称进入详情页

找到监听页签,查看健康检查状态,如下所示表明设置成功。

在实例详情页签中,如下所示,找到服务地址,并复制地址。

服务验证。

在浏览器中新起一个页签,粘贴地址,单击回车访问,此时可看见电商网站,说明SLB已经开始负载均衡。

到此处为止,高可用网站创建成功。

返回ECS控制台,在实例下,找到其中的一台ECS,在更多>实例状态中单击停止

停止实例对话框中,在停止方式中选择停止,单击确定

当确认实例停止后,此时,请刷新电商网页,发现网站还能访问,说明SLB负载均衡切换至正常运行的ECS进行访问。如您两台ECS都选择停止,访问网页会显示拒绝。至此为止,实验结束,您可继续使用或清理资源,可参照步骤六。

5.4 领取公网流量免费试用权益(可选步骤)

若您是CDT新用户,您可登录云数据传输CDT免费试用,领用云数据传输CDT公网流量免费试用权益,用于抵扣本实验产生的公网流量。

CDT可以抵扣按量计费的CLB/弹性公网IP/共享带宽等产品的多地域公网流量。

免费试用页面,单击立即试用

在云数据传输CDT面板,勾选服务协议,其它保持默认,单击立即试用



6. 清理及后续

清理

完成教程后,请及时清理测试数据和试用资源。

ECS提供的试用实例有按量付费实例和包年包月实例。请在阿里云免费试用确认您试用的实例类型,并参考以下规则清理:

按量付费实例释放

如果无需继续使用实例,可以登录ECS控制台,找到目标实例,在操作列单击 ,搜索并单击释放设置,根据界面提示释放实例。

如果需要继续使用实例,请至少在试用到期1小时前为阿里云账号充值,确保账户金额不小于100.00元人民币。到期未续费的实例会因欠费而被自动停机,停机15天内实例将保留,15天后实例和数据都将被自动释放。

包年包月实例释放

包年包月实例到期会自动释放,释放实例的同时释放数据。

如果需要继续使用实例,请在试用到期前及时续费。到期未续费的实例会因欠费而被自动停机,停机15天内实例将保留,15天后实例和数据都将被自动释放。

NAS提供3个月的免费资源包。本教程中选择的通用型NAS资源包仅支持抵扣通用容量型和通用性能型文件系统及低频介质存储容量费用,对于其他存储类型的存储费用、以及开启生命周期管理功能后,访问存储在低频介质中的数据所产生的数据读写费用均无法抵扣。完成教程后,请参考以下场景处理NAS资源:

如果无需继续使用NAS文件系统,可以登录文件存储控制台,在文件系统列表页面,找到目标文件系统,在操作列,选择 >删除,移除挂载点及生效策略,然后单击删除

如果需要继续使用NAS文件系统,请务必至少在资源包试用到期1小时前为您的阿里云账号充值或购买新的资源包。欠费后如果在延期免停权益额度内,您的服务将不会受到停服影响。欠费后如果超出了延期免停权益额度,NAS服务将自动停止。如果您在NAS停服后15天内未补足欠款,将视为您主动放弃NAS存储服务,阿里云将终止本产品服务条款并停止为您继续提供服务,您保存在阿里云的全部数据将会被清理删除,清理后数据不可恢复。

如您无需再使用CLB,您可登录SLB控制台,在传统型负载均衡CLB中,找到目标实例,在右侧操作列下,选择 >释放设置,在释放设置中选择立即释放,单击下一步,单击确定。您需要获取验证码,输入后,单击确定,即可释放资源。

后续

在试用有效期期间,您还可以根据希望测试的其它业务场景继续使用NAS文件系统。

实验链接:https://developer.aliyun.com/adc/scenario/ca7170a87e1d4be4b431603ee1ef91ab

相关实践学习
ECS云服务器新手上路
本实验会自动创建一台ECS实例。首先,远程登陆ECS实例,并部署应用。然后,登陆管理控制台,并对这台ECS实例进行管理操作。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
15天前
|
前端开发 搜索推荐 JavaScript
Web前端网站(二)- 主页
页面星空是可动的哦~~~毒药水特效的颜色搭配,文字渐变的动态效果,图片360度旋转展示特效等等等;每一次的按钮点击都是满满的惊艳 ~ ~ ~
26 4
Web前端网站(二)- 主页
|
15天前
|
存储 前端开发 搜索推荐
Web前端网站(一) - 登录页面及账号密码验证
页面背景动态是烟花和文字特效与缓缓下落的雪花相结合,在登录表单的旁边还有五个白色光圈以不规则的方式环绕,当鼠标靠近时,会发出彩色的光芒~~~
29 1
Web前端网站(一) - 登录页面及账号密码验证
|
4天前
|
弹性计算 运维 Kubernetes
阿里云ECS与混合云策略的结合,不仅为企业搭建了一个既灵活又稳定的IT基础架构,还为业务的快速发展与创新提供了坚实的技术支撑。
【7月更文挑战第3天】阿里云ECS在混合云中扮演关键角色,提供弹性计算资源和多样计费模式,确保业务连续性与灵活性。通过VPC互通、应用迁移、数据同步服务,如VPC对等连接、DTS,实现云上云下资源的高效整合。结合安全解决方案,保证在混合环境下的合规与安全。阿里云ECS助力企业数字化转型,应对市场变化。
30 1
|
6天前
|
运维 Cloud Native 云计算
云原生架构的演进:从微服务到无服务器计算
【6月更文挑战第30天】 在数字化转型和技术创新的浪潮中,云原生技术以其灵活性、可扩展性和成本效益成为企业IT战略的核心。本文将探索云原生架构的关键概念,从早期的微服务架构到现代的无服务器计算模型,揭示这一演变如何推动企业更高效地开发、部署和管理应用程序。我们将深入讨论这些技术背后的原理,以及它们如何帮助企业实现敏捷性、弹性和自动化运维。
|
13天前
|
缓存 前端开发 安全
探索现代Web开发中的前端架构模式
【6月更文挑战第23天】随着互联网技术的飞速发展,前端架构在Web开发中扮演着越来越重要的角色。本文将深入探讨现代Web开发中使用的几种主流前端架构模式,包括单页面应用(SPA)、微前端架构和JAMStack等,并分析它们的优势与应用场景。通过实例演示,我们将看到如何根据项目需求选择合适的前端架构,以及如何利用这些架构模式提升开发效率和应用性能。
|
14天前
|
前端开发 JavaScript API
现代Web开发中的前后端分离架构
本篇文章探讨了前后端分离架构在现代Web开发中的应用与优势。
|
15天前
|
存储 Apache 文件存储
在Apache环境下为Web网站增设访问控制:实战指南
在Apache服务器上保护网站资源涉及启用访问控制模块(`mod_authz_core`和`mod_auth_basic`),在`.htaccess`或`httpd.conf`中设定权限,如限制对特定目录的访问。创建`.htpasswd`文件存储用户名和密码,并使用`htpasswd`工具管理用户。完成配置后重启Apache服务,访问受限目录时需提供有效的用户名和密码。对于高安全性需求,可考虑更复杂的认证方法。【6月更文挑战第20天】
70 4
|
13天前
|
安全 前端开发 Java
挑战5分钟内基于Springboot+SpringMVC+Mybatis-plus快速构建web后端三层架构
挑战5分钟内基于Springboot+SpringMVC+Mybatis-plus快速构建web后端三层架构
20 1
|
15天前
|
安全 Ubuntu 应用服务中间件
NGINX环境下实现Web网站访问控制的实战指南
在NGINX中设置基于IP的访问控制可提升网站安全性。步骤包括安装NGINX、备份配置文件、编辑`/etc/nginx/sites-available/default`,添加`allow`和`deny`指令限制特定IP访问,如`allow 192.168.1.100; deny all;`,然后测试配置并重启服务。成功后,仅允许的IP能访问网站,否则会收到403错误。这为Web安全提供基础保障,还可扩展实现更多高级控制策略。【6月更文挑战第20天】
79 3
|
8天前
|
Cloud Native 安全 开发者
云原生架构的演进与实践:从微服务到无服务器计算
本文深入探讨了云原生技术的最新进展,特别关注微服务和无服务器计算模型。通过分析相关研究数据和行业案例,文章揭示了云原生架构如何推动现代应用开发,提升运维效率,并实现资源的最优化配置。文中详细讨论了云原生生态系统中的关键组成部分,包括容器化、自动化管理工具和服务网格,以及它们如何共同促进敏捷性和可扩展性。此外,文章还分析了云原生安全策略的重要性,以及如何在保障安全的同时,保持系统的灵活性和高效性。

相关产品

  • 云服务器 ECS