Sirius 的博客

云计算入门

本文从云计算的定义、云计算的历史和现状、云计算的使用三个方面介绍云计算,最后再聊一聊云计算产品的做法,以及如何进入云行业

01 什么是云计算?

云计算产品种类繁多,但是无论什么类型的云产品都主要是:“ 将集中的 IT 资源虚拟化,交由专业的团队进行统一运维,以互联网的方式对外提供服务 ”。

根据美国国家标准与技术研究院(NIST)制定的云计算标准,主要按照部署方式和服务模式进行分类。

1、按照部署方式的不同,主要分成私有云、公有云、专有云和混合云,他们的主要区别在于部署方式。当然,也有一些因为行业标准以及规模范围等因素造成的实现技术的区别:

私有云:为单个组织或者团体提供云服务的平台;

公有云:为大众提供云服务的平台;

专有云:又叫团体云,为具有相同关切点的组织或者团体提供云服务的平台,相同的关切点可能包括:安全规范、监管要求等。根据不同的关切点可分为金融云、政务云等。

混合云:同时包含上面任意两种架构的云平台叫做混合云。

上图可以帮助理解几种云之间的关系,私有云是一个独立部署的云平台,主要是大型企业和政府内部使用,一般不是云计算行业从业人员比较难接触到。

公有云比较常见,阿里云、腾讯云、华为云我们都可以通过搜索引擎直接进入官网,购买相应的云服务。

这三家云厂商也都有专有云,不过入口比较深,一般因为特殊的安全和监管要求,费用会比公有云更贵,也有只做专有云的云平台,比如平安集团的平安云,主要就是做金融行业的云平台。

混合云的产生是因为一些企业或组织出于数据隐私或者 IT 架构考虑,使得整个 IT 系统存在多套云环境,不同云环境之间通常通过网络专线进行连接。

一个常见的混合云搭配是:企业内部搭建私有云存储核心业务数据,而把边缘或者非核心的业务放到公有云上。

2、按照服务模式的不同,主要分为 IaaS、PaaS 和 SaaS,他们之间的区别在于:云服务的可定制化程度。

IaaS (Infrastructure as a Service):主要是提供基础层的服务,最常见的交付物是云主机。主要典型产品为 AWS 的 EC2 产品以及其他厂商的云主机;

PaaS (Platform as a Service):主要是提供业务代码的运行环境和工具,最典型的 PaaS 应用是 GAE ( Google App Engine ) 以及 SAE ( Sina App Engine )。云上的数据库和中间件应用也算是典型的 PaaS 应用;

SaaS (Software as a Service):直接注册、登录即可使用的云产品,比如说钉钉、企业微信这些办公协同软件就是典型的 SaaS 产品。邮箱也可以看作是一个广义的 SaaS 产品。SaaS 平台因为行业和应用场景的多样化,分类很多。

不同的服务模式,对应着用户对资源的不同掌控力度。

IaaS 层的产品用户对于资源的控制力度最大,云主机这个典型的 IaaS 层产品用户可以直接控制从操作系统往上的层面,只把底层物理机硬件对用户屏蔽,最终使用者主要是 IT 管理员和运维人员。

PaaS 层则相对少一些,用户选择了运行环境和工具之后,主要是做代码层面的改动,使用者主要是软件开发人员。

而 SaaS 云产品则是开箱即用,用户注册登录之后,除了产品本身开放的配置,几乎做不了任何改动。基本上只要对相应的工具有需求,就是 SaaS 云产品的用户。

关于服务模式的不同,有一个很形象的比喻:

假设我们从零开始开一家披萨店,需要准备的设施和材料包括:厨房、烤炉、煤气、披萨饼皮、披萨配料、包装盒等。如果把交付给消费者一个完整披萨比喻成开箱即用的 SaaS 服务模式,根据外包出去设施或材料的不同可以比做不同的服务模式:

传统自有部署:相当于在家做披萨,所有东西和过程都要自己全包。包括厨房、燃气、烤箱、面饼、酱料,整个制作过程也要自己下手;

IaaS:相当于租赁别人的厨房、燃气和烤箱这些基础设施,自制披萨饼、面饼和酱料来烤制披萨;

PaaS:除了基础设施,别人还提供披萨面饼。我们只用撒上酱料,进行烤制就行了。

SaaS:全部外包出去,连烤制这一步骤也不用自己做,拿到手就可以直接大吃的披萨饼。

服务模式的不同,对应着不同的资源控制程度

如果你想吃到一个完整的披萨,四种模式你所需要做的工作量从大到小为:传统自有部署 > IaaS > PaaS > SaaS 。

对于云产品也是如此,如果用户最终的目的是构建一个企业管理系统方便自己员工使用,那么最快的方式是从市场上的 SaaS 提供商手中进行购买,员工可以直接注册使用,无须担心系统部署和开发的问题。

但是,市场上提供的 SaaS 软件可能除了布局、颜色等一些特性可以自定义外,大部分的产品功能都无法进行更改和定制。

如果对企业管理系统有特殊需求,市场现有 SaaS 软件无法满足,则可以招聘研发人员进行自有系统的研发,并且将自己的代码部署到相应的 PaaS 云产品上。

而如果系统的使用人员较多,系统压力较大,甚至需要开发自己的 Web 框架或者中间件,则需要购买云主机等 IaaS 产品,将整套系统部署在云主机上。

传统的自有部署,则是企业购买或者自建机房,采购物理机、交换机、路由器等硬件,从硬件层到软件层全要投入相应的资金和人力。可以看出,随着定制化的越深,企业所付出的资金和人力也越多。

02 云计算的历史和现状

云计算的本质是将底层的技术屏蔽,并且对用户提供一个完整可用的使用环境。

而其中用到最核心的技术就是 “虚拟化” 。

虚拟化的前身是分时共享系统,主要用来让多个用户在 “ 同一时间 ” 同时使用计算机,之所以 “ 同一时间 ” 加引号是因为虽然对于使用者无感知,但是计算机本身的处理逻辑还是需要间隔开进行多个任务的处理。

1972 年,IBM发布了名为 VM(Virtual Machine)的操作系统,至此才算是有了现代计算虚拟化技术的雏型。1978 年,IBM 新创了独立磁盘冗余阵列(Redundant Arrays of Independent Disks,RAID)的技术,可以将物理存储设备组装成存储资源池,算是完成了存储虚拟化技术的雏型。

1998 年,VMVARE 将虚拟化技术引入 X86 系统,虚拟化技术进入了高速发展的时期。上图中的 ESX、GSX、XEN、KVM 均是不同的计算虚拟化技术,VLAN 和 VPN 是网络虚拟化技术。

从上图可以看出,VMVARE 这家公司是虚拟化技术中的领导者。其中,2001 年发布的 ESX 和 GSX 产品可以在同一台物理机上创建多台虚拟机,这种将物理机作为资源池,可以支撑完整操作系统运行的虚拟化方案,已经和现代云计算相差无几。

虚拟化技术成熟之后,才真正的进入了现代云计算时代。

2006年,AWS 上线第一款云产品: Simple Storage Service(S3),主要提供数据的存储功能,可以通过页面和接口进行数据的访问。

我们现在通过 APP 或者网站看到的大部分图片和视频都是存储在云厂商类似于 S3 的对象存储产品中。

AWS 上线的第二款产品是 Elastic Compute Cloud(EC2),为用户提供 OS 的虚拟化。

购买一个 EC2 的产品实例相当于购买了一个虚拟化的 Linux (一种常用来做服务器的操作系统)或者 Windows 主机,用户可以在上面运行服务器,我们现在使用到的应用软件,大部分的后端服务都是运行在类似于 EC2 产品的云服务器中。

S3 和 EC2 奠定了 AWS 迈向云服务的基石,即使到现在这两款产品在 AWS 上也非常受欢迎。AWS 也没有停止前进的脚步,截至目前已经上线了一百多款云服务产品。

在 AWS 之后,Google、微软也相继入局,Google 于 2008 年发布了 GAE ,微软于 2009 年发布了 Azure。

各种开源的云计算方案也开始涌现,其中 Openstack 和 CloudFoundry 分别是比较早推出、也是比较受欢迎的 IaaS 和 PaaS 开源方案。

中国本土的云平台也相继上线,阿里云在 2009 年创立。腾讯云、百度云、华为云、UCloud、电信云等一系列云平台都逐步上线。

不论是全球还是国内,云平台正式进入列国混战的年代。

根据 IDC 的数据统计,截止 2018 年,全球公有云 IaaS 市场份额前三分别为:AWS、Microsoft、阿里云。

国内 IaaS 市场份额排名前三的云厂商分别是阿里云、腾讯云、AWS。

细分来看,目前业内多种部署方式并存。

中小型互联网企业更多选择公有云,而大型企业、政府机构出于安全和可控的考虑,较多选择私有云和混合云。

一些特殊行业,比如:证券、保险、银行、部分政府机构,因为有第三方的监管机构制定严格的 IT 标准,更倾向于选择专有云。

因为大厂商在公有云越来越稳固的地位,一些厂商已经放弃在公有云领域进行角逐,转而进攻市场更小,但是竞争也更小的专有云和私有云。

比如金融领域的平安云,政务领域的浪潮云。

这些云厂商因为在各自的领域具有比较强的实践、过硬的政府关系,虽然很难发展成全国 TOP 3 的云厂商,但在各自的领域也都有一席之地。

从服务模式来看,目前比较大的云厂商均有提供三种服务模式的云产品。

大厂商的云平台,优势更多集中在 IaaS 和 PaaS 层。

因为 IaaS 和 PaaS 层的云产品大多对于厂商的研发能力和运维能力有更高的要求,还需要厂商预留一定的资源去支撑用户系统的随时扩容,所以需要投入大量的资金和人力去建立机房、购买设备、保障运维等等。

对于中小企业, SaaS 的服务模式是一个更好的战场。

SaaS 层的云产品均可基于大厂商提供的 IaaS 层产品进行构建。一般来说,越偏向于上层的云产品,离客户和具体业务越近。需要厂商对用户的业务特别熟悉,云厂商可以选准一个方向进行深挖,将有限的资源集中在特定的方向,更容易做出成果。

03 如何使用云产品

使用 SaaS 云产品不需要了解太多技术,直接注册登录即可。

但是 IaaS 和 PaaS 云产品的使用者是技术人员,如果你是运营或者产品岗位,那么对于这两种偏低层的服务模式,不了解技术也就不能使用云产品,当然也很难去做竞品调研和产品设计。

不过,不论哪种服务模式,用户和产品的交互方式一般有两种:网页控制台和 SDK/API

SDK 全称是 Software Develoment Kit,是软件工具开发包。API 全称是 Application Programming Interface,是应用程序编程接口,两者均用于云产品和外部系统进行对接。

举个例子:云主机可以通过 Web 控制台进行开关主机、重装系统、修改网络配置等操作;也可以创建密钥,通过 SDK/API 进行产品的配置。当然对于云主机这种产品,运维人员也通过 SSH 登录进入云主机进行代码和系统的部署。

Web 控制台是最简单的方式,大部分云产品的创建、修改、删除等操作都可以通过 Web 控制台进行操作,下图是阿里云的云主机控制台:

不过对于云产品来说核心在于 API/SDK 。

在 Web 控制台里进行的操作基本都可以通过 SDK/API 进行操作,这样就可以写程序进行批量化的操作,也可以将云厂商的产品对接到企业内部系统。

亚马逊的 CEO 贝佐斯在 AWS 创立之前就要求内部所有团队以接口的形式对内部其他团队提供数据和服务,这个因素也是 AWS 目前在云计算领域做的比较出色的原因之一。

下图是阿里云的云主机 API 文档:

云计算发展迅速,即使是 IaaS 和 PaaS 产品,也有很多分类。下面是阿里云部分产品列表,可以看出云计算产品的种类繁多:

云计算从 AWS 开始对外提供服务到现在发展了十二年,对于新技术接受度比较高的互联网企业,基本软件系统都在部署在云上。

现在的趋势是一些传统企业也开始逐步上云,包括政府、银行、制造业等。

我们会偶尔看到新闻说 AWS、阿里的网线被挖掘机挖断,导致云服务大面积故障。不过这些都可以通过搭建混合云或者使用多个云厂商的产品进行解决,并且从成本以及架构灵活度来看,云计算还是有很大的优势。

云计算最主要的优势是降低企业 IT 资源的 TCO。 ( TCO :Total Cost of Ownership,总拥有成本 )

传统模式部署主机需要和运营商签约租机房或者机柜,然后进行服务器的采购,并且需要部署路由器、交换机等基础设施。

使用云服务器只需要在云服务商官网购买即可,并且云厂商基本都支持弹性伸缩和按量付费,可以根据实际的使用量付费,不用担心在业务高峰期再进行 IT 资源的扩充,也不用担心在业务低谷期有闲置的 IT 资源。

下图是数目相同的 IT 资源使用传统模式和使用 AWS 的三年 TCO 对比:

第二个优势是技术架构更灵活。

云平台已经把各种开发需要的技术框架都组件化和产品化,比如 Kafka、Redis、Hadoop 等,大部分常用的中间件和数据库都有云厂商提供。研发人员只需要关注业务逻辑即可,不用担心低层的运维,他们的稳定性由云厂商来保证。

所以,不论从硬件成本还是人力成本来看,云计算相比传统架构都有很大的优势。各种组织的 IT 架构上云也是不可避免的趋势。

04 如何做云产品

按照面向的客户群体来分,云计算属于 To B (To Bussiness)类产品。

To B 一般是面向企业或者组织的产品,与之相对 To C(To Customer)类产品一般是面向个人消费者,To C 类产品个人在生活中接触的比较多,比如微信、美团这些我们日常接触到的产品都属于 To C 类的产品。

To B 类的产品售卖基本都会涉及企业/组织内多个角色。

假如要售卖一个技术类 To B 产品给企业内部,即使最终使用者是研发人员,整个采购流程可能会涉及到 CEO 、CTO、技术人员、财务人员。

CEO 要考虑支出产出比、CTO 要考虑云厂商技术实力、技术人员要关注新技术融入难度、财务人员会涉及付款和审计问题。根据产品复杂度,涉及的角色数量也会不同,并且每个角色和产品发生接触的点以及使用场景也会不同。

概括来讲,To B 类产品在完整的产品使用流程一般会接触到三类角色:决策者、使用者、购买者。

决策者:具有最终是否购买权的角色,通常是公司 CEO 或者部门领导;

使用者:最终使用产品的角色,通常为公司普通员工;

购买者:进行付款的角色,通常为公司财务或采购人员。

这三类角色在企业内部可能是一个人,也可能是不同岗位的人。

所以在产品设计的过程中,如何去满足不同角色的需求、对于不同角色的需求如何去衡量优先级、如何将这些不同角色的需求在产品迭代中有节奏的实现等等,这些就是 To B 类产品经理需要特别去考虑的问题。

To C 产品的客户虽然也会涉及到不同角色,涉及的年龄层、性别、职业可能也会很广,但是抽象出来的用户画像基本上是相似的。

其他一些差异点,比如说 To B 产品的购买决策时间更长、两者运营的模式不同等,本质上都是因为客户群体的差异造成的。

大部分的云产品都属于是比较典型的 To B 类产品,To B 和 To C 的客户群体的差异在云产品上也会存在,云产品的用户群体主要有以下特性:

云产品的购买者基本都是企业和政府,个人开发者只占收入的很小一部分,非常符合 80/20法则;

云产品的购买者决策链条较长,涉及的角色可能跨越不同部门,需要组织内部推动。

一般企业内部云产品采购流程包括:“产品咨询 -> 解决方案 -> 方案验证 -> 询价 -> 合同审核 -> 合同签订 -> 付款 -> 产品交付 -> 售后服务”。

其中涉及到的客户公司岗位可能会包括:CTO/技术总监、BD、法务、运维、财务、采购等等。

不同的角色也会涉及到产品的不同功能,比如:财务/采购人员需要在线付款或者对公打款、申请发票,法务人员需要下载以及审核合同;技术人员需要登录控制台或者调用 API 进行最终使用等。

因为这些差异,对产品经理有一些和 TO C 产品不一样的要求:

内部沟通能力:因为产品售卖的流程比较长,在售卖的过程中很可能涉及内部不同部门对外提供支撑,所以需要产品经理有较强的的沟通能力去整合内部资源提供服务。

外部销售能力:客户企业内部决策链较长,所以要有基本的销售能力将客户内部各环节打通,并且将客户引导到产品已有的功能上进行满足。

成为行业专家:对所在的行业比较了解,不论客户、销售、技术都会非常重视你的意见。做云主机产品就要对 OS 和虚拟化很了解、做财务 SaaS 产品就要对财务知识很了解。

05 如何进入云行业

对于计算机相关专业或者有技术背景的人来说,进入云行业相对容易,并且有比较大的岗位选择空间。

如果有过前端技术经验,可以选择 APM ( Application Proformence Managment)中偏向浏览器性能监控或 App 性能监控的云产品。

如果有应用后端、中间件或数据库工作经验可以选择 PaaS 领域相关的云产品。基本上只要做过技术,都可以在云行业找到自己的一席之地。

下图是从拉勾网上截取的某公司云产品经理岗位的任职要求,可以看出如果是计算机专业毕业,并且有过开发经验的话,会是很大的加分项。

如果对技术不太了解,可以选择 SaaS 类相关的工作。

SaaS 产品的产品经理只需要了解基础的技术知识,更多的需要理解业务。

如果原来是从事运营、销售类工作,可以尝试销售类 SaaS 工具,例如:销售易、Salesforce 等。财务类的则可以尝试金蝶、用友类专业财务工具的岗位。

下图是某直播 SaaS 平台的招聘要求,需要应聘者比较了解直播行业,具有基本的产品策划能力,对技术没有明确的要求。

而且 SaaS 领域还有更多的机会,因为 SaaS 产品形态是和业务强绑定的,需要云厂商精通特定领域的业务。

除了目前比较热门的领域如:IoT、协作工具、在线文档等,其实还有很多传统领域云计算的渗透率并没有那么高,选择这些领域切入,还是有不少机会的,如化工、土建等,具体还是要根据自身经历和资源进行行业的选择。

如果面临私有云和公有云的选择,个人更建议选择公有云。产品经理更能够参与一个完整的产品生命流程,影响力和话语权也更多。私有云的产品演进主要基于甲方需求和技术限制,产品经理在其中更倾向于项目经理的角色。

但是无论是从技术,还是其他岗位转岗云产品经理,都需要掌握诸如产品设计、项目管理、产品运营等基础的产品技能。这些基本技能的学习就不在这篇文章中展开了。

总之,想找到合适自身的工作,要结合过往的经验和技能,选择自身比较有优势的岗位。

参考链接:

https://skyao.io/learning-cloudnative/introduction/history.html
云计算的历史

http://www.ruanyifeng.com/blog/2017/07/iaas-paas-saas.html
IaaS、PaaS、SaaS 的区别

#产品   #云计算