智造讲堂:云计算技术

文摘   2024-08-26 08:19   北京  

引自:《工业互联网平台》(作者:胡晓娅、白坤、尹周平)

该书已出版,详细信息请见文末~



云计算是并行计算、分布式计算和网格计算的进一步发展,指的是通过网络“云”将巨大的数据计算处理程序分解成无数个小程序,然后通过由多台服务器组成的系统处理和分析这些小程序,以得到结果并将其返回给用户。现阶段的云计算经过不断进步,已经不单单是一种分布式计算,而是分布式计算、并行计算、负载均衡、网络存储、热备份冗杂和虚拟化等计算机技术混合演进并跃升的结果。


云计算和工业互联网平台层紧密相关,它主要提供两部分支持,一是通过资源虚拟化方式为工业互联网平台提供IaaS云基础设施,包括服务器、存储、网络等,是工业互联网平台的基础。二是提供通用PaaS基础服务,提供工业数据管理和分析服务、工业微服务组件库和应用开发环境,是工业互联网平台的核心。如今云计算越来越普及,在软硬件技术日趋成熟以及极佳的商业模式双重因素的驱动下,主流工业互联网平台逐渐围绕云计算构建并支持多种云部署。


「 1. 云计算服务模式 


云计算有3种基本服务模式,分别是基础设施即服务(infrastructure as a service,IaaS)、平台即服务(platform as a service,PaaS)、软件即服务(software as a service,SaaS),如图1所示。每种云计算服务模式,都通过一定程度的资源抽象,降低了用户构建和部署应用的复杂性。

 

1 云服务模型


IaaS交付模型是一种自我包含的IT环境,由以基础设施为中心的IT资源组成,可以通过基于云服务的接口和工具访问和管理这些资源。这个环境可以包括硬件、网络、连通性、操作系统以及其他一些基础IT资源。与传统的管或外环境相比在IaaS中IT资源通常是虚拟化的并打包成包,这样一来,在运行时扩展和定制基础设施就变得简单了。IaaS环境一般要允许云用户对其资源配置和使用进行更高层次的控制。IaaS提供的IT资源通常是未配置好的,管理的责任直接落在云用户身上。因此,对创建的基于云的环境需要有更高控制权的用户会使用这种模型。


PaaS对资源的抽象层次更进一步,它提供用户应用程序的运行环境,能部署消费者使用供应商支持的编程语言和工具来创建或获取的应用。PaaS自身负责资源的动态扩展和容错管理,用户不必管理或控制基础云架构,包括网络、服务器、操作系统或存储。但与此同时,用户的自主权降低,必须使用特定的编程环境并遵照特定的编程模型。用户可以控制已部署的应用程序以及可能的应用托管环境配置。这些服务包括会话管理、设备集成、沙箱、仪器和测试、内容管理、知识管理、通用描述、发现和集成(UDDI)。


SaaS的针对性更强,它将某些特定应用软件功能封装成服务。大量客户使用诸如网络浏览器之类的瘦客户接口(例如基于浏览器的电子邮件)来方问这些应用提供的服务。这些服务的用户不用管理或控制包括网络、服务器、操作系统、存储甚至某些个人应用在内的基础云架构,当然部分用户特定的应用配置除外。


随着云计算的深化发展,不同云计算解决方案之间相互渗透融合,同一种产品往往横跨两种以上类型。并且出现了许多这3种基本云交付模型的变种,每种都是由不同的IT资源组合构成的,例如存储即服务(storage as a service)、 数据库即服务(database as a service)、安全即服务(security as a service)等。


「 2. 云部署模型 


云部署模型表示的是某种特定的云环境类型,主要以所有权、大小和访问方式来区别常见的云部署模型有公有云、社区云、私有云和混合云,见表1。


1 云部署模型


公有云是由第三方云提供者拥有的可公共访问的云环境,面向公众和大型行业组织开放。公有云的云服务提供商可以提供从应用程序、软件运行环境到物理基础设施等各方面的IT资源的安装、管理、部署和维护。这些基础设施都存放在云计算厂商处,用户通过按需付费方式使用。亚马逊AWS、微软Azure、阿里云、华为云和腾讯云等,都属于公有云厂商。


虽然公有云部署模型用户提供了海量资源,但是公有云部署模式存在一些风险。例如,用户不知道与其共享使用资源的还有哪些用户,以及具体的资源底层如何实现,也无法控制物理基础设施。因此,云服务提供商必须保证所提供资源的安全性和可靠性等非功能性需求,这些非功能性服务的质量同时决定了云服务提供商的服务级别。


相较而言,私有云可以解决公有云面临的部分问题,例如面对数据隐私和监管问题,用户能够在服务中断时主动采取补救措施。另外,私有云的用户完全拥有整个云中心设施,可以控制哪些程序在哪里运行,并且可以决定允许哪些用户使用云服务。因此,私有云的使用会改变组织和信任边界的定义和应用。


私有云环境的实际管理可以由内部或者外部的人员来实施,由此可分为本地私有云和托管私有云。由企业自行搭建、运营、提供给企业内部的不同业务部门使用的私有云称为本地私有云。从业务视角看,本地私有云与传统数据中心没有区别,只是在构建时采用了云计算的栈技术。托管私有云的基础设施由云计算厂商提供,这些资源是用户独占的。因此,私有云虽然降低了在数据所有权和隐私方面的风险,但是它也失去了云计算最大的特点——弹性。


为了避免公有云和私有云各自局限性,社区云和混合云应运而生。社区云与公有云类似,它的访问被限制为特定的云用户社区,一般隶属于某个企业集团、机构联盟或行业协会。社区云可以是社区成员或提供具有访问限制的公有云的第三方提供者共同拥有的。社区的云用户成员通常会共同承担定义和发展社区云的责任,也有可能由其中一家机构进行运维。


混合云是由两个或者更多不同云部署模型组成的云环境。例如,云用户可能会选择把处理敏感数据的云服务部署到私有云上,而将非核心业务部署于公有云。如果核心业务存在周期性的业务高峰,那么可以进一步将核心业务的功能拆分成更细颗粒度,将其中的非核心功能剥离出来,部署在公有云上,以减轻私有云的压力。但是云环境中潜在的差异以及私有云提供组织和公有云提供者之间在管理责任上是分离的,混合部署架构的创建和维护可能会很复杂和具有挑战性。


除了上文的云类型外,还存在其他云类型,例如消费者云、企业云以及行业云等。消费者云的受众为普通大众或者个人,因此也称为大众云,此种云针对的是个人的存储和文档管理需求;企业云则面向企业,针对的是企业的全面IT服务。行业云是针对云的用途来说的,如果云平台是针对某个行业定制的,则称为行业云。这些云的分类在本质上仍是上述4种云类型的分割或组合。例如,行业云可以在公有云上构建,也可以是私有云,还可能是社区云。


「 3. 微服务技术 


“微”从狭义上来讲就是体积小、架构小;所谓“服务”就是一个或者一组相对较小且独立的功能单元,是用户可以感知到的最小功能集。微服务架构通常被认为是面向服务架构(SOA)下的最终产物,目前已成为应用程序云端化的一种流行的架构模式。一般来说,面向服务架构将耦合的系统划分为多个松耦合的服务,并引入服务这个重要概念,从而形成一种粗粒度、松耦合的服务架构体系。进一步地,微服务架构强调系统按业务边界进行更细粒度的拆分,将复杂应用划分成小颗粒度、轻量级的自治服务,并围绕微服务开展服务的开发和服务的治理。与传统面向服务体系架构的实施方案相比,微服务体系架构除了提供服务注册与发现、服务组合等基本组件外,还加入了负载均衡、服务网关和容错机制等。


1)服务发现与注册


服务启动时会将自身服务信息(服务所在主机IP、服务的端口号Port、暴露服务协议等)提交到注册中心,该过程称为服务注册。服务发现即通过注册中心,获取到注册到其中的服务实例的信息,通过这些信息去请求它们提供的服务。运行过程中,服务实例可能随时被销毁、克隆或者重新定位,而服务发现机制有利于服务之间感知彼此的存在。服务注册中心是服务发现的核心,必须具有高可用性和实时更新功能,否则会导致新服务无法上线或服务无法调用。


2)负载均衡


为了保证服务具有高度可用性,微服务常部署多个服务实例来提供业务支持。当请求面对同一服务的多个实例时,就需要根据负载均衡算法自动地选择将要调用的实例。在微服务架构中,负载均衡可以分为客户端负载均衡与服务端负载均衡,服务端的软件模块维护一个可用的服务端清单,客户端节点也需维护本身所访问的服务端清单,而这份服务端清单由服务注册中心提供。可以根据不同的业务场景选择不同的负载均衡策略,例如,轮询策略、随机策略、响应时间权重策略、最少并发数策略、重试策略、可用性敏感策略以及区域性敏感策略。


3)服务网关


服务网关也称为API网关,作为微服务架构中的重要组件,其关键思想是将轻量级网关作为所有客户端的主要入口点,并在网关级别实现常见的非功能需求。服务网关的基本功能有服务路由、安全认证、流量控制、日志监控和熔断保护等功能。目前,Netflix公司开发的Nefix Zuul是较通用的服务网关组件,其主要作用是协调客户端与微服务的中间层,并提供权限验证、压力测试、负载分配、审查监控等较为全面的服务网关功能。


4)服务容错


在微服务体系结构中调用集群服务时,若单个微服务调用异常,产生如连接超时、请求失败、流量突增或负载过高等问题,需要进行服务容错的处理,防止服务瘫痪。若服务产生超时异常,可采用超时重试机制,通过设置服务请求超时响应时间或者服务的响应时间和次数,进而决定是否采用超时重试机制。除此之外,还有服务降级、服务限流、服务隔离和服务熔断机制。服务熔断会记录和监测服务执行情况,当服务出问题时,切断该服务与系统的联系,牺牲局部,保全全局;服务降级是在服务不可用时(如熔断后),提供一个低级服务返回信息;服务隔离则是使服务之间相互隔离,防止出现雪崩效应(服务多级调用时,一个服务拥堵,从而导致多级服务都拥堵);服务限流是以限制服务的最大访问量或者访问速率的方式,对服务进行容错处理,通过前3种手段,即可达到服务的限流。


「 4. 云边协同 


边缘计算将网络、计算、存储、应用、智能等五类资源汇聚到网络边缘侧,在靠近物或数据源头的网络边缘侧,就近提供边缘智能服务,是连接虚拟空间和物理空间的纽带,被视为工业互联网的关键基石之一。边缘计算的提出主要为了解决集中式计算模式在实时性、带宽、能耗、隐私安全和数据保护等方面存在的不足。边缘计算与云计算相结合,将云端服务扩展到边缘端,即边云协同。目前,行业对于云边协同仍处于探索阶段,已陆续取得一些阶段性的成果,但还未形成行业共识和标准。


在工业互联网领域,边缘计算主要解决网络孤岛、数据孤岛和业务孤岛问题,并支撑柔性制造。以智能化生产、个性化定制、网络化协同和服务化延伸为代表的典型工业互联网应用对边缘计算具有明显的需求。同时,工业领域也为边缘计算的落地提供了良好的产业环境和基础。边缘计算对工业互联网的价值体现主要有以下几点:


(1)提供完善的连接配置和管理能力;


(2)提供数据汇聚及处理决策能力;


(3)提供边缘侧的建模工具及智能工具;


(4)实现工业软件开发的软硬件解耦;


(5)提供生产效率优化能力;


(6)提供信息数据防护能力;


(7)为数字孪生系统提供支撑。


图2所示为边缘计算参考架构。整个架构划分为现场层、边缘层和云计算层。边缘节点处于中间位置,起到承上启下的联接作用,向下通过多种协议支持各种设备接入,并提供边缘数据处理、子设备管理功能以及运行边缘应用。向上接受云端对边缘节点的集中管理,即边缘节点注册、边缘节点应用软件部署以及 对部署的相关服务的支撑。同时,云端可以通过边缘节点实现对终端设备的管理。

 

2 边缘计算参考架构


边缘层包括边缘管理器和边缘节点两个主要部分。边缘管理器是对边缘节点进行统一的管理的一套软件。边缘节点管理的基本流程是注册及纳管边缘节点、开发应用并制作镜像、部署应用。在边缘侧可以采用容器技术(例如Docker)配合云端实现纳管。边缘节点是承载边缘计算业务的硬件实体。边缘计算节点主要包括边缘网关、边缘控制器、边缘云和边缘传感器等。


云边协同是边缘计算核心发展方向之一,边缘计算向云反馈信息,侧重实时、短周期数据的分析,支撑本地业务的实时智能化处理与执行。云计算向边缘发布指令,聚焦非实时、长周期数据的大数据分析,在周期性维护、业务决策支持等领域优势明显。云边协同涉及IaaS、PaaS、SaaS各层面的全面协同。在IaaS层,边缘与云端可实现对网络、虚拟化资源、安全等的资源协同,在PaaS层,边缘与云端可实现数据协同、智能协同、应用管理协同、业务管理协同,在SaaS层,边缘与云端可实现服务协同。以数据协调为例,在处理一些通用数据时,可由云端创建数据清洗规则和模板,并下发到边缘节点,例如数据过滤、数据去重、数据聚合。而边缘节点提供计算、存储、网络等基础设施资源,接收并执行云端的数据处理策略,在本地实现数据处理。




版权归原作者所有

编辑:刘杨

编审:辛召


——————————————————————

购买链接

点击我购买 



相关阅读推荐(点击文章标题跳转)↓

1. 2021清华大学出版社智能制造图书推荐:新年智造书单

2. 清华大学出版社2022年上半年智能制造图书推荐:最新智造书单出炉
3.一篇文章带你了解智能制造课程怎么开
4.清华大学出版社智能制造知识服务平台试用邀请函
5.“智能制造系列丛书及知识服务平台”发布仪式顺利举办
6.国家出版基金项目暨“十三五”国家重点图书出版规划项目
——“智能制造系列丛书及知识库”圆满结项
7.新书推荐丨“图像图形智能处理理论与技术前沿”系列丛书《场景建模与机器人感知》正式出版
8.新书推荐丨“图像图形智能处理理论与技术前沿”系列丛书之《刑侦红外图像免疫智能处理理论与技术》正式出版


智造苑
欢迎加入,秉承“先进制造、制造强国”的理念,为大家提供专业的知识服务!
 最新文章