云计算技术与应用

​ 云计算是一种全新的使用计算资源(硬件和软件)的模式。计算资源所在地(远方的一个或者多个机房)称为云端,人们使用的输入输出设备(pc,手机,平板)称为云终端,两者通过网络连接。

​ 在it行业存在一个15年周期现象,从1966年开始到可预知的未来若干年,可分为6个周期,每个周期的技术热点分别如下:

​ 每一个周期都的产品以前一周期的技术为基础,诞生并发展而来,但这并不意味着前一周期的产品会消亡

​ 特别说明:广义上的计算资源包括了服务器资源、软件应用和人力服务等,针对本文而言,如果没有特别强调,计算资源都是指服务器资源,即cpu资源、内存资源、存储资源等。

​ 在谈云计算之前,先谈一下传统的计算资源利用特征:

​ 如果只是一个普通的pc使用者,这些特征并不会带来什么问题,但是对于企业而言,因为计算资源无法共享会让计算资源造成浪费,再者计算机空转和满载下的用电相差不大,大量计算机空转的话,只会带来无谓的成本消费。

​ 不同于传统的计算机,云计算引入了一种全新的计算资源使用方式,计算资源所在地称为云端(机房,云计算基础设施中心),输入\输出设备称为云终端(手机,pc,平板等)。

​ 云终端和云端之间是标准的C/S模式,如图所示:

​ 消费者不需要或者很少需要云服务提供商的协助,就可以单方面获取云端计算资源

​ 消费者可以随时随地地使用任何云终端(手机,平板,pc等)设备接入网络并使用云端的计算资源。

​ 云端计算资源需要被池化,以便通过多租户形式共享给多个消费者,也只有池化才能根据消费者的需求动态的分配物力资源或虚拟计算资源,消费者通常情况不知道自己正在使用的计算资源确切位置,但是在自助申请时能指定大概的区域(某省,某市)

​ 消费者能方便、快捷地按需获取和释放计算资源,也就是说,需要时能快速获取资源从而扩展计算能力,不需要时能可快速释放资源,减少浪费。对于消费者而言,计算资源是无限的,可以随时申请获取任何数量的计算资源。

​ 但我们一定要消除一个误解,那就是一个实际的云计算系统不一定是一个投资巨大的工程,也不一定要购买成千上万的计算机,也不需要具备超大规模的计算能力,其实一台计算机就可以组件一个最小的云端,云端建设方案务必采用可伸缩性策略,刚开始时采用几台计算机,根据用户规模来增减计算资源。

​ 消费者,顾名思义,要为使用计算资源这个行为付费,付费的计量方法有很多,比如根据某类资源(如存储、CPU、内存,带宽等),或者根据时间长短、使用数量、使用次数计费。但不管如何计费,面对消费者价码要清楚,合理,面对系统要监控消费者的使用情况,及时输出报表,做到供需两方结算清晰明白。

​ 云端资源只给某个单位组织内的用户使用,这是私有云的核心特征。云端的所有权可能是本单位、也可能是第三方,或者两方联合共有。云端的位置可能在第三方处托管,也可能在单位内。

​ 云端资源专门给固定的几个单位内的用户使用,而这些单位对云端具有相同的诉求(如安全要求、云端使命、规章制度、合规性要求等)。云端的所有权、日常管理和操作的主体可能是本社区内的一个或多个单位,也可能是社区外的第三方机构,还可能是二者的联合。云端可能部署在本地,也可能部署于他处。

​ 云端资源开放给社会公众使用。云端的所有权、日常管理和操作的主体可以是一个商业组织、学术机构、政府部门或者它们其中的几个联合。云端可能部署在本地,也可能部署于其他地方,比如中山市民公共云的云端可能就建在中山,也可能建在深圳。

​ 混合云由两个或两个以上不同类型的云(私有云、社区云、公共云)组成,它们各自独立,但用标准的或专有的技术将它们组合起来,而这些技术能实现云之间的数据和应用程序的平滑流转。由多个相同类型的云组合在一起属于多云的范畴。

​ 比如两个私有云组合在一起,混合云属于多云的一种。由私有云和公共云构成的混合云是目前最流行的——当私有云资源短暂性需求过大(称为云爆发,Cloud Bursting)时,自动租赁公共云资源来平抑私有云资源的需求峰值。

例如,网店在节假日期间点击量巨大,这时就会临时使用公共云资源来应急。

服务本质上是一种租赁,对于资源的占用方式是 “为我所用” 而不是 “为我所有”。

​ 云服务提供商把 IT 系统中的应用软件层作为服务出租出去,消费者不用自己安装应用软件,直接使用即可,这进一步降低了云服务消费者的技术门槛。更详细的介绍参见后续章节。

​ 云服务提供商把 IT 系统中的平台软件层作为服务出租出去,消费者自己开发或者安装程序,并运行程序。更详细的介绍参见后续章节。

​ 云服务提供商把 IT 系统的基础设施层作为服务出租出去,由消费者自己安装操作系统、中间件、数据库和应用程序。更详细的介绍参见后续章节。

​ X 并不是某个单词的缩写,而是一个变量,所以得它的中文意思是一切。XaaS所有云服务的概括,也就是说,像SaaS,PaaS,IaaS,CaaS等都是包含在XaaS中。通过 XaaS,企业只需购买他们需要的东西,并在需要时为其付费。

​ 云计算的精髓就是把有形的产品(网络设备、服务器、存储设备、各种软件等)转化为服务产品,并通过网络让人们远距离在线使用,使产品的所有权和使用权分离。正如洗衣店老板把洗衣机这种有形产品转化为洗衣服务一样,消费者直接投币自助洗衣,这样一方面提高了洗衣机的使用率,另一方面又降低了消费者购买洗衣机的支出。

​ PS: 洗衣店不是一种新的洗衣技术,而是一种新的洗衣服模式,可能洗衣店老板还会进一步细分市场,推出干洗服务、洗衣烘干一条龙服务等。

​ 计算设备一旦转化为服务,使用率就会得到显著提高,设备的寿命反而会更长,因为电子产品不比机械产品会产生磨损,经常不开机的电子设备反而比常年开机满负荷运转的电子设备更容易出故障。

​ 另外,作为计算资源的软件可以无限复制运行,这一点与洗衣店的洗衣机等物理设备有本质的不同,一台洗衣机被他人使用,就不能同时再被另外的人使用;而软件则没有这个限制,同样一个软件,可以同时给任意多的人使用。还有,计算资源使用率的高低与成本无关,对于一台计算机而言,直接的成本是用电费用,计算机空转与满负荷运转耗费的电力几乎相当;而洗衣店的用户越多,开启的洗衣机就越多,耗费的电力也就越多。

前面多次提到租户和用户,那么这两个概念到底有什么区别呢?

以一个单位组织(如企业、部门或团体等)的名义去租赁云计算服务时,云服务提供商称呼该单位组织为一个租户,而一个租户包含若干个用户(单位内的员工),这些用户当中有的是该租户的管理员,有的是操作员等。

比如 XXX 企业向 SaaS 云服务提供商租赁了 ERP 系统,云服务提供商认为 XXX 企业是一个租户,然后给它分配管理员账号和密码。XXX 企业指定员工张三为租户管理员,张三登录云平台自助网站创建更多的普通账号,然后把这些账号分配给公司内部的相关业务人员(如会计人员、人事经理、仓库管理员等)。

一个租户允许只有一个用户,也允许有多个用户。云服务提供商只与租户(法人代表)之间存在租赁合同关系,并与租户进行费用结算

​ 云计算是一种新的计算资源使用模式,云端本身还是 IT 系统,所以逻辑上同样可以划分为这四层。底三层可以再划分出很多“小块”并出租出去,这有点像立体停车房,按车位大小和停车时间长短收取停车费。因此,云服务提供商出租计算资源有 3 种模式,满足云服务消费者的不同需求,分别是 IaaS、PaaS、SaaS,如下图所示。

​ IaaS 是“Infrastructure as a Service”的首字母缩写,意思是基础设施即服务,即把 IT 系统的基础设施层作为服务出租出去。由云服务提供商把 IT 系统的基础设施建设好,并对计算设备进行池化,然后直接对外出租硬件服务器、虚拟主机、存储或网络设施(负载均衡器、防火墙、公网IP地址及诸如 DNS 等基础服务)等。

​ 出租的物理服务器和虚拟机统称为主机,云服务提供商如何对外出租主机呢?或者是租户如何使用这些租来的主机呢?相对于租户来说,这些主机不在现场而在“远方”,租赁之后并不是把这些主机从云端搬到租户的办公室来使用。

​ 出租前后主机的物理位置并没有改变,租户仍然是通过网络使用这些云端主机。租户登录云服务提供商的网站,填写并提交主机配置(如需要多少个 CPU、多少内存、多少网络带宽等)表后付款,然后云服务提供商向租户颁发账号和密码,最后租户以此账号和密码登录云端的自助网站。

​ 在这里,租户可以管理自己的主机:启动和关闭机器、安装操作系统、安装和配置数据库、安装应用软件等。其实只有启动机器和安装操作系统必须要在自助网站上完成,其他操作可以直接登录到已经安装了操作系统并配置好网卡的主机中完成。

对于租来的主机,租户只关心计算资源(CPU、内存、硬盘)的容量是否与租赁合同上标注的一致,就像租赁同一层楼上的一间房间一样,租户只关心面积是否足够,而不关心房间的墙壁是钢筋水泥结构还是砖块石灰结构。但是对于云服务提供商来说,出租硬件服务器和虚拟机,内部的技术处理是不一样的,其中硬件服务器必须要集成远程管理卡并要池化到资源池中。

​ 远程管理卡是插接在服务器主板上或者直接集成在主板上的一个嵌入式系统,需要接网线并配置 IP 地址。只要服务器的电源插头插到插座上,不管有没有按下服务器的电源开关,这个远程管理卡都会启动,其他人就可以通过网络登录到远程管理卡(需要账号和密码),成功登录后就可以进行启动和关闭服务器、安装操作系统等操作。只不过云服务提供商把远程管理卡的功能集成到了租户自助网站中,从而实现了物理机和虚拟机的统一管理。

​ 租户到底是租赁硬件服务器还是虚拟机呢?这个问题留到后面教程的章节来讨论。

​ IaaS 云端的基本架构模型逻辑上分为三层:第一层管理全局,第二层管理计算机集群(一个集群内的机器地理位置上可能相距很远),第三层负责运行虚拟机。

​ 第一层的云管理器与第二层的集群管理器之间一般通过高速网络连接,当增加数据中心为云端扩容时,就能体现网速的重要性。而集群内的计算机之间倾向于采用本地局域网(如 10Gbit/s 以太网)或者超高速广域网,如果采用局域网,则灾难容错差;如果跨广域网,则网络带宽会成为瓶颈。

​ 云管理器是云端对外的总入口,在这里验证用户身份,管理用户权限,向合法用户发放票据(然后用户持此票据使用计算资源)、分配资源并管理用户租赁的资源。

​ 每一个集群负责管理本集群内部的高速互联在一起的计算机,一个集群内的计算机可能有成百上千台。

​ 集群管理器接受上层的资源查询请求,然后向下层的计算机管理器发送查询请求,最后汇总并判断是部分满足还是全部满足上层请求的资源,再反馈给上层。如果接下来收到上层分配资源的命令,那么集群管理器指导下层的计算机管理器进行资源分配并配置虚拟网络,以便能让用户后续访问。

​ 另外,本层 PLS 中存储了本集群内的全部虚拟机镜像文件,这样一台虚拟机就能在集群内任意一台计算机上运行,并轻松实现虚拟机热迁移。

​ 每台计算机上都有一个计算机管理器,它一方面与上层的集群管理器打交道,另一方面与本机上的虚拟机软件打交道。它把本机的状态(如正在运行的虚拟机数、可用的资源数等)反馈给上层,当收到上层的命令时,计算机管理器就指导本机的虚拟机软件执行相应命令。这些命令包括启动、关闭、重启、挂起、迁移和重配置虚拟机,以及设置虚拟网络等。

​ 租赁 IaaS 云服务,对租户而言,最大优点是其灵活性,由租户自己决定安装什么操作系统、需不需要数据库且安装什么数据库、安装什么应用软件、安装多少应用软件、要不要中间件、安装什么中间件等,相当于购买了一台计算机,要不要使用、何时使用以及如何使用全由自己决定。

​ 一些搞研发的计算机技术人员倾向于租赁 IaaS 主机。但是对于租户来说,IaaS 云主机除管理难度大外,还有一个明显的缺陷:计算资源浪费严重。因为操作系统、数据库和中间件本身要消耗大量的计算资源(CPU、内存和磁盘空间),但它们消耗的资源对租户来说做的是无用功,来看下面这个极端的案例。

​ 没有硬盘空间,如何安装应用软件?没有空闲的内存,又如何能运行应用软件?张三本来打算租赁云端主机来搞图形设计,这样一来,目的就没达到,至少租来的主机的配置要翻倍才行。

下面是一些 IaaS 云服务的实际应用。

​ PaaS 是“Platform as a Service”的首字母缩写,意为平台即服务,即把 IT 系统的平台软件层作为服务出租出去

​ 相比于 IaaS 云服务提供商,PaaS 云服务提供商要做的事情增加了,他们需要准备机房、布好网络、购买设备、安装操作系统、数据库和中间件,即把基础设施层和平台软件层都搭建好,然后在平台软件层上划分“小块”(习惯称之为容器)并对外出租。

​ PaaS 云服务提供商也可以从其他 IaaS 云服务提供商那里租赁计算资源,然后自己部署平台软件层。另外,为了让消费者能直接在云端开发调试程序,PaaS 云服务提供商还得安装各种开发调试工具。相反,租户要做的事情相比 IaaS 要少很多,租户只要开发和调试软件或者安装、配置和使用应用软件即可。PaaS 云服务的消费者主要包括以下人员。

图 2 PaaS 云服务供/需双方动态交互示意图

云服务提供商拥有一个应用软件库(图 1 中“A,B,C,…”代表库中的应用软件)、开发工具集(如编程语言、IDE、调试工具等)和软件执行资源池(图 1 中“exr1,exr2,…”代表资源),消费者通过网络远程租赁软件执行资源并运行相关的应用软件,或者使用各种开发工具。

软件执行资源有“可用”和“占用”两个状态,同一个资源不能同时运行多个程序。软件执行资源可能是物理机、虚拟机、容器或者一个正在运行的服务程序(响应消费者的请求,启动虚拟机或容器,甚至是租赁其他云端的计算资源)。

图 2A 中,用户 C1 申请了两个资源:exr1 和 exr2,并运行 B、C 两个程序。

图 2B 中,新来了一个程序开发员,他正在使用开发工具开发程序。

图 2C 中,程序开发员开发完成并部署了一个新程序 D。

图 2D 中,一个管理员发布了程序 D,然后新来的用户申请资源 exr3 并执行程序 D。

PaaS 云服务供/需交互还有很多情景,这里不再一一列出。

​ PaaS 云服务提供商不可能安装全部的语言、数据库、中间件和运行库来支持所有的应用软件,因此目前普遍的做法是安装主流的语言、数据库、中间件和运行库,使得出租的 PaaS 容器支持有限的、使用量排名靠前的应用软件以及支持最流行的编程语言,并在网站上发布公告。当然,云服务提供商也鼓励租户直接开发支持 PaaS 的应用软件,每家云服务提供商都想尽可能地黏住更多的用户,这无可厚非。

​ 不知道你有没有遭遇过这样的痛苦:企图安装一个要用的软件,结果报“没有找到 XXX 中间件”的错误,于是急忙找来相关资料安装需要的中间件,但又报错:“此中间件需要 YYY 数据库的支持”,那么只好安装数据库,却再次报错:“此数据库需要 ZZZ 运行库”,于是又去安装相应的运行库,但报错又出现了……最后你怒了:我不用这个应用软件总可以了吧?但你的计算机中已经安装了一大堆用不上的软件,硬盘快满了,于是又不得不去一个一个地卸载,卸载时又不断跳出调查表,询问你卸载的原因:是软件不够好吗?是售后服务跟不上吗?影响计算机速度吗……安装过 Linux 操作系统的人估计都会有这样的痛苦经历。

​ PaaS 的优势就是解决应用软件依赖的运行环境(如中间件、数据库、运行库等),其所依赖的软件全部由云服务提供商安装,所以当租户安装应用软件时,就不会再出现连续报错的情况。应用软件就像歌唱家,当其唱歌表演时需要一个舞台,这个舞台就是由基础设施层和平台软件层堆叠起来的。

​ 前面讲过,平台软件层包括操作系统、数据库、中间件和运行库四部分,但并不是说在具体搭建平台软件层时一定要安装和配置这四部分软件,需要哪部分以及安装什么种类的平台软件要根据应用软件来定。比如一家只针对 PHP 语言开发(应用软件用 PHP 编写)的 PaaS 云服务提供商,就没必要安装类似 Tomcat 的中间件了。根据平台软件层中安装的软件种类多少,PaaS 又分为两种类型。

​ 平台软件层中只安装了操作系统,其他的留给租户自己解决。最为流行的半平台 PaaS 应用是开启操作系统的多用户模式,为每个租户创建一个系统账号,并对他们做权限控制和计算资源配额管制。半平台 PaaS 更关注租户的类型,如研发型、文秘型等,针对不同类型的租户做不同的权限和资源配置。

​ Linux 操作系统的多用户模式和 Windows 操作系统的终端服务都属于半平台 PaaS,私有办公云多采用半平台 PaaS。

​ 全平台 PaaS 安装了应用软件依赖的全部平台软件(操作系统、数据库、中间件、运行库)。不同于半平台 PaaS,全平台 PaaS 是针对应用软件来做资源配额和权限控制的,尽管最终还需要通过账号实现。公共云多采用全平台 PaaS。

​ 相对于 IaaS 云服务,PaaS 云服务消费者的灵活性降低了,租户不能自己安装平台软件,只能在有限的范围内选择。但优点也很明显,租户从高深烦琐的 IT 技术中解放出来,专注于应用和自己的核心业务。

下面是一些 PaaS 云服务的实际应用。

​ SaaS 是“Software as a Service”的首字母缩写,意为软件即服务。简言之,就是软件部署在云端,让用户通过因特网来使用它,即云服务提供商把 IT 系统的应用软件层作为服务出租出去,而消费者可以使用任何云终端设备接入计算机网络,然后通过网页浏览器或者编程接口使用云端的软件。这进一步降低了租户的技术门槛,应用软件也无须自己安装了,而是直接使用软件

​ SaaS 云服务提供商这时有 3 种选择:

租用别人的 IaaS 云服务,自己再搭建和管理平台软件层和应用软件层。

租用别人的 PaaS 云服务,自己再部署和管理应用软件层。

自己搭建和管理基础设施层、平台软件层和应用软件层。

总之,从云服务消费者的角度来看,SaaS 云服务提供商负责 IT 系统的底三层(基础设施层、平台软件层和应用软件层),也就是整个 T 层,最后直接把应用软件出租出去。图 2 所示是 SaaS 云服务供/需双方的动态交互示意图。

​ 在图 2A 中,有两个用户正在使用云端的软件,其中用户 C1 运行两个程序 B 和 C,云端为该用户分配了 exr1 和 exr2 两个执行资源,exr1 执行资源用于执行 B 应用程序(图 2 中用“B(exr1”表示),exr2 执行资源用于执行 C 应用程序(图 2 中用“C(exr2”表示)。而用户 C2 正在执行一个程序 C(图 2 中用“C(exr3”表示)。

​ 在图 2B 中,一个新用户 C3 进来了,云端从可用的执行资源池中为他分配了 exr4 和 exr5 两个执行资源,分别执行 A 和 B 应用程序,而执行资源池中可用的资源数减少了两个。

​ 云服务提供商选择若干种使用面广且有利可图的应用软件,如 ERP(企业资源计划)、CRM(客户关系管理)、BI(商业智能)等,并精心安装和运维,让租户用得放心、安心。

1)复杂

软件庞大、安装复杂、使用复杂、运维复杂,单独购买价格昂贵,如 ERP、CRM 系统及可靠性工程软件等。

2)主要面向企业用户

3)模块化结构

​ 按功能划分成模块,租户需要什么功能就租赁什么模块,也便于按模块计费,如 ERP 系统划分为订单、采购、库存、生产、财物等模块。

4)多租户

​ 能适合多个企业中的多个用户同时操作,也就是说,使用同一个软件的租户之间互不干扰。租户一般指单位组织,一个租户包含多个用户。

5)多币种、多语言、多时区支持

​ 这一点对于公共云尤其明显,因为其消费者来自五湖四海。

6)非强交互性软件

​ 如果网络延时过大,那么强交互性软件作为 SaaS 对外出租就不太合适,会大大降低用户的体验度,除非改造成弱交互性软件或者批量输入/输出软件。

​ 如微软的 Office 365 和谷歌的在线办公等——通过浏览器运行远程 SaaS 办公软件,本质上就是 I/O 本地化,而浏览器与云端之间批量化传输(单击“保存”按钮或者浏览器定时保存)。

​ 软件的云化就是对传统应用软件进行改造,使之满足(3)、(4)、(5)三个特点。

​ 这里要着重介绍一下特点“(4)多租户”,即允许多个租户同时使用软件而互不影响,因此多租户的第一个要求就是软件支持多个用户登录,用户一般为非系统管理账户(如不是操作系统用户或者数据库用户),且保存在数据库的业务表中。

​ 如张三的输入/输出就是张三的,绝对不允许“窜”到李四那边去,反之亦然。这里重点关注的是硬盘文件作为输入/输出设备的情景,因此多租户的第二个要求就是用户身份信息必须作为数据记录的检索字段之一,这样用户之间的数据才可以实现隔离。

​ 数据记录包括软件的配置信息和业务数据,配置信息指租户选择的语言、设置的时区、指定的币种、定义的面板参数等;而业务数据就是日常业务处理产生的数据,一般保存在数据库中,而数据库保存在云端的存储中。在具体设计隔离方案时,需要综合考虑隔离效果和资源使用效率,如图 3 和图 4 所示,更详细的租户隔离内容参见后面的章节。

1)企事业单位的业务处理类软件

2)协同工作类软件

3)办公类软件

4)软件工具类

​ 这类软件用来解决安全性或兼容性问题,以及在线软件开发,如文档转换工具、安全扫描和分析工具、合规性检查工具及线上网页开发等。

​ 随着因特网进一步延伸到世界各地,带宽和网速进一步改善,以及云服务提供商通过近距离部署分支云端,从而进一步降低网络延时,可以预计,能够云化的软件种类将越来越多。但是无论如何,下面三类软件不适合作为公共 SaaS 云服务出租。

1)实时处理软件

​ 比如飞行控制系统、工厂作业机器人控制等,这类软件要求任务完成时间非常精准(甚至达到微秒级)。假如云化,单单横亘在 SaaS 云端与消费者之间的网络延时就是一个难以承受的不可控因素,更不要说其他因素了。

2)时时产生并处理大量消费者数据的软件

诸如视频监控、环境信息收集处理等时时产生并要处理大规模的数据信息(可能每秒达 GB 级)的软件,在目前和未来几年内的因特网宽带条件下,不适合云化,因为如此大规模的数据很难实时传输到 SaaS 云端进行处理。

3)关键软件

​ 这类软件如果运行异常,将会导致人员伤亡或者重大财产损失。为了提高这类软件的可靠性,最主要的方法是降低软件的复杂度——软件本身的复杂度和运行环境的复杂度,因为越简单就越可靠。而 SaaS 云服务环境包含着复杂的软/硬件栈(9 层的 IT 系统),以及不可预测的网络带宽、延时、丢包因素,绝对不合适云化此类关键软件并以公共 SaaS 云服务模式交付给用户使用。

​ 针对私有云或者社区云,如果云端就在本地,且消费者通过局域网接入云端,那么上面三类软件也可以 SaaS 模式部署。

1)云终端少量安装或不用安装软件

​ 直接通过浏览器访问云端 SaaS 软件,非常方便且具备很好的交互体验,消费者使用的终端设备上无须额外安装客户端软件。

​ 配置信息和业务数据没有存放在云终端里,所以不管用户何时何地使用何种终端操作云端的软件,都能看到一样的软件配置偏好和一致的业务数据。云终端成了无状态设备。

2)有效使用软件许可证

软件许可证费用能大幅度降低,因为用户只用一个许可证就可以在不同的时间登录不同的计算机;而在非 SaaS 模式下,必须为不同的计算机购买不同的许可证(即使计算机没被使用)——过度配置许可证现象。

另外,专门为保护软件产权而购置的证书管理服务器也不用买了,因为在 SaaS 模式下,软件只运行在云端,软件开发公司只跟云服务提供商打交道并进行软件买卖结算即可。

3)数据安全性得到提高

​ 对于公共云和云端托管别处的其他云来说,意味着 SaaS 型软件操纵的数据信息存储在云端的服务器中,云服务提供商也许把数据打散并把多份数据副本存储在多个服务器中,以便提高数据的完整性,但是从消费者的视角看,数据被集中存放和管理。

​ 以上那么做有一个明显的好处,那就是云服务提供商能提供专家管理团队和专业级的管理技术和设备,如合规性检查、安全扫描、异地备份和灾难恢复,甚至是建立跨城市双活数据中心。当今大的云服务提供商能够使数据安全性和应用软件可用性达到 4 个“9”的级别。

​ 对于云端就在本地的私有云和社区云来说,好处类似于公共云,但是抗风险能力要差一些,除非对大的意外事件提前做好预案,如为应对天灾(地震、洪水等)人祸(火灾等),建立异地灾备中心。另外,无处不在的网络接入,使人们再也不用复制数据并随身携带,从而避免数据介质丢失或者被盗。数据集中存放和管理还有利于人们分享数据信息。

4)有利于消费者摆脱 IT 运维的技术泥潭而专注于自己的核心业务

SaaS 云服务消费者只要租赁软件即可,而无须担心底层(基础设施层、平台软件层和应用软件层)的管理和运维。

5)消费者能节约大量前期投资

​ 消费者不用装修机房,不用建设计算机网络,不用购买服务器,也不用购买和安装各种操作系统和应用软件,这样就能节省成百上千万元的资金。

​ 但是 SaaS 云服务也给人们带来了新的挑战,如完全依赖网络、跨因特网对安全防范措施要求更高、云端之间的数据移植性不够好、租户隔离和资源使用效率二者之间需要综合平衡考虑(详见教程后面章节“租户隔离”的相关内容)等。

1)电子邮件和在线办公软件

2)计费开票软件

​ 用于处理客户有关使用和订阅产品及服务所产生的账单。

3)客户关系管理系统(CRM)

​ 功能涵盖从客户呼叫中心到销售自动化的各种应用程序。

4)协作工具

这种软件能促进企业内部或者跨企业的团队中的成员协同合作。

5)内容管理系统(CMS)

用于管理数字内容,包括文本、图形图像、Web页面、业务文档、数据库表单、视频、声音、XML文件等,引入版本控制、权限管理、生命周期等。

6)财务软件。

7)人力资源管理系统。

8)销售工具。

10)企业资源计划(ERP)。

11)谷歌在线翻译。

​ 目前绝大多数混合云由企事业单位主导,以私有云为主体,并融合部分公共云资源,也就是说,混合云的消费者主要来自一个或几个特定的单位组织。

​ 私有云的核心特征是云端资源只供一个企事业单位内的员工使用,其他的人和机构都无权租赁并使用云端计算资源。至于云端部署何处、所有权归谁、由谁负责日常管理,并没有严格的规定。

​ 这有两个可能,一是部署在单位内部(如机房),称为本地私有云;二是托管在别处(如阿里云端),称为托管私有云。本地私有云如图 1 所示。

​ 托管私有云是把云端托管在第三方机房或者其他云端,计算设备可以自己购买,也可以租用第三方云端的计算资源,消费者所在的企业一般通过专线与托管的云端建立连接,或者利用叠加网络技术在因特网上建立安全通道(VPN),以便降低专线费用,如图 2 所示。

​ 这存在两种可能,一种是归企业自身所有;另一种是归他人所有,企业租用。绝大多数本地私有云属于第一种情况,而对于托管私有云来说,租赁计算设备更具成本优势,云端规模伸缩也更自如。

​ 一个云端的日常管理包括:管理、运维和操作。管理是指制定规章制度、合规性监督、定期安全检查、灾难演练、数据恢复演练、SLA制订与落地检查等,侧重于制度和人员层面。运维指日常运行维护,具体包括机器性能监控、应用监控、性能调优、故障发现与处理、建立问题库、问题热线坐席、定期输出运维报告、产能扩容与收缩、应用转产与退出等,侧重于设备层面。

​ 云端的操作不是指云服务消费者的操作,而是指云端的例行日常工作,包括数据备份、服务热线坐席、日常卫生、与消费者的一些操作互动等。云端的日常管理可以完全由自己承担,也可以完全外包出去或者部分外包出去。

​ 私有云的规模可大可小,小的可能只有几个或者十几个用户,大的会有数万个甚至十几万个用户,但是过小的私有云不具备成本优势且计算资源配置的灵活性体现不出来,比如家庭和小微型企业,直接采用虚拟化即可,技术简单、管理方便。就像智能照明系统不适合三口之家的小居室一样,因为只有几盏灯、几个开关,手动操作简单、方便,成本也低。

​ 企业私有办公云现在被很多大中型单位组织采用,用云终端替换传统的办公计算机,程序和数据全部放在云端,并为每个员工创建一个登录云端的账号,账号和员工一一对应,相比传统的计算机办公有如下好处:

​ 社区云的核心特征是云端资源只给两个或者两个以上的特定单位组织内的员工使用,除此之外的人和机构都无权租赁和使用云端计算资源。参与社区云的单位组织具有共同的要求,如云服务模式、安全级别等。具备业务相关性或者隶属关系的单位组织建设社区云的可能性更大一些,因为一方面能降低各自的费用,另一方面能共享信息。

​ 比如,深圳地区的酒店联盟组建酒店社区云,以满足数字化客房建设和酒店结算的需要;又比如,由一家大型企业牵头,与其提供商共同组建社区云;再比如,由卫生部牵头,联合各家医院组建区域医疗社区云,各家医院通过社区云共享病例和各种检测化验数据,这能极大地降低患者的就医费用。

与私有云类似,社区云的云端也有两种部署方法,即本地部署和托管部署。由于存在多个单位组织,所以本地部署存在三种情况:

托管社区云的示意图如图 4 所示。

图 4 托管社区云

​ 公共云的核心特征是云端资源面向社会大众开放,符合条件的任何个人或者单位组织都可以租赁并使用云端资源。公共云的管理比私有云的管理要复杂得多,尤其是安全防范,要求更高。

​ 公共云的一些例子:深圳超算中心、亚马逊、微软的 Azure、阿里云等。

​ 混合云是由两个或两个以上不同类型的云(私有云、社区云、公共云)组成的,它其实不是一种特定类型的单个云,其对外呈现出来的计算资源来自两个或两个以上的云,只不过增加了一个混合云管理层。云服务消费者通过混合云管理层租赁和使用资源,感觉就像在使用同一个云端的资源,其实内部被混合云管理层路由到真实的云端了,示意图如图 5 所示。

图 5 混合云

在图 5 中,假如用户在混合云上租赁了一台虚拟机(IaaS 型资源)及开发工具(PaaS 型资源),那么用户每次都是连接混合云端,并使用其中的资源。用户并不知道自己的虚拟机实际上位于另一个 IaaS 私有云端,而开发工具又在另一个公共云上。

由于私有云和社区云具有本地和托管两种类型,再加上公共云,共有 5 种类型,所以混合云的组合方式就有很多种形式了,如图 6 所示。

图 6 混合云的组合方式

图 7 Rightscale公司给出的2016年报告

图 8 平抑季节性资源需求峰值

混合云可以做多个层面的事情,基本可以分为数据层面和业务负载层面。在这两个层面,有一些典型的应用场景,具体如下。

​ 云计算与传统的计算机系统相比,具有明显的优势,为了描述清楚这种优势,请看下面的情景案例。

​ 我是 XYZ 公司的李老板,员工人数在 20 人以上,其中三分之二的人需要用计算机办公,公司会用到下面的软件与系统。

1)Word/Excel/PowerPoint:用于处理文字材料、电子表格和制作并演示 PPT 给客户观看。需要购买微软或者金山的 WPS 办公软件。

2)办公自动化软件:用于公司内部语音通话、视频会议、消息通信、审批自动流转、文件转发、收发传真等。

5)ERP 系统:主要用来管理进、销、存和生产、财务、人事等,打通各个部门的业务数据通道,引入一系列的业务流程,最终目的是降低库存,留住和挖掘客户资源,加快资金周转,减少人力成本。ERP 系统安装复杂、价格昂贵、日常管理工作量大。公司从创立之初开始使用 ERP 比公司做大后再使用 ERP 效果更好,等公司做大后再使用 ERP 很容易失败。

6)产品数据管理软件:公司的产品线多,涉及成千上万的零部件,而且每个零部件又有几十个版本,所以我们不得不采用专门的产品数据管理软件来管理大量的产品数据。自从采用产品数据管理软件以来,产品研发周期明显缩短,而且版本控制有条不紊。

7)AutoCAD/Photoshop/Solidworks/Candence:我们必须要用这些专业的产品设计工具,而正版软件的价格异常昂贵,每年还有升级费用;公司做大后,不敢使用盗版软件,否则法律风险很高。

8)产品可靠性工程管理软件:为了提高公司产品的可靠性,我们必须要使用这种软件,但这样的软件价格都在百万元以上。

另外,还有如下要求。

2)员工出差时也可以随时访问公司内部的 ERP 等系统,即做到移动办公。

3)要求公司的网站、邮件系统和 ERP 系统不关机,也就是要每天 24 小时运行,允许员工和客户随时访问。

4)严格控制购买计算机和软件的成本,以及日常的运行维护成本,包括电费和计算机工程师的人力成本,资金都要用在刀刃上。

5)要求采用最先进的软件,如产品设计软件、ERP 等。

为了满足我的需求,我会参照如下方式行事,公司规模不同方案也不同。

1. 假如我公司是一家小型公司,员工人数在 200 人以内

1)部署远程桌面服务办公环境:

​ 购买几台服务器部署微软的远程桌面服务,每个办公桌上放置一台云终端,给需要的员工每人一个账号和密码。各种软件(如办公软件、产品设计软件等)都安装在服务器上并且在服务器上运行,公司全部的文档资料也放在服务器上。云终端是纯硬件设备,里面不用安装 Windows 和各种应用软件。

这样做的好处有:

2)租用公共云上的 ERP 软件、产品数据管理软件和可靠性工程软件等,前提是有这些软件的 SaaS 云服务提供商。

​ 这些软件价格昂贵,如果单独购买安装在公司内部,那么对于我们小公司来说,是没有这个资金实力的,但是我们可以租用使用权。按账号每月付费,我租了 10 个 ERP 账号、3 个产品数据管理系统的账号和 2 个可靠性工程软件账号,先付了一年的租金,总金额不到 3 万元。

这样做的好处有:

3)租用公共云上的一台虚拟机专门运行公司网站和邮件系统,每年租金 2000 元。虚拟机从不关机,满足了我们的要求:网站和邮件系统随时可用。

​ 对于一家员工人数在 200~500 人的中型公司,方案与上面的大致相同,只不过要购买更多的服务器,租用更多的公共云账号。

2. 假如我公司是一家大型公司,员工人数在 500 人以上

​ 部署本地私有云,全部服务器池化——10% 的服务器最终以物理机的形式让用户租用,90% 的服务器最终以虚拟机的形式让用户租用。因为公司一些核心的应用必须跑在物理机上,以便满足安全性要求。

​ 云端设计成可伸缩的,服务器随着办公人数的变化而睡眠或者唤醒,比如晚上加班的人数少,大部分服务器处于睡眠状态,早上随着上班人数的不断增加,更多的服务器被不断唤醒。

​ 另外,还要考虑一定数目的备份服务器,允许坏 3 台服务器而不会影响业务。还要对服务器做集群划分,不同的部门使用不同的服务集群,从而轻松实现安全控制。

1)员工办公使用的资源有两类,一是员工独占一台虚拟机,二是多个员工共享一台虚拟机(远程桌面服务模式)。对于一个具体的员工来说,到底是独占虚拟机还是与他人共享,要根据公司的安全策略来定。

这样做的好处是:

① 公司的各种文档资料能得到很好的保全,包括产品图纸、源代码、合同文本、客户资料等。就像波音公司那样,产品设计工程师全部采用云终端来完成产品设计,图纸是复制不走的。极大地降低了 IT 的投入,包括硬件的采购成本、软件的采购和升级费用、日常运行维护成本和计算机工程师的人力成本。

② 极大地提高了电子化办公的可靠性和稳定性。传统的采用台式机办公普遍存在各种不稳定的因素,如病毒入侵、不正常关机导致计算机软件破坏、计算机硬件故障、软件安装配置不正常、数据丢失等;而采用私有办公云,这一切问题都不复存在了。

③ 安装和升级软件极其方便,只要在服务器上操作即可,不涉及众多的云终端。要知道,大公司会使用数百个各种各样的软件,如果这些软件都要安装在每个员工的计算机上,那么工作量可想而知。

④ 便于做安全控制,如局域网接入认证、用户上网行为控制、日志登记、员工桌面监控、外发邮件监控、病毒查杀和入侵检测等。

⑤ 实现移动办公,员工可以在公司内部的任何一台云终端上使用自己的账号登录云计算中心办公,员工与计算机不再一一绑定。尤其是跨地区的集团公司,移动办公更能体现其优势。通过配置 VPN 接入,轻松实现出差在外的员工登录公司内部的云计算中心。

⑥ IT 日常运维工作变得异常简单,只要维护好云计算中心即可,从而可以减少大量的计算机运维工程师。

2)在云端专门划分一个集群,在该集群上的虚拟机中运行公司的 ERP 系统、产品数据管理系统、网站系统、邮件系统,以及其他大型应用系统。利用虚拟机做高可靠性比物理机更容易,因为虚拟机能轻松实现热迁移。在运行能力富余的情况下,我公司还可以对外销售 SaaS 云服务,让其他中小型公司租用这些昂贵的软件系统。

通过这个情景案例,我们总结云计算的优劣如下。

1. 对于社会

1)降低全社会的IT能耗,减少排放,真正做到“绿色计算”。

2)提高全社会的IT设备使用率,并降低电子产品的数量,从而减少因设备淘汰而产生的电子产品垃圾,对于保护环境大有裨益。

3)信息技术产业进一步合理分工——由资金雄厚、技术过硬、专业人士众多的机构负责建设并管理云端,从而提高了整个社会信息技术处理环境的可靠性。换言之,也就降低了因天灾人祸导致的生命财产损失。

4)形成新的云计算产业。

5)有利于全社会共享数据信息,打破信息孤岛。尤其是涉及公民的身份信息、档案信息、信用信息、健康信息及教育工作信息等的全国性公共云平台,带来的社会效益更是巨大的。

2. 对于云计算消费者

1)降低了信息技术成本:前期投入和日常使用成本得到大幅度降低,同时也降低了因各种IT事故导致的损失。

2)提高了数据的安全性,具体介绍见后续章节。

3)提高了应用系统的可靠性,具体介绍见后续章节。

4)提高了用户体验:当今网络无处不在,云计算消费者可以随时随地采用任何云终端接入云端并使用云中的计算资源,真正实现移动办公。

5)大型昂贵软件平民化:诸如可靠性工程软件、ERP 系统、CRM 系统、商业智能系统等云化之后以 SaaS 模式出租,这些以前只有大型企业使用的软件系统,现在广大中小型企业和个人都能用得起。

6)从复杂的 IT 技术泥潭中摆脱出来,专注于自己的核心业务和市场。

7)能快速响应消费者对计算资源的弹性需求,从而能及时满足企业的业务变化。在传统 IT 系统下,一项新业务对 IT 资源的扩容要求,往往在数月或者一年后才能得到满足,这使得市场人员和管理层往往难以接受,因为市场是瞬息万变的。

8)有利于企业之间或者个人之间共享信息,打破信息孤岛。

9)个人、中小企业和机构也用得起高性能计算。

1)严重依赖网络。

​ 没有网络的地方,或者网络不稳定的地方,消费者可能根本无法使用云服务或用户体验很差。但这并不是云计算固有的缺陷,随着网络普及越来越广、网速越来越快,甚至是城市无线 Wi-Fi 全覆盖、国家无线 Wi-Fi 全覆盖的到来,将使网络不再是问题。

针对这个问题,现在有一些胖云终端产品,它会把一些常见的应用程序驻留在本地,同时缓存数据,当网络良好时,数据自动与云端同步。

2)数据可能泄密的环节增多。

​ 云端、灾备中心、离线备份介质、网络、云终端、账号和密码,这些都有可能成为信息的泄密点。但是云计算使得数据信息遭到非人为因素破坏的概率大大降低了,比如在传统IT系统中,存储设备损坏、机房火灾、地震、雷劈、洪水等都会破坏数据,而在云计算环境则没有这些隐患。总之,云计算消除了一些数据泄密和破坏点,但是又带来了一些新的不安全因素。

3)相对于传统的分散计算,云计算把计算资源集中在一起,因而风险也被集中在一起。

​ 云端成了单点故障,如果云端发生事故,则影响面将非常巨大。目前常见的应对措施是数据冗余存储、建立灾备中心、建立双活数据中心等。

4)用户对数据和技术的掌控灵活度下降。

​ 对于 IaaS 云服务,用户无法掌控基础设施层;对于 PaaS 云服务,用户无法掌控基础设施层和平台软件层;而对于 SaaS 云服务,用户失去了基础设施层、平台软件层和应用软件层的掌控。

​ 另外,数据存放在云端,如果数据量巨大,那么用户移动数据耗时又耗力,如果网速慢,则势必会严重影响数据的掌控灵活性。不过,对技术掌控降低反过来表示用户可以脱离繁杂的技术陷阱,从而专心关注企业的核心业务和市场,因此这也是优势。

​ 图一

​ 表一

​ 云计算中各个角色之间的交互示意图如图 2 所示,云服务消费者可以从云服务代理商或者云服务提供商那里租赁云服务产品,而云计算审计员必须能从云服务消费者、云服务提供商和云服务代理商那里获取信息,以便独立开展审计工作。

​ 云服务提供商是个人或者单位组织,他们负责搭建云端并对外提供云服务产品。支撑云服务的 IT 层可以由云服务提供商自己组建,也可以租赁其他人的云服务。比如,一个云服务提供商租赁其他人的虚拟机(IaaS 云服务),并在此虚拟机上部署 PaaS 云服务,然后再出租出去。

云服务提供商的五大任务包括服务部署、服务编排、云服务管理、安全保障和隐私保护,如图 1 所示。

服务编排是指把各种系统组件合理地整合在一起,以便向云服务消费者提供云服务产品。

图 2 所示是从参考模型中单独截取出来的云服务编排模型,全部的系统组件分为 3 种类型,分别对应云服务编排模型中的 3 个叠加层,从下至上依次是物理资源层、资源抽象与控制层、服务层。

​ 图 2 从参考模型中单独截取的云服务编排模型

​ SaaS 应用程序可以(但不是必须)搭建在 PaaS 组件上,PaaS 组件可以(但不是必须)搭建在 IaaS 组件上,这三者层叠在一起是组合方式的一种。

​ 另外,从图 2 中可以看出,PaaS 和 SaaS 存在直角的单腿直立部分,表明可以单独构建各自的底层架构,比如 SaaS 云服务直接部署在物理服务器上,而不层叠在 PaaS 和 IaaS 组件上。对于一个具体的云服务提供商而言,其可定义全部的(3 种)服务模式或者其中的一到两种。

中间层是资源抽象与控制层,包括两类系统组件:

​ 主要用于对物理计算资源进行虚拟化,虚拟化之后的资源就可以放入资源池中,以便将来供云服务消费者弹性租赁。抽象组件包括虚拟机管理平台(Hypervisor)、虚拟机软件(VM)、软件定义存储(SDS)、软件定义网络(SDN)等,其中虚拟机技术是最常见的资源抽象组件。无论如何,抽象组件必须能确保高效、安全和可靠地运用底层的物理资源。

主要负责资源分配、访问控制和监控资源使用等。总之,本层的主要功能是把物理资源池化并有效管理被池化后的资源。

底层是物理资源层,包含所有的物理计算资源——物理服务器(主要包含 CPU、内存计算资源)、网络设备(路由器、防火墙、交换机、网卡等)、存储设备(如硬盘、存储阵列),以及其他物理的计算设施;也包含基础设施资源,如加热器、空调、通风设备、供电设备等。

三层叠加在一起,上层依赖直接下层。资源抽象与控制层利用下层的物理资源,向上层暴露资源池,而顶部的服务层利用下层的资源池向云服务消费者暴露服务接口,而云服务消费者不能直接操纵底层的物理资源。

云服务管理是指云服务提供商必须履行的一套流程和任务,以便圆满地把云服务交付给消费者。这些流程和任务分为三大类:业务支持、交付与配置、可移植性与互操作性,具体如图 3 所示。

这是与客户有关的活动和服务,具体包括如下表所示。

​ 这是与资源有关的管理活动,具体包括如下表所示。

​ 为了便于用户进行数据移动、服务交互和系统迁移,云服务提供者应该提供一些有利机制(包括策略和工具),而不是故意设置障碍,以便黏住用户。

数据移动是指把数据复制到云端或从云端复制出来或者进行批量传输。

理想的服务交互能力是指用户能够通过统一的管理接口使用他们的横跨于多个云端的数据和服务。

​ 系统迁移是指将一台完全关闭的虚拟机从一个云服务提供商的云端迁移到另一个云服务提供商的云端,或者在不同云服务提供商的云端之间迁移应用、服务和相应的内容。但是要特别注意的是,不同的云服务模式(IaaS、PaaS、SaaS)在可移植性和互操作性方面的侧重点不同。

​ 例如,IaaS 模式侧重于迁移虚拟机并能在新的云端启动,因此,为了能迁移一台虚拟机镜像到另一个采用不同虚拟机技术的云端,必须移除云服务提供商加入到虚拟机镜像文件中的特有的扩展技术。如果这种扩展技术非常好且被广泛接受,那么云服务提供商应该公开这种技术细节,从而使得所有的 IaaS 云服务提供商都接受并把该技术融入自己的虚拟机镜像中。而 SaaS 侧重于数据可移植性方面,因此最好按照业界通行的标准进行数据抽取和备份,以便保证数据的可移植性。

​ 我们必须清晰地认识到安全性问题涉及云计算参考模型的各个方面,纵向上从最底层的基础设施到最顶层的应用,横向上包括全部的参与角色,如云服务提供商、云服务消费者、云服务代理商等。

基于云的系统仍然需要满足这些传统 IT 系统中的安全要求,如认证、授权、可用性、保密性、身份管理、完整性、审计、安全监控、事件响应及安全策略管理,对这些技术展开详细论述超出了本书的范围,下面着重讨论一下云计算特有的一些安全问题。

​ 云计算的 3 种服务模式 Iaas、PaaS 和 SaaS 为用户提供了不同类型的接入云端的接口,同时也不可避免地成为不怀好意者的攻击入口。因此,在设计和实施云计算的过程中,需要充分考虑这 3 种云服务模式的内部机制和各自侧重的安全性问题。

​ 例如,人们通常使用网页浏览器通过因特网访问云端的 SaaS 应用,那么在考察 SaaS 的安全性时,就需要重点关注网页浏览器的安全性。而 IaaS 消费者一般是远程登录并使用云端的虚拟机,那么在设计 IaaS 云服务时,就要重点关注虚拟机软件的隔离效果,因为运行在同一台物理机上的虚拟机相互之间的隔离效果越好就越安全。

​ 4 种部署模型也蕴含着安全问题,其中从租户的隔离程度来考察部署模型中的安全问题是一个不错的方法。

​ 由于私有云只供一个单位组织内部的员工使用,所以在租户隔离方面就没有公共云那么重要。公共云上的租户来自五湖四海,身份复杂且不可预测,所以公共云上的租户必须严格隔离开来。

​ 由于云服务提供商和云服务消费者对于云端的计算资源栈具有不同的控制范围(见图 4),与传统 IT 系统完全由一家单位组织控制不同,云计算系统要求云服务提供商和云服务消费者在设计、建设、部署和操作云系统时必须通力合作,双方共同努力才能构建一个安全的云计算环境。我们必须仔细分析每一项安全控制措施,再结合具体的云服务模式,确认其最佳的责任方(云服务提供者或云服务消费者)。

​ 比如对于 IaaS 云服务模式来说,具备初始系统权限的用户账户管理通常由 IaaS 云服务提供商负责,而部署在 IaaS 环境(如虚拟机)中的应用程序的账户管理则由云服务消费者负责。

​ 上一小节的“安全保障”涵盖了隐私保护的内容,但是在云计算时代,个人信息、操作行为和习惯都存储在云端或者在云端留下印迹,所以隐私保护的重要性是前所未有的,有必要单独拿出来讨论。

​ 隐私是指关于个人或者单位组织本身的信息,信息的主体不愿意公开而且法律没有规定必须公开的信息。隐私包括个人信息(PI)和个人身份信息(PII),PII 描述了个体的静态信息,如姓名、年龄、性别、住址、电话等,而PI描述了与个体关联的周边信息,如家庭、存款、社会关系、行动路线、驾照号码等。

​ 主体的身份不同,隐私的具体内容也不尽相同。比如,普通民众的个人财产是隐私,但是公务员的财产就不是隐私(法律规定必须公开);再比如,企业的财务报表是隐私,但是上市企业的财务报表就不是隐私。

​ 如果云服务提供商收集了消费者的身份信息或者操作行为和习惯模式,那么他们必须确保这些隐私信息能得到可靠保护,除消费者本人外,其他任何人都不能获取这些信息。对于全球性的或者跨国经营的云服务提供商来说,隐私保护的问题变得异常复杂,因为各国关于隐私保护的法律都不尽相同。

摘要在前几篇文章中,我们探讨了Python在云计算中的基础应用、自动化部署、容器编排、无服务器架构以及边缘计算的应用。本篇文章将进一步深入探讨如何将机器学习模型部署到边缘设备上,利用Python实现智能边缘计算应用。我们将通过具体案例展示如何结合云端训练和边缘推理的优势,构建高效且响应迅速的分布式智能系统。目录引言机器学习模型边缘部署的重要性主要技术挑战与解决方案使用Python进行模型训练与优化

在人工智能生成内容(AIGC,Artificial Intelligence Generated Content)领域,强化学习(RL,Reinforcement Learning)技术发挥着重要作用。强化学习是机器学习的一种方法,通过与环境的交互,智能体(agent)学会采取行动以最大化累积奖励。在AIGC中,强化学习能够用于生成艺术作品、音乐、文本内容等。本文将探讨强化学习的基本原理,并通过代

容器网络规范CNICNI,Container Network Interface标准,连接了两个组件:容器管理和网络插件。CNI的设计思想是容器runtime在创建容器的时候,提前创建好玩过协议栈空间,然后调用CNI插件为这个网络协议栈空格键配置网络,而后启动容器内的进程。CNI插件类型:Main插件,用来创建具体网络设备的二进制文件,比如网桥bridge,ipvlan,loopback,macv

主要了解数据在网络中是如何进行传输的,有哪些特殊的物理图标,如何架构虚拟网络,以及各网络数据传输须遵守什么协议等

云计算(cloud computing),分布式计算技术的一种,其最基本的概念,是透过网络将庞大的计算处理程序自动分拆成无数个较小的子程序,再交由多部服务器所组成的庞大系统经搜寻、计算分析之后将处理结果回传给用户。透过这项技术,网络服务提供者可以在数秒之内,达成处理数以千万计甚至亿计的信息,达到和“超级计算机”同样强大效能的网络服务。起源IT专家网的解释:&nb

在当今数字化时代,云计算技术已经成为许多企业的核心竞争力。作为云计算领域的领军企业,华为在云计算技术的研发和应用方面一直走在前沿。为了更好地培养云计算技术人才,华为推出了专门的云计算技术认证班,这为广大求职者提供了一个学习和发展的平台。云计算技术是一种基于互联网的计算方式,它通过网络来提供各种服务,包括存储、计算、网络等。在云计算技术应用华为认证班中,学生将学习到云计算的基本概念、原理和应用,

目前云计算技术日益成为程序员的必备技能。

随着信息技术的飞速发展,云计算作为一种新兴的技术架构,正逐渐渗透到各个行业领域。云计算技术架构的灵活性和可扩展性,使其成为了企业信息化建设的重要支撑。本文将详细解析云计算技术架构的组成部分,以及它们在实际应用中的作用和价值。一、基础设施层(IaaS)基础设施层是云计算技术架构的最底层,它提供了计算、存储、网络等基础设施服务。这一层的服务模式被称为基础设施即服务(IaaS),用户可以通过租

# 云计算技术 Docker 科普文章## 什么是 Docker?Docker 是一种开源的平台,允许开发者将应用及其依赖打包到一个可移植的容器中,以便在任何地方轻松地运行这些容器。这种轻量级的虚拟化技术使得应用程序可以在不同的开发环境中保持一致性,从而简化了软件的交付和部署过程。## Docker 的基本概念### 容器与镜像- **镜像**:Docker 镜像是一个只读的模

在上云过程中,通过使用云平台提供的从 IaaS 到 SaaS 全面覆盖的产品能力,可以逐

第一章弹性计算技术概述弹性计算技术定义弹性计算技术是一种基于云计算的技术,它旨在实现根据用户需求进行资源的自动调配和弹性扩展。本章将对弹性计算技术进行详细概述。在本文中,弹性计算技术的定义将涵盖以下方面:首先,它是一种基于云平台的资源管理和调度技术,通过动态分配和释放计算资源,以满足不同业务负载的需求。其次,它提供了灵活的资源扩展和收缩功能,可以根据业务需求自动调整计算资源的规模。此外,弹性计算技

云将彻底改变现有IT架构,不过可惜的是国内很多企业的CTO都显然还没意识到这点。

云计算与大数据、人工智能是当前最火爆的三大技术领域,近年来我国政府高度重视云计算产业发展,其产业规模增长迅速,应用领域也在不断的扩展,从政府应用到民生应用,从金融、交通、医疗、教育领域到人员和创新制造等全行业延伸拓展。云计算将在IT产业各个方面都有其用武之地,以下是云计算十个比较典型的应用场景!1. IDC云IDC云是在IDC原有数据中心的基础上,加入更多云的基因,比如系统虚拟化技术、自动化管理技

随着数字化时代的到来,企业对于数据的需求越来越大,而云计算技术的出现,为企业提供了更加高效、安全、便捷的数据存储和处理方式。云计算技术已经成为了未来企业发展的必备利器,下面我们来深入探讨一下。一、云计算技术的定义和特点云计算技术是一种基于互联网的计算方式,通过将数据存储在云端,实现数据的共享和处理。云计算技术的特点包括高效、安全、便捷、灵活等。二、云计算技术的应用场景云计算技术的应用场景非常广泛,

云计算是近年来比较火爆的行业之一,随着国家政策支持以及互联网的高速发展得到企业的广泛应用。很多人好奇云计算的应用领域有哪些?  其实云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问,进入可配置的计算资源共享池(资源包括网络、服务器、存储、应用软件、服务),这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互。云计算的应用领域有公

一、云计算概念云计算是分布式处理、并行处理和网格计算的发展,或者说是这些计算机科学概念的商业实现。云计算是一种资源交付和使用模式,指通过网络获得应用所需的资源(硬件、软件、平台)。云计算将计算从客户终端集中到“云端”,作为应用通过互联网提供给用户,计算通过分布式计算等技术由多台计算机共同完成。用户只关心应用的功能,而不关心应用的实现方式,应用的实现和维护由其提供商完成,用户根据自己的需要选择相应的

1、什么是云计算 云计算是一种商业模式,它是在高可靠性、高自动化(不自动化,那么对于如此大规模的机器来说,其管理那就更是累人不偿命的事啦)和高可用性的计算资源和设备(更专业一点的,叫计算中心)的支撑下,人们只要接入互联网,就能非常方便地访问各种基于云的应用和信息,并免去了安装、维护等烦琐操作(甚至包括可以自定制自己喜欢的模式、特色) 云计算是一种商业计

如何具备云计算开发技能?云计算架构好学吗?随着互联网时代的发展以及市场需求推动,云计算应用继云物联、云安全、云存储、云游戏之后得到进一步扩张。云手机、云电视已成为人们生活不可或缺的一部分,各大企业对于云计算人才的需求也进一步加大。很多人都想加入这个行列,下面就给大家分享一下云计算架构的相关知识。 随着企业的不断壮大以及数据的增多,云计算已无法支持如此复杂的企业环境,而云计算架构正是基于此而诞生

云计算技术总结大纲概念应用技术栈关键技术架构竞争力衡量维度开源软件云操作系统框架OpenStack虚拟化XenKVMSANNAS容器KubernetesMesosDocker大数据HadoopSpark 大纲概念,应用,技术栈,痛点,思想概念云计算就是这样一种模式,该模式允许用户通过无所不在的、便捷的、按需获得的网络介入到一个可动态配置的共享计算资源池(包括网络设备、服务器、存储、应用及业务),

7.云计算的10大障碍云计算被公众接受有三大技术障碍;被接受后,云计算的增长又面临五大技术障碍;最后两个障碍是政策和商业障碍。云计算提供商在长期探索过程中会逐渐克服这些障碍。7.1服务的可用性用户最大的担心是云计算是否有足够的可用性,2008年Amazon EC2、GAE和Gmail都出现过服务中断的事故,持续数小时。只使用一家公司的云计算服务,会遇到单点故障的问题。即使这家公司非常大,有多个不同

MPU6050六轴传感器测量物体姿态角一、姿态角(欧拉角)基本概念二、代码实现功能描述三、接线图五、完整代码六、代码运行结果七、需要注意的地方一、姿态角(欧拉角)基本概念物体在空间中的姿态可以用欧拉角来定义,欧拉角包含pitch(俯仰角)、yaw(偏航角)、roll(横滚角),如下图示意:二、代码实现功能描述Core采集MPU6050六轴传感器经过姿态解算后的欧拉角数据,并在电脑串口终端打印出pi

源代码+数据库+LW文档(1万字以上)+开题报告+答辩稿ppt+部署教程+代码讲解+代码时间修改工具技术实现研发语言:后端:Java 前端:vue框架:springboot数据库:mysql开发工具JDK版本:JDK1.8数据库:mysql 数据库工具:Navicat开发软件:idea主要角色及功能 ...

本科组仪器设备清单01数字示波器(100MHz,双通道)函数发生器(50MHz,双通道)任意波信号发生器(1MHz)频谱分析仪(1GHz)频率计(500MHz)功率分析仪数字毫伏表以太网交换机(通用 4~24端口百兆/千兆)网线通断测试仪单片机开发系统FPGA开发系统DSP开发系统嵌入式开发系统秒表量角器5 米卷尺关节角度测量尺主要元器件及器材清单02三脚架四旋翼飞行器(最大轴距不超过450mm)

一.Linux基础1.用户root用户一个特殊的管理帐户也被称为超级用户root已接近完整的系统控制对系统损害几乎有无限的能力除非必要,不要登录为 root普通( 非特权 )用户权限有限造成损害的能力比较有限2.终端(terminal)在Linux中有很多终端类型控制台终端: /dev/console

THE END
0.分供商是什么意思分供商的翻译音标读音用法例句爱词霸权威在线词典,为您提供分供商的中文意思,分供商的用法讲解,分供商的读音,分供商的同义词,分供商的反义词,分供商的例句等英语服务。jvzquC41o0odkkf0eqs0'N:'::+98.J6'DK&;K*G7'?6'A;
1.第115期金蝶云·星空11、请问条码属性、条码规则、条码主档、条码打印这些分别有什么作用呢 应该如何操作? 问题描述:初学者怎么操作 如果一个物料要生成二维码 通过扫描二维码能看到物料的信息 应该具体怎样的操作流程呢 ? 解决方案: 1、条码属性:条码属性可以任意扩展,通过条码属性进行信息标准化处理:将各业务单据及基础资料的字段信息,转jvzquC41xkv/mrsifgk/exr1ctzjeuj14;=98A9676643==766EqtxiwevRjpnNf?3
2.事务管理精要undo 顾名思义,就是没有做,没发生的意思。undo log 就是没有发生事情(原本事情是什么)的一些日志 我们刚刚已经说了,在准备更新一条语句的时候,该条语句已经被加载到 Buffer pool 中了,实际上这里还有这样的操作,就是在将该条语句加载到 Buffer Pool 中的时候同时会往 undo 日志文件中插入一条日志,也就是将 id=1 的这 jvzquC41dnuh0lxfp0tfv8|qtpeykjt1ctzjeuj1fgzbkux1:7836?=3
3.于东来总裁班分享(一):胖东来最大的优点是什么?做这个事,包括庞总,我们的心愿说白了就是无私的大爱,没有什么对金钱的追求。联商网是上市公司,账上700多万直接分掉。在这两年多的时间里,联商网团队我接触也不少,员工状态跟以前完全不同了,感受到了关怀、信任,更重要感受到了希望,看到了工作的美好,凝聚力更强了。 jvzq<84yyy4mkwpujqv/exr0ep5og€x142857:;5:54tj}rn
4.你拨打的用户正忙是什么意思你拨打的用户正忙是什么原因你拨打的用户正忙是用户正在进行其他电话通话、用户正在使用数据通道和其他通讯故障或限制的意思。其解决方法:1、等待一段时间后重试,可以稍后重新拨打号码或尝试不同的通讯方式,如短信、邮件等;2、尝试其他通讯方式,选择适当的替代方式可以确保我们与目标用户建立有效的通讯链接;3、与系统或服务提供商联系,可以联系系统jvzquC41yy}/rqu0ep5gcz47;2::87mvon
5.供应链金融的确权,“确”的是什么“权”?新浪财经由核心企业出具的《付款确认书》中一般包含确认应收账款债权具备合法、真实有效的基础交易关系,供应商已完全履行合同义务,核心企业同意债务加入,确认应收账款转让事实并确认付款,放弃抗辩权等条款。 确认文件 融资性债权/ 保理债权 融资性债权/保理债权一般是指保理公司受让供应商(作为卖方)对于项目公司(作为买方)的应收jvzq<84hkpgoen3ukpg/exr0ep5xo872463176681fud/rscxk~fcB9;2:810|mvon
6.经济学分析方法(精选5篇)现实法学教育对法学人才的培养上是分层次的,既有应用型的、也有研究型的。研究型即学术型,以培养法律教学和法学研究人才为目标;应用型即以培养实务型人才为目标。近年来随着法学教育进入大众化阶段,并且法学教育已建立了完整的学术型硕士、博士、博士后研究生培养梯队,因此本科、专科法学教育应当将培养应用型人才作为办学jvzquC41yy}/3vnujw4dqv4jcq}fp86;63<30qyon
7.《海外仓OTWB项目实战》之第1篇:海外仓业务和系统介绍第三方海外仓,由第三方服务商搭建的仓库,例如谷仓海外仓,万邑通海外仓,4PX海外仓等; 这三类海外仓分别覆盖不同的业务场景,供不同的电商卖家选择使用,互相补充,也有很多业务联动。 例如电商卖家自建的海外仓往往只是会集中在某些国家或者地区,不会覆盖所有的地区,所以在没有覆盖自建海外仓的地方还是会选择平台官方仓和jvzquC41yy}/uqfpi{kykwjk0ipo8ftvkimg8=427;767mvon
8.社会责任管理体系范文员工培训程序;(4)对内对外沟通程序;(5)文件记录管理程序;(6)应急反应与准备程序;(7)运行监督程序;(8)不符合事项、补救及纠正行动管理程序;(9)内部审核程序;(10)童工救济行动程序;(11)童工和未成年工教育程序;(12)安全卫生管理体系程序;(13)危害识别、风险评价与风险控制程序;(14)供应商、分包商和分供商jvzquC41yy}/i€~qq0ipo8mcqyko1:=645:/j}rn
9.新相微:新相微首次公开发行股票并在科创板上市招股意向书晶圆厂等供应商开工率持续处于低位,导致晶圆及各类芯片产品出现供应紧张。在部 分晶圆等产能供应紧缺的情况下,公司采购晶圆等原材料的价格亦出现一定幅度的上 涨。如未来上游产能供应持续趋紧,将可能导致公司采购成本进一步上升,对公司晶 圆原材料及芯片产品备货、生产等造成不利影响。   本次募集资金投资项目包括jvzquC41uvudm7xvqeqtvjw0eqs0pxykeg5TP;5452;2695222<:57xjvor
10.面试题整理45个CSS面试题本篇文章,将为大家分享45个和CSS相关的面试题及其解析,难度分为:初级、中级、高级三个部分,由易到难,循序渐进。 一、初级CSS面试题 Q1、CSS全称是什么? CSS英文全称:Cascading Style Sheets,也就是层叠样式表。是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算jvzquC41dnuh0lxfp0tfv8ugpi~jcw5222=0c{ykenk0fnyckny03:;938838
11.采购跟单试用期转正总结(精选12篇)其中款式问题,需要设计师在场,根据客人的改良意见,迅速准确得做出效果图纸,打印出来并给客人签名确认。外销员组织整理资料,谈判完毕后制作出外销合同供客人确认签名,生成订单。所有的谈判资料,按照客人分卷宗,每个卷宗按照时间先后顺序将相关资料归档整理好,确保资料完整,清楚。jvzq<84yyy4vpsx0eqs0hjsygpqv1<88589/j}rn