阿里云运维架构实践秘籍
上QQ阅读APP看书,第一时间看更新

2.1 阿里云产品概要

目前,阿里云官方有将近两百款产品(数据汇总于2019年3月,在过去10年,阿里云共发布了162个产品,4610个新功能,几乎每天都有产品新功能发布),如图2-1所示。

图2-1 阿里云产品概要

主要为以下7大类:

❑ 人工智能

❑ 云计算基础

❑ 物联网

❑ 大数据

❑ 安全

❑ 企业应用

❑ 开发者服务

面对如此繁杂的云产品,暂且不说如何去选择使用,可能我们连很多云产品是做什么的都不太清楚。通过这些年的云端实践,我们发现80%~90%的云端用户主要在使用以下几类云端产品,这也是我们企业级应用中必须要选择的5个云产品。

1)ECS(Elastic Compute Service):云服务器

2)RDS(Relational Database Service):关系型数据库

3)SLB(Server Load Balancer):负载均衡

4)OSS(Object Storage Service):对象存储服务

5)VPC(Virtual Private Cloud):专有网络

事实上,以上5个云产品是有先后顺序排名的,而这个排名是通过实践得到的。ECS、RDS、SLB、OSS这是阿里云4款打江山的核心产品,简称“阿里云四大件”。ECS则是业务代码服务的载体,甚至基于ECS我们可以自行搭建数据库、缓存、负载均衡等服务,ECS作为云产品中的“基石”,是最基础最重要的云产品,排行第一一点也不为过。

不管企业级应用还是个人应用,98%的应用基本上都是动态业务,很少见到一个只有一个静态html(当然也有这样的需求)的业务。这里必然会涉及与数据库的交互,所以RDS紧跟在ECS后面,排名第二。

云的特性是分布式,传统IOE的单机应用很难展现云平台的优势,而SLB是让业务走向分布式的关键和基础,所以SLB排名第三。即使是单机业务,我们也有必要在单台ECS前面放个SLB作为代理转发。这样做的优势很多,详细内容将在第7章中跟大家介绍。

OSS对象存储是类似于开源MFS、Ceph、GlusterFS、Lustre的分布式文件系统。其实作为“阿里云四大件”之一,相比前面的3个云产品,其通用性不那么强了。因为OSS的使用有个大门槛,就是需要通过API对文件进行增删查改。当然有很多官方提供的软件开发工具包SDK(比如Java、Python、GO、PHP等主流开发语言版本的OSS SDK),以及OSS相关工具(比如8.3节提到的ossfs、ossutil等工具)降低了OSS的使用门槛,比如,在Linux运维中可以通过“Crontab+OSS工具”实现文件的异地备份,这种运维方式在很大程度上替代了传统“备份服务器”的角色。当然OSS在图片、转码等领域甚至可以结合CDN来使用,应用场景也较多。

VPC放在最后一位,是因为VPC是在“阿里云四大件”之后推出的一款产品。SNAT、VPN、专线都是基于VPC的,现在在云端企业级应用中,VPC基本上是默认的选择。但在实际应用中,一些金融客户还在使用经典网络,这样一来,安全性、架构扩展性等方面就受限了。

当然,还有很多大家熟悉的云产品暂未放在使用率较高的系列中,比如:

❑ CDN相关产品。之所以没有将CDN相关产品放在使用率较高的系列中,是因为很多业务中静态图片等静态资源并不多,对CDN加速的需求不明确。

❑ Memcache、Redis相关缓存产品。真正需要引入缓存时,侧面说明企业业务是中大型的。在传统中小型企业应用中,业务代码大多就跑几台Tomcat、PHP就行了。

❑ 云盾相关安全类产品。随着网络安全法的推行,虽然未来企业对安全性的要求及重视程度会越来越高,但是直到今天,大多数中小型企业对安全性仍没有概念,导致重视程度还不够,这也是很多企业没有使用云盾安全产品的主要原因。