BpFile(id=269, bpId=96, name=单机网站架构云化, author=null, keyword=架构云化,弹性扩容, description=单机网站上云后/分阶段进行架构云化演进、弹性扩容, position=null, ossUrl=bp-Q4ATKE2HQJFGFMFH.pdf, tags=null, level=null, tagList=[Tag(id=72, name=null, type=null, description=null, tagName=网站搭建, status=null, pdfDescription=null)], products=null, productList=[Product(id=39, name=null, description=null, link=https://www.aliyun.com/product/disk
, productName=块存储, logo=null, code=null), Product(id=40, name=null, description=null, link=https://www.aliyun.com/product/vpc
, productName=专有网络 VPC, logo=null, code=null), Product(id=41, name=null, description=null, link=https://www.aliyun.com/product/ecs
, productName=云服务器ECS, logo=null, code=null), Product(id=42, name=null, description=null, link=https://www.aliyun.com/product/rds/mysql
, productName=云数据库RDS MySQL 版, logo=null, code=null), Product(id=44, name=null, description=null, link=https://www.aliyun.com/product/slb
, productName=负载均衡 SLB, logo=null, code=null), Product(id=151, name=null, description=null, link=https://www.aliyun.com/product/developerservices/cadt, productName=云速搭CADT, logo=null, code=null)], hotspot=null, oneClick=1, createTime=null, modifiedTime=null, timeConsuming=null, status=1, pdfDescription=
很多客户最开始使用云的时候,会把云(服务器)简单地当成普通的物理服务器来使用,比如把应用系统、数据库和文件等都保存在同一台云服务器上。这样部署应用在用户变多后,不方便对应用进行扩容,简单的提升规格也很难处理高并发的请求,建议把计算和存储分离出来。云给客户提供的远不止是服务器,还有其他很多云产品,以便客户在云上做架构的云化,最终带来高可用、弹性等优势。本最佳实践主要是指导客户如何把单机的系统如何进行初步的云化。
, templateId=NZLLJAZ68F7D3HBG, freetry=null, visitTime=null, visitCount=14034, video_url=null, buttonName=null, buttonUrl=null, targetId=NZLLJAZ68F7D3HBG, partner=null, partnerUrl=null, partnerLogo=null, cooperation=, cooperationList=null)
1
单机网站架构云化 最佳实践
部署架构图
场景描述
很多客户最开始使用云的时候,会把云(服务器)
简单地当成普通的物理服务器来使用,比如把应
用系统、数据库和文件等都保存在同一台云服务
器上。云给客户提供的远不止是服务器,还有其
他很多云产品,以便客户在云上做架构的云化,
最终带来高可用、弹性等优势。本最佳实践主要
是指导客户如何把单机的系统如何进行初步的
云化。
解决问题
如果有问题请钉钉扫描联系作者:
1. 指导客户单机系统的架构云化改造
2. 提升客户系统的高可靠性
3. 提升客户系统的弹性
产品列表
云服务器 ECS
云数据库 RDS
负载均衡 SLB
对象存储 OSS
内容分发网络 CDN
文档版本:20190917(发布日期)
2
阿里云
单机网站上云
架构云化最佳实践
文档版本:20150122(发布日期) II
3单机网站架构云化最佳实践 文档版本信息
文档版本信息
文本信息
属性 内容
文档名称 单机网站架构云化最佳实践
文档编号 096
文档版本 V1.4
版本日期 2020-06-30
文档状态 外部发布
制作人 敬海
审阅人 敬海、云魁
文档变更记录
版本编号 日期 作者 审核人 说明
V1.0 2019/09/14 云滴 敬海、云魁 创建
V1.1 2019/09/16 筱晖 - 文档优化
增加 ROS版本;增加自动快
V1.2 2019/09/23 云滴 -
照备份;更新架构图。
V1.3 2020/01/14 云滴 - 增加概览页、作者二维码。
V1.4 2020/06/30 敬海 -
文档版本:20200630 I
4单机网站架构云化最佳实践 前言
前言
概述
本实践主要解决对于云上大量中小客户上云后,由原来的单机服务如何进行基本的云化部
署架构升级、弹性伸缩需求问题,是最基本的场景。
应用范围
本最佳实践适合客户的研发人员和 ISV使用。
名词解释
VPC:Virtual Private Cloud,简称 VPC。基于阿里云创建的自定义私有网络, 不
同的专有网络之间二层逻辑隔离,可以在自己创建的专有网络内创建和管理云产
品实例,比如 ECS、负载均衡、RDS等。在创建前,您需要结合具体业务,规划
VPC和交换机的数量及网段等。
SLB:Server Load Balancer,简称 SLB。多台云服务器进行流量分发的负载均衡
服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升
应用系统的可用性。
ECS:Elastic Compute Service,简称 ECS。是阿里云提供的一种基础云计算服
务。无需提前采购硬件设备,根据业务需要,随时创建所需数量的云服务器 ECS
实例。在使用过程中,随着业务的扩展,可以随时扩容磁盘、增加带宽。也能随时
释放资源,节省费用。
RDS:Relational Database Service,简称 RDS,是一种稳定可靠、可弹性伸缩
的在线数据库服务。基于阿里云分布式文件系统和 SSD盘高性能存储,RDS支
持 MySQL、SQL Server、PostgreSQL、PPAS和 MariaDB引擎,提供了容灾、
备份、恢复、监控、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。
CDN:阿里云内容分发网络(Alibaba Cloud Content Delivery Network,简称 CDN)
将您源站资源缓存至阿里云遍布全球的加速节点上。当终端用户请求访问和获取
这些资源时,无需回源,系统将就近调用 CDN节点上已经缓存的资源。
OSS:阿里云对象存储服务(Object Storage Service,简称 OSS),是阿里云提
供的海量、安全、低成本、高可靠的云存储服务。其数据设计持久性不低于
99.999999999%,服务设计可用性不低于 99.99%。具有与平台无关的 RESTful
API接口,您可以在任何应用、任何时间、任何地点存储和访问任意类型的数据。
文档版本:20200630 III
5单机网站架构云化最佳实践 目录
目录
文档版本信息 ........................................................................................................................................................ I
法律声明 ............................................................................................................................................................... II
前言 ..................................................................................................................................................................... III
目录 ..................................................................................................................................................................... IV
演示环境说明 ....................................................................................................................................................... 1
最佳实践概述 ....................................................................................................................................................... 2
1. 单机网站搭建 ............................................................................................................................................... 3
1.1. 创建VPC ........................................................................................................................................ 3
1.2. 创建ECS ......................................................................................................................................... 5
1.3. 部署单库单服网站....................................................................................................................... 10
1.3.1. 自建MYSQL数据库 ............................................................................................................. 10
1.3.2. 自建wordpress服务 ............................................................................................................ 11
1.3.3. wordpress访问mysql数据库 .............................................................................................. 15
1.3.4. 访问wordpress站点 ............................................................................................................ 16
2. 架构云化 ..................................................................................................................................................... 19
2.1. 业务与数据分离 .......................................................................................................................... 19
2.1.1. 创建并配置RDS ................................................................................................................... 19
2.1.2. 部署变更 .............................................................................................................................. 26
2.1.3. 数据库迁移 .......................................................................................................................... 27
2.1.4. 验证变更结果....................................................................................................................... 28
2.2. 业务高可用 .................................................................................................................................. 29
2.2.1. 公网IP转换为弹性公网IP .................................................................................................. 29
2.2.2. 创建SLB实例 ....................................................................................................................... 30
2.2.3. 扩建ECS ............................................................................................................................... 33
2.2.4. 部署变更 .............................................................................................................................. 37
2.3. 基于API&SDK实现弹性扩容 ....................................................................................................... 42
2.3.1. 基础环境 .............................................................................................................................. 42
2.3.2. 一键创建基础环境 ............................................................................................................... 43
2.3.3. 一键数据分离....................................................................................................................... 45
2.3.4. 一键弹性扩容....................................................................................................................... 45
3. 架构扩展 ..................................................................................................................................................... 48
3.1. 增加Redis缓存 ............................................................................................................................ 48
3.2. 静态文件分离和加速 ................................................................................................................... 48
3.3. 自动弹性伸缩 .............................................................................................................................. 48
4. ROS版本 ..................................................................................................................................................... 49
4.1. 创建基础环境 .............................................................................................................................. 49
4.2. 弹性扩容 ...................................................................................................................................... 54
文档版本:20200630 IV
6单机网站架构云化最佳实践 演示环境说明
演示环境说明
资源规划
本实践中需要开通的阿里云产品或服务以及相关规格的描述见下表。
说明:凡是涉及到阿里云资源的开通,统一将地域设置为华东 1(杭州)。
VPC [专有网络] VPC_BASE [专有网络网段] 192.168.0.0
[交换机] [交换机可用区&网段]
Vsw-f 可用区 F,192.168.1.0/24
ECS [云服务器] 可用区 F
ecs.sn2ne.large(2vCPU,8 GiB)
RDS 4核 8G;MySQL5.6 可用区 F
rds.mysql.s3.large
SLB Small规格 可用区 F和可用区 E
本最佳实践中使用的脚本可以使用 https://code.aliyun.com/best-practice/96.git 命令
进行下载。
文档版本:20200630 1
7单机网站架构云化最佳实践 最佳实践概述
最佳实践概述
对于云上大量中小客户,上云后,由原来的单机服务如何进行基本的云化部署架构升
级,解决弹性伸缩需求,是最基本的场景。
系统架构图:
本最佳实践既提供了基于控制台的操作,同时也提供了基于 API&SDK的操作,后续
会补充基于 ROS和 terraform的操作模板,便于不同客户群的使用。
本最佳实践适用于客户的研发人员和 ISV使用。
文档版本:20200630 2
8单机网站架构云化最佳实践 单机网站搭建
1. 单机网站搭建
本章节主要完成基础环境的准备,即在云上专有网络 VPC里,通过一台 ECS来搭建
一个网站。然后后续章节基于此,进行云化架构的改造。
如果客户已经有了云上的基础环境,想要云化架构改造或扩容,可以直接从第二章节
开始。
1.1. 创建 VPC
步骤1 登录阿里云管理控制台。(https://home.console.aliyun.com)
步骤2 通过产品与服务导航,定位到专有网络 VPC,单击进入专有网络控制台。
步骤3 在专有网络页面,将地域设置为华东 1(杭州),并单击创建专有网络。
步骤4 在创建专有网络侧边页面,完成以下配置,并单击确定。
文档版本:20200630 3