带你读《弹性计算—无处不在的算力》第二章:弹性计算产品家族 2.1:弹性计算的使用场景(一)-阿里云开发者社区

开发者社区> -开发者助手-> 正文

带你读《弹性计算—无处不在的算力》第二章:弹性计算产品家族 2.1:弹性计算的使用场景(一)

简介: 《弹性计算—无处不在的算力》第二章:弹性计算产品家族 2.1:弹性计算的使用场景(一)
+关注继续查看

随着多媒体、机器学习、科学计算领域的快速发展,云上对于异构计算的需求被快速地激发出来,实例不仅需要实现过去普通的x86 虚拟化,还要能够支持异构计算部件的虚拟化或直通透传,使得在虚拟机内的应用可以将GPU 或FPGA 这一类部件利用起来,像普通x86 云服务器一样配置灵活、可调整。

在实例内,存储和网络是必不可少的两个功能。在云服务器诞生之初,实例读写所需要的存储多为本地存储(即虚拟机所在物理机本地的磁盘),本地存储的优点是服务器内部访问、效率高、成本低,但缺点也极其明显:容量空间有限、本地失效概率高、服务器宕机数据有丢失风险、无法立刻恢复业务、需要等待维修。这些都为后续发展云盘提供了明确的方向:存储和计算分离能够带来更高的可扩展性,数据丢失风险以N 个数量级的幅度降低。实例的存储绝大多数已经使用云盘来实现,也就是下面要介绍的“弹性块存储”。本地存储仅在少数场景下才会使用,如极高存储性能、极低单GB 存储成本、对数据可靠性没有强诉求等场景。

对于实例来说,网络性能中的数据收发功能和在此之上的访问隔离与互通灵活控制功能是基础,而这些都是依靠虚拟网络来实现的。每一个实例都有其对应的网络功能和存储功能的描述。

2.1 云服务器开天地

虚拟化技术是支撑整个云计算行业发展最重要的基础技术。

在虚拟化技术出现前,用户对于应用的运维主要是面向物理机的。资金并不充裕的用户会选择把多个业务所需的应用部署在一台服务器上运行。比如,把企业所需的DHCP 服务器、DNS 域名解析服务器、Web 应用服务器都部署在一台服务器上;把SAP 应用和企业办公的OA 系统部署在另一台服务器上,这样可以节省服务器,减少服务器的电力、机位、网络设备成本。但弊端也相当明显,不仅应用使用的端口可能冲突,而且共享的文件读写也会不可避免地产生冲突。另外,如果应用所依赖的系统库是共享的,那么系统库版本问题又会让管理维护人员“发疯”。运维工程师无时无刻不处于神经紧绷状态,一旦哪个应用崩溃,很可能会引发连锁反应,导致整个系统的宕机。当管理维护人员需要重新启动计算机时,这台服务器上所有运行的业务系统都会一起被连带着中断。

资金充裕的用户虽然可以为每一个业务系统都配置一台甚至多台服务器,但会造第2 章 弹性计算产品家族27 


成服务器资源极大的浪费,每一台服务器负载都很低,绝大多数时间都在机架上“吃灰”。另外,每一台服务器所产生的电力、网络、机柜费用,也是极大的浪费;同时, 基础系统的维护,包括几十台、甚至上百台的服务器系统的升级系统、打补丁、升级应用等,所需耗费的工作量会大幅增加。

虚拟化技术的成熟很好地解决了上述问题,Intel 和AMD 在各自出品的CPU 中加入虚拟化指令,Windows /Linux 也相继提供了内核虚拟机,使虚拟机(虚拟服务器)可以更大地发挥物理硬件的性能。通过Hypervisor,在一台物理服务器上可以同时运行多台虚拟机。每台虚拟机都可以独立安装不同的操作系统,并能够独立运行、重启或关机,相互之间不受影响。虚拟机配给的硬件资源是由管理者调配的,对硬件资源的占用只要在配额之内,即使某个系统负载过高而宕机,也不影响其他虚拟机的工作。使用虚拟机可以让创建、撤销相关资源都在软件管理层面上完成。以往在升级服务器硬件时是需要断电拆机的,而在虚拟机上,扩展资源配给可以直接通过管理软件界面设定来做到热生效,销毁服务器与之同理。迁移、备份也更加方便,虚拟机的运行系统和环境对应的是物理服务器上的一个镜像文件,以前迁移服务器到异地机房时需要先下架后再小心翼翼地长途托运,生怕摔碰;而虚拟机的迁移只需拖动一个文件即可。

由于虚拟化层的存在,无论是热迁移应用,还是用快照做在线备份、恢复数据, 都变得极其顺畅。如果用户操作有误,可以随时回滚。而在物理系统上遇到这种情况时可能就得重做系统了。以前一台祼机从安装系统到部署业务平均耗时为12 小时, 而今在虚拟机上可以提前准备好各种模板,需要时仅使用模板克隆一次就能快速完成。传统服务器和虚拟服务器的差别如图2-1 所示。

App App 操作系统服务器硬件操作系统服务器硬件App App App 独立操作系统独立操作系统独立操作系统虚拟硬件虚拟硬件虚拟硬件服务器虚拟化传统服务器传统服务器虚拟化服务器服务器硬件

image.png

图2-1  传统服务器和虚拟服务器的差别28 


现在,在企业内部或互联网上,主流公共云服务商提供的云服务(例如云服务器、数据库服务、VPC、负载均衡等)绝大多数都是基于虚拟机的。可以说,正是有了这种“软件定义服务器”的能力,云上的资源按需使用、按量付费、分钟交付才成为可能,用户对于集群中所有虚拟机的运行情况都能及时掌握和按需调配。因此,当下整个云计算行业盛行及高速发展,虚拟化技术功不可没。

云服务器是所有云服务的基础,也是使用最普遍、用户接受度最高的弹性计算产品。因为虚拟化继承了x86 的标准硬件体系结构和操作系统标准应用界面的双重标准,所以,用户完全可以从过去使用物理机平滑过渡到使用云服务器,从而对底层物理资源的运维这一“脏活、累活”则被云服务提供商的自动化、大规模集中运维给取代了。

现在,云服务器的计算、存储、网络、系统环境部件已变得非常复杂,每一个侧面都需要大量的研发人员在背后持续优化,使云服务器的性能没有“短板”,成为一个发展均衡的“木桶”。

2.1.1 ECS 实例

在云产品,尤其是IaaS 类产品中,实例是一个常见的概念,特指虚拟计算环境。一台云服务器(为行文方便,以下简称为ECS)实例等同于一台虚拟机,包含CPU、内存、操作系统、网络、磁盘等基础计算组件。

根据业务场景和使用场景,ECS 实例可分为多个规格族。以阿里云产品为例, 对于通用的x86 计算密集型应用场景,C 系列规格族是最合适的产品;对于大数据场景,D 系列规格族的性价比最高;而对于异构计算场景,性价比最高的则是GN 系列规格族。在同一业务场景下,也可以选择多个不同的规格族。在同一个规格族里,根据CPU 和内存的配置,可以分为多种不同的规格。ECS 实例规格定义了实例的CPU 和内存的配置(包括CPU 型号、主频等,部分规格还包括特殊的异构计算部件或者本地存储)。图2-2 为ECS 实例规格族图谱。

一个规格族包括若干实例规格(简称规格),对应产品的大中小不同配置。以计算型C6 规格族为例,规格ecs.c6.large 代表C6 规格族内的最小实例规格2 vCPU 4GB 内存的虚拟机配置,而规格ecs.c6.2xlarge 代表C6 规格族内的实例规格8 vCPU 16GB 内存的虚拟机配置。每一个实例规格除了直观地描述采用什么配置的虚拟机,还定义了其对应的存储云盘性能、内网性能等参数。这些是保障在实例使用过程中各方面性能稳定、可预期的关键,也就是云服务器产品的QoS 能力,这一点对于企业用户尤其重要。第2 章 弹性计算产品家族29 

image.png

图2-2  ECS 实例规格族图谱30 


随着多媒体、机器学习、科学计算领域的快速发展,云上对于异构计算的需求被快速地激发出来,实例不仅需要实现过去普通的x86 虚拟化,还要能够支持异构计算部件的虚拟化或直通透传,使得在虚拟机内的应用可以将GPU 或FPGA 这一类部件利用起来,像普通x86 云服务器一样配置灵活、可调整。

在实例内,存储和网络是必不可少的两个功能。在云服务器诞生之初,实例读写所需要的存储多为本地存储(即虚拟机所在物理机本地的磁盘),本地存储的优点是服务器内部访问、效率高、成本低,但缺点也极其明显:容量空间有限、本地失效概率高、服务器宕机数据有丢失风险、无法立刻恢复业务、需要等待维修。这些都为后续发展云盘提供了明确的方向:存储和计算分离能够带来更高的可扩展性,数据丢失风险以N 个数量级的幅度降低。实例的存储绝大多数已经使用云盘来实现,也就是下面要介绍的“弹性块存储”。本地存储仅在少数场景下才会使用,如极高存储性能、极低单GB 存储成本、对数据可靠性没有强诉求等场景。

对于实例来说,网络性能中的数据收发功能和在此之上的访问隔离与互通灵活控制功能是基础,而这些都是依靠虚拟网络来实现的。每一个实例都有其对应的网络功能和存储功能的描述。

2.1.2 弹性块存储

虚拟化实例对于计算资源的充分利用和简化运维有非常大的帮助作用,但仅仅依靠计算虚拟化,并没有很好地解决数据块存储方面的问题。因为云服务器所持有的持久化数据,如操作系统、应用、用户数据等,既不丢失、不能出错,同时要保证数据的访问性能足够高,以满足多种场景的诉求。另外,还要具备云计算架构的优势,比如可以对存储容量或磁盘物理容量动态扩容、保证计算实例和数据的解耦合,降低计算或存储单方面运维的复杂度等。云上的弹性块存储(Elastic Block Storage)的应用场景和产品特点都是基于以上业务需求发展起来的。经过长久的发展,云上的弹性块存储系统和传统的计算机存储系统一样,已成为云服务器系统中既重要又有挑战的子系统之一。

弹性块存储是弹性计算家族中数据块级别的块存储产品,简称云盘,具有低时延、高性能、持久性、高可靠等特点。云盘采用分布式三副本机制,为ECS 实例提供99.9999999%(9 个9)的数据可靠性保证,支持在可用区内自动复制数据,防止意外硬件故障导致的数据不可用,保护业务,免于受组件故障的威胁。就像硬盘一样,用户可以对挂载到ECS 实例上的云盘做分区、格式化、创建文件系统等操作, 并对数据进行持久化存储。第2 章 弹性计算产品家族31 


弹性块存储按照用户需要的存储使用场景和特点,可以划分为以下几个阶段: 

最早一代的云盘(普通云盘)是具备高可靠性、一般随机读写性能的云盘产品。这一代产品从根本上解决了本地存储的可靠性和可用性问题,但性能与本地盘相比,仍具有较大的差距。

随着技术的演进,以及更新、更合理的硬件架构的出现,普通云盘逐渐演进成了具有更优I/O 性能的SSD 云盘和高效云盘。这一代产品最高可以达到数万IOPS 和Gbps 级别的数据吞吐能力。其性能已经比较接近本地盘了。

最新一代ESSD 云盘产品达到了百万量级IOPS 和数十Gbps 的数据吞吐能力, 在性能方面基本等同于本地存储。


无论普通的块存储还是云盘存储,都是单节点挂载、单节点读写访问的产品,随着更多的传统企业上云,传统IDC 中多服务器共享访问同一块存储的场景需求也在云上产生。在典型的集群架构中,多个计算节点通常需要访问同一份业务数据。为防止一个或多个计算节点发生故障而导致业务中断,共享块存储可以保证集群对外提供业务访问的持续性和高可用性。用户可将重要的业务数据存储在共享块存储上,并通过集群文件系统对共享块存储进行统一管理。当多个前端计算节点并发地读写数据时,共享块存储能保证数据在多个计算节点间的一致性。

回望过去,云盘在保持着高可靠性和免运维的前提下不断优化性能,走的是一条使产品在性能上越来越符合本地盘业务需求的道路。当然,本地盘存储并没有被完全抛弃,随着互联网和移动互联网的广泛应用,企业数据以前所未有的速度积累,而基于大数据的应用,不论离线分析还是在线计算,都被越来越多的企业所采纳。大数据的典型场景对物理介质的可靠性并无更高要求,因为在应用层已经通过分布式存储将数据打散存储在多计算节点上,所以高性能和低成本(应对海量数据)是这个场景的核心诉求,而本地弹性块存储正是针对这个场景的产品而设计的,它基于云服务器ECS 所在物理机(宿主机)上的本地硬盘设备,为ECS 实例提供本地存储访问性能, 是为那些对存储I/O 性能和海量存储性价比有极高要求的业务场景而设计的产品。


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
如何在函数计算中使用 Node.js 处理 multipart 文件上传请求
web 开发中我们经常会允许用户通过 HTTP POST 请求上传文档到服务器,本文将介绍在函数计算中基于 node.js 使用 multipart form-data 来实现文件上传服务。
2657 0
使用OpenApi弹性创建云服务器ECS
除了可以在ECS控制台或者售卖页创建ECS之外,您可以使用OpenApi代码来弹性的创建和管理ECS。这里使用Python来作例子。 开通按量付费产品,您的账户余额不得少于100元,更多的需求参见ECS 使用须知,您需要在阿里云的费用中心确保自己的余额充足。
5906 0
怎么设置阿里云服务器安全组?阿里云安全组规则详细解说
阿里云服务器安全组设置规则分享,阿里云服务器安全组如何放行端口设置教程
6924 0
使用OpenApi弹性管理云服务器ECS
阿里云的云服务器ECS除了提供控制台来进行日常的管理和资源创建,还提供了OpenApi来进行资源的管理和定制开发。通过OpenApi您可以更加灵活的管理和配置云服务器。 阿里云提供了SDK来包装OpenApi,可以让您将云服务器的管理集成到您的已有系统中。
10049 0
使用OpenApi弹性释放和设置云服务器ECS释放
云服务器ECS的一个重要特性就是按需创建资源。您可以在业务高峰期按需弹性的自定义规则进行资源创建,在完成业务计算的时候释放资源。本篇将提供几个Tips帮助您更加容易和自动化的完成云服务器的释放和弹性设置。
7763 0
弹性计算双周刊 第 9 期
中国开源软件推进联盟在2018年6月28日-29日召开的“第十三届开源中国开源世界高峰论坛”上发布了“2018 中国开源领袖人物”、“2018中国开源杰出贡献人物”的重要奖项,并对在开源领域的领袖人物、杰出贡献人物进行了肯定和褒奖。
4405 0
使用c语言计算3阶行列式
使用c语言计算3阶行列式
2529 0
AutoScaling 如何通过RAM使用弹性伸缩?
RAM (Resource Access Management) 是阿里云为客户提供的用户身份管理与资源访问控制服务,使用RAM能够大大的提高企业信息安全程度。本文主要介绍了如何通过RAM实现对弹性伸缩服务的访问控制。
1191 0
阿里云弹性计算专业认证 acp是什么?认证需要具备哪些知识?
阿里云弹性计算专业认证 acp是什么?获得阿里云弹性计算专业acp认证需要具备哪些知识?这就是我在认证大使官网上看到的关于云弹性计算专业认证的问题。阿里云弹性计算专业认证 acp属于阿里云acp认证的一种,想要获得此认证,需要具备过硬的弹性计算以及IT知识,下面就来给大家介绍一下
39 0
1694
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载