Discuz! Board

 找回密码
 立即注册
查看: 9|回复: 0

阿里云网站性能优化解决方案:高可用及共享存储Web服务

[复制链接]

主题

帖子

5

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5
发表于 2024-10-5 22:54:23 | 显示全部楼层 |阅读模式
随着业务规模的增长,数据请求和并发访问量增大、静态文件高频变更,企业需要搭建一个高可用和共享存储的网站架构,以确保网站服务能够7*24小时运行的同时,可保障数据一致性和共享性,并降低数据重复存储的成本。
方案预估:体验本方案预计费用不超过5元(假设您选择本文示例规格资源,且资源运行时间不超过60分钟。实际情况中可能会因您操作过程中实际使用的流量差异,会导致费用有所变化,请以控制台显示的实际报价以及最终账单为准)
<h2>一、方案介绍</h2>
架构采用同地域不同可用区的云服务器ECS提供高性能的后端服务,负载均衡CLB实现高可用保证业务的连续性,文件存储NAS实现多个Web服务器之间的数据共享和同步,确保数据的一致性。

解决问题1:服务器单点故障
单机架构下,人员误操作、磁盘故障等,导致服务中断,业务不可用,造成巨大经济损失。

解决问题2:高并发访问量突发
业务增长或高峰突发时,单机系统缓慢或中断,用户访问体验不佳,导致用户流失,影响企业口碑。

解决问题3:数据安全风险
单机架构下,数据与应用架构紧耦合,当遭遇勒索病毒时易带来数据安全风险。
<h2>二、方案优势</h2>

1.高可用性
通过负载均衡CLB,将流量按需分发到不同的后端服务器,可消除系统中的单点故障,当某个服务器发生故障时,CLB会自动将请求分配到其他正常的服务器上,从而保证服务的连续性和稳定性。

2.安全防护
SLB自带免费基础安全防护能力,如DDoS、SYN Flood、UDP Flood等攻击防护。NAS支持回收站,有效防止数据误删,与云备份服务深度整合,实现进一步的数据防护。

3.资源共享
一个NAS文件系统可以同时挂载到多个计算节点上,共享文件持久化在NAS上,不同ECS上可共享读/写NAS中的文件。用户和终端也可以通过ECS访问到NAS共享路径中的文件。
<h2>三、应用场景</h2>

1.电商平台
确保用户在购物、下订单、支付等操作时无论何时都能访问,并提供持续可用的服务。同时,服务还负责对订单、库存等重要数据进行共享存储和同步,确保所有相关方都能实时访问和更新这些数据。

2.大型门户网站
需要保证网站内容和功能服务始终可用,同时需要对网站数据进行共享存储和同步,确保用户在不同设备和地点访问网站时能够获得一致的内容和用户体验。

3.互联网金融平台
需要保证用户在进行充值、提现、投资、理财等操作时服务始终可用,同时需要对用户账户和交易数据进行共享存储和同步,确保数据的一致性和安全性。

4.社交媒体平台
需要保证用户在进行社交、分享、评论、点赞等操作时服务始终可用,同时需要对用户数据和内容进行共享存储和同步,确保用户的社交网络和内容互通。
<h2>四、方案部署</h2>
随着业务规模的增长,数据请求和并发访问量增大、静态文件高频变更,企业需要搭建一个高可用和共享存储的网站架构,以确保网站服务能够7*24小时运行的同时,可保障数据一致性和共享性,并降低数据重复存储的成本。
<h3>1、方案架构</h3>
方案提供的默认设置完成部署后在阿里云上搭建的高可用及共享存储Web服务运行环境如下图所示。实际部署时您可以根据资源规划修改部分设置,但最终形成的运行环境与下图相似。







本方案的技术架构包括以下基础设施和云服务:

  • 1个专有网络VPC:为负载均衡CLB、云服务器ECS、文件存储NAS等云资源形成云上私有网络。
  • 2台交换机:将2台云服务器ECS连接在同一网络上,实现它们之间的通信,并提供基本的网络分段和隔离功能。
  • 2台云服务器ECS:同地域不同可用区的2台ECS,组成一个高性能和高可用的后端服务。
  • 1个公网负载均衡CLB:基于对流量按需分发的能力,可以将流量分发到不同的后端服务器,可消除系统中的单点故障,当某个服务器发生故障时,CLB会自动将请求分配到其他正常的服务器上,从而保证服务的连续性和稳定性。
  • 2个文件存储NAS:实现多个Web服务器之间的数据共享和同步,确保数据的一致性。同时通过自动化脚本、inotify-tools和sync工具,实现主备NAS自动增量备份和主备自动切换。

<h3>2、部署准备</h3>
开始部署前,请按以下指引完成账号申请、账号充值、RAM用户创建和授权。
<h5>准备账号</h5>

  • 如果您还没有阿里云账号,请访问阿里云账号注册页面,根据页面提示完成注册。阿里云账号是您使用云资源的付费实体,因此是部署方案的必要前提。
  • 为阿里云账号充值。
    </ol>

    • 为节省成本,本方案默认全部选择使用按量付费资源,使用按量付费资源需要确保账户余额不小于100元。
    • 完成本方案的部署及体验,预计产生费用不超过5元(假设您选择本文示例规格资源,且资源运行时间不超过60分钟。实际情况中可能会因您操作过程中实际使用的流量差异,会导致费用有所变化,请以控制台显示的实际报价以及最终账单为准,如下图仅供参考)。








    <ol start="3">
  • 阿里云账号拥有操作资源的最高权限,从云资源安全角度考虑,建议您创建一个RAM用户,使RAM用户仅能操作有限的资源,然后由RAM用户完成本方案。
    </ol>

    • 访问RAM控制台-用户页面,单击创建用户,填写相关信息,勾选控制台访问和OpenAPI 调用访问,创建一个RAM用户。
    • 单击已创建的RAM用户操作列的添加权限,选择授权范围为指定资源组(例如高可用测试资源组),然后授权。以下为本解决方案所需权限策略,您也可以根据需要适当调整。

    <table>
    <thead>
    <tr>
    <th>授权范围</th>
    <th>授权策略</th>
    <th>描述</th>
    </tr>
    </thead>
    <tbody>
    <tr>
    <td>整个云账号</td>
    <td>AliyunECSFullAccess</td>
    <td>管理云服务器ECS的权限</td>
    </tr>
    <tr>
    <td>整个云账号</td>
    <td>AliyunSLBFullAccess</td>
    <td>管理负载均衡服务的权限</td>
    </tr>
    <tr>
    <td>整个云账号</td>
    <td>AliyunVPCFullAccess</td>
    <td>管理专有网络VPC的权限</td>
    </tr>
    <tr>
    <td>整个云账号</td>
    <td>AliyunECSWorkbenchFullAccess</td>
    <td>使用ECS-Workbench的完整权限</td>
    </tr>
    <tr>
    <td>整个云账号</td>
    <td>AliyunROSFullAccess</td>
    <td>管理资源编排服务ROS的权限</td>
    </tr>
    <tr>
    <td>整个云账号</td>
    <td>AliyunNASFullAccess</td>
    <td>管理文件存储NAS的权限</td>
    </tr>
    </tbody>
    </table>
    <h3>3、规划网络和资源</h3>

    1.网络规划
    请参考表格中的说明和方案默认示例值为每个规划项做详细规划并在实际部署时将默认示例值修改为您的实际规划。
    <table>
    <thead>
    <tr>
    <th>规划项</th>
    <th>数量</th>
    <th>说明</th>
    </tr>
    </thead>
    <tbody>
    <tr>
    <td>地域</td>
    <td>1</td>
    <td>您的云服务部署的地域。选择地域的基本原则请参见地域和可用区。</td>
    </tr>
    <tr>
    <td>专有网络VPC</td>
    <td>1</td>
    <td>在部署过程中新建一个VPC作为本方案的专有网络。</td>
    </tr>
    <tr>
    <td>交换机</td>
    <td>2</td>
    <td>本方案需要至少2台交换机,用来连接不同的云资源实例。</td>
    </tr>
    <tr>
    <td>传统型负载均衡CLB</td>
    <td>1</td>
    <td>本方案需要1台负载均衡CLB实例,用于对网站的多台云服务器进行流量分发。它可以通过流量分发扩展应用系统的服务能力,消除单点故障,提升应用系统的可用性。</td>
    </tr>
    <tr>
    <td>公网IP</td>
    <td>1</td>
    <td>创建负载均衡CLB实例时,选择公网类型,自动为负载均衡CLB实例创建1个公网IP。</td>
    </tr>
    <tr>
    <td>安全组</td>
    <td>1</td>
    <td>用于限制专有网络VPC下云服务器ECS的网络流入和流出规则。</td>
    </tr>
    </tbody>
    </table>

    2.规划云资源
    请参考表格中的说明和方案默认示例值为每个规划项做详细规划并在实际部署时将默认示例值修改为您的实际规划。
    <table>
    <thead>
    <tr>
    <th>规划项</th>
    <th>数量</th>
    <th>说明</th>
    </tr>
    </thead>
    <tbody>
    <tr>
    <td>云服务器 ECS</td>
    <td>2</td>
    <td>本方案需要2台ECS实例,用于同时部署Web服务。</td>
    </tr>
    <tr>
    <td>文件存储 NAS</td>
    <td>2</td>
    <td>本方案需要2个通用型NAS文件系统,实现共享存储和NAS多可用区容灾。</td>
    </tr>
    </tbody>
    </table>
    <h3>4、一键部署</h3>
    本文将通过资源编排ROS实现一键自动化完成本教程所需资源的创建和配置:

    • 创建1个专有网络VPC。
    • 创建2台交换机。
    • 创建一个安全组并配置安全组规则。
    • 创建2个抢占式云服务器ECS,并部署Web服务。
    • 创建1个公网传统型负载均衡CLB,并挂载这2台ECS作为后端服务器。
    • 创建2个不同可用区的通用型NAS文件系统。
    • 通过inotify-tools和sync工具和自动化脚本,实现主备NAS增量备份和主备切换。


    操作步骤
    单击一键部署,在页面左上角选择地域(本文示例:华东1(杭州))。
    在配置模板参数页面修改资源栈名称,选择ECS实例和NAS可用区、选择ECS实例规格、配置ECS实例密。填写完所有必选信息并确认后单击创建开始一键配置。
    当资源栈信息页签的状态栏变成创建成功时,表示已完成资源创建和模型部署。







    单击输出页签,可查看并访问已创建资源,以便验证方案。







    <h3>5、完成及清理</h3>

    方案验证
    1.验证ECS高可用
    您可以通过停机一台ECS模拟故障进而验证服务的可用性。操作如下:
    登录ECS控制台,选择概览,在资源列表选择一台ECS实例(假设为ECS_01),单击停止。
    等ECS状态为已停止后,输入负载均衡公网IP访问网站,能正常访问网站,则表明服务高可用。

    2.验证共享存储
    您可以通过在其中一台ECS实例上的NAS文件系统挂载路径上更新、新增、或删除文件,如果另一台ECS实例对应路径下的文件,也同步更新了,表明存储共享。

    3.验证NAS容灾高可用
    您可以移除Maser NAS的挂载点,约4秒后再输入负载均衡公网IP访问网站,能正常访问网站,则表明已从Maser NAS切换至Backup NAS。

    清理资源
    1.登录资源编排管理控制台,左侧导航栏菜单选择资源栈。
    2.在页面的顶部选择部署的资源栈所在地域,找到部署的资源栈。单击其右侧操作列的删除并确认,可一键删除一键配置所创建的资源。

    官网相关地址直达:
    1.更多阿里云方案查询:https://www.aliyun.com
    2.阿里云服务器ECS相关活动:https://www.aliyun.com/daily-act/ecs/activity_selection
    3.云小站(代金券发布平台):https://www.aliyun.com/minisite/goods





    <div class="image-caption">云小站代金券图.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|科技探索者论坛

GMT+8, 2024-11-24 17:10 , Processed in 0.037079 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表