CN117501246A - 用于端到端编排中的自主监测的系统和方法 - Google Patents

用于端到端编排中的自主监测的系统和方法 Download PDF

Info

Publication number
CN117501246A
CN117501246A CN202180099618.6A CN202180099618A CN117501246A CN 117501246 A CN117501246 A CN 117501246A CN 202180099618 A CN202180099618 A CN 202180099618A CN 117501246 A CN117501246 A CN 117501246A
Authority
CN
China
Prior art keywords
monitors
tasks
slo
orchestration system
orchestration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202180099618.6A
Other languages
English (en)
Inventor
J·J·布朗尼
F·圭姆伯纳特
K·A·杜什
A·霍本
T·墨兹
S·M·巴莱
P·佩雷奇
D·克雷明斯
C·麦克纳马拉
T·弗雷尔
E·C·柯林斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN117501246A publication Critical patent/CN117501246A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
    • G06F9/3875Pipelining a single stage, e.g. superpipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5009Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • H04L41/5025Ensuring fulfilment of SLA by proactively reacting to service quality change, e.g. by reconfiguration after service quality degradation or upgrade
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5054Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/72Admission control; Resource allocation using reservation actions during connection setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/821Prioritising resource allocation or reservation requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/822Collecting or measuring resource availability data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/83Admission control; Resource allocation based on usage prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/875Monitoring of systems including the internet
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/503Resource availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2135Metering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Business, Economics & Management (AREA)
  • Environmental & Geological Engineering (AREA)
  • Quality & Reliability (AREA)
  • Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Finance (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Accounting & Taxation (AREA)
  • Artificial Intelligence (AREA)
  • Development Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Databases & Information Systems (AREA)
  • Computer And Data Communications (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Multi Processors (AREA)

Abstract

本文描述用于自主监测意图驱动的端到端(E2E)编排的各种系统和方法。编排系统被配置成用于:在编排系统处接收基于意图的服务级别目标(SLO)用于多个任务的执行;生成将SLO与多个任务的执行相关的共同上下文;选择多个监测器来监测多个任务的执行,多个监测器用于记录多个关键性能指标;生成多个任务的域上下文;利用由域上下文相关的多个监测器和多个关键性能指标来配置分析系统;部署多个监测器来收集遥测;使用来自多个监测器的遥测监测多个任务的执行;以及基于遥测执行响应动作。

Description

用于端到端编排中的自主监测的系统和方法
优先权要求
本申请要求2021年11月16提交的美国临时专利申请第63/280,001号的权益,该临时申请在此通过引用整体结合于此。
技术领域
本文描述的实施例通常涉及网络监测和调整,并且具体涉及用于自主监测意图驱动的端到端(end-to-end,E2E)编排的系统和方法。
背景技术
在一般层面,边缘计算是指计算和存储资源向更靠近于端点设备(例如,消费方计算设备、用户装备等)的转变,以优化总拥有成本,减少应用等待时间,改善服务能力,并且改善对安全性或数据私有性要求的顺应性。在一些场景中,边缘计算可提供类云分布式服务,该类云分布式服务为应用提供在许多类型的存储和计算资源之间的编排和管理。结果是,边缘计算的一些实现方式被称为“边缘云”或“雾”,因为先前仅在大型远程数据中心中可用的强大的计算资源被移动到更靠近于端点并使得其对于由处于网络的“边缘”处的消费方使用而言是可用的。
已经开发出采用移动网络设置的用于与多接入边缘计算(multi-access edgecomputing,MEC)方式集成的边缘计算用例,也被称为“移动边缘计算”。MEC方式被设计成允许应用开发人员和内容提供方访问网络的边缘处采用动态移动网络设置的计算能力和信息技术(information technology,IT)服务环境。欧洲电信标准协会(EuropeanTelecommunications Standards Institute,ETSI)行业规范小组(industryspecification group,ISG)已开发了有限的标准,以定义用于MEC系统、平台、主机、服务和应用的操作的通用接口。
边缘计算、MEC以及相关技术试图提供相比于传统云网络服务和广域网连接中所提供的减少的等待时间、增加的响应性、以及更多可用的计算能力。然而,将移动性和动态启动的服务集成到某种移动使用和设备处理用例导致编排、功能协调、以及资源管理的限制和对编排、功能协调、以及资源管理的担忧,尤其在其中涉及许多参与方(设备、主机、租户、服务提供方、操作者)的复杂移动性设置中。以类似方式,物联网(Internet of Things,IoT)网络和设备被设计成用于从各种端点提供分布式计算布置。IoT设备是可在网络上通信的实体对象或虚拟化对象,并且可以包括可用于在现实世界环境中收集数据或执行动作的传感器、致动器以及其他输入/输出组件。例如,IoT设备可包括嵌入或附接到日常事物(诸如建筑物、交通工具、包裹等)的低功率端点设备,以提供对这些事物的附加级别的人工感官知觉。最近,IoT设备已变得越来越流行,因此使用这些设备的应用已经激增。
各种边缘、雾、MEC、以及IoT网络、设备、以及服务的部署已经引入了许多高级用例和场景,这些用例和场景在网络边缘处并朝向网络边缘处发生。然而,尤其是随着更多类型的计算系统和配置被部署,这些高级用例也引入了与编排、安全性、处理和网络资源、服务可用性和效率、确保服务质量等等许多其他问题有关的多个相对应的技术挑战。
在应用的执行可分布在数据中心、云、雾、边缘或其他设备上的编排环境中,监测应用的流程的执行对于优化节点之间的资源编排至关重要。当前的监测机制通常导致大量可能与部署的应用无关的数据。结果是不必要的存储和传输开销。此外,通常需要手动配置来调整数据监测收集器,以提供相关信息并减少收集的数据量。这阻碍了高效的扩展。此外,现有机制不将监测度量映射到特定的SLA。
附图说明
在附图中(这些附图不一定是按比例绘制的),相同的数字可描述不同视图中的类似组件。具有不同的字母后缀的相同的数字可表示类似组件的不同实例。在所附附图的图中通过示例的方式而非限制性地图示出一些实施例,其中:
图1图示出根据实施例的针对边缘计算的边缘云配置的概览;
图2图示出根据实施例的端点、边缘云和云计算环境之间的操作层;
图3图示出根据实施例的用于边缘计算系统中的联网和服务的示例方法;
图4图示出根据实施例的在多个边缘节点和多个租户之间操作的边缘计算系统中的虚拟边缘配置的部署;
图5图示出根据实施例的在边缘计算系统中部署容器的各种计算布置;
图6A提供根据实施例的用于边缘计算系统中的计算节点处所部署的计算的示例组件的概览;
图6B提供根据实施例的边缘计算系统中的计算设备内的示例组件的进一步的概览;
图7图示出根据实施例的用于向一个或多个设备分发软件(诸如图6B的示例计算机可读指令)的示例软件分发平台;
图8是图示根据实施例的无服务器数据中心的框图;
图9是图示根据实施例的具有多个硬件系统的操作环境的框图;
图10是图示根据实施例的编排控制平面的框图;
图11是图示根据实施例的编排系统中的数据和控制流的框图;
图12是图示根据实施例的用于实现基于意图的编排的方法的流程图;
图13是图示根据实施例的用于测量服务级别目标(service level objective,SLO)的成功率的数据和控制流的框图;
图14是图示根据实施例的用于将监测代理注入到编排环境中的数据和控制流的框图;
图15是图示根据实施例的用于处置编排环境中的补救的数据和控制流的框图;
图16是图示根据实施例的用于防止补救对基于意图的策略产生负面影响的数据和控制流的框图;以及
图17是图示根据实施例的用于注入自动生成的SLO监测器并实现补救的方法的流程图。
具体实施方式
本文描述的系统和方法提供自主监测意图驱动的端到端(E2E)编排。当前的编排解决方案使用一种非常命令式方式来实现服务质量(quality of service,QoS)管理。QoS管理主要围绕请求正确数量的资源(例如,数个虚拟中央处理单元(virtual centralprocessing unit,vCPU))或硬件特征以支持云和边缘处的工作负载来构建。通过该方式执行编排具有若干问题。它创建了不需要的供应商锁定,因为一个供应商指定的特定特征集可能无法由另一个供应商提供的装备提供。此外,经验表明,不正确的信息在QoS请求中被宣称,因此导致次优性能。最后,这些宣称具有不被包括在QoS管理方案中的上下文。例如,应用运行的平台类型(例如,Xeon型核心相比于基于原子的核心处理器)可影响提供满足某些QoS请求的决策。
此外,随着工作负载从单片风格转向微服务风格,客户更难自己为工作负载选择正确的资源分配。这可导致客户过度提供资源,从而导致更高的成本。
重要的是,随着硬件平台变得更加异构(例如,使用多个XPU而不是单个CPU),用户应该被抽象于需要在编排请求中定义多种上下文细节,而是替代地能够专注于它想要的以实现起作用的服务的某个目标集。意图驱动的模型为用户提供了这种抽象,为服务所有者带来了良好的性能,并为资源所有者带来了良好的投资回报。因此,需要的是一种在系统集及其资源上映射意图(定义为服务级别目标)以实现所需的服务质量级别的方法。
服务级别协议(service level agreement,SLA)是服务提供商与客户之间的协议。SLA是第三方之间概述服务目标或其他业务目标的合约。SLA可概述对未能满足目标的各方的惩罚。例如,当服务在90天内超过某一阈值百分比不可用时,可强制执行部分费用退款。
服务级别目标(service level objective,SLO)为各种系统能力提供精确的数字目标。典型的SLO面向服务可用性或正常运行时间、服务等待时间、服务带宽提供等。SLO通常以百分比表示,诸如需要“30天内99.9%的正常运行时间”或“接收的至少95%请求的响应时间少于100毫秒”。
关键性能指标(key performance indicator,KPI)是特定目标的性能随时间的可量化测量。收集KPI度量来衡量SLO策略。示例KPI包括但不限于服务错误的数量、停机时间、缓存未命中、每秒帧(frames per second,FPS)、等待时间、每周期指令(instructions percycle,IPC)、安全故障、失败的登录等。KPI可能是衍生值(例如,移动30秒窗口的平均等待时间)。KPI也可以基于比较(例如,与历史平均值不同的百分比)。
服务质量目标可以捕获为统计和确定性规范,这些规范形成分层、自上而下的结构,但不约束于树或DAG模式。例如,元语言可用于表达关键性能指标(KPI)以及如何将它们组合以评估整体服务质量(QoS)或服务级别目标(SLO)。关于KPI的各种范围、比较、阈值、约束等可以使用元语言表示。大多数现实世界软件解决方案必须满足对性能、规模、准确性和可用性的许多复杂需求,并且这些需求不一定在所有时间或所有情况下都固定。正如采用C或Python等语言的程序允许程序员高度灵活地表达要计算的内容一样,也可以使用元语言来表达资源调度者需要满足的动态需求。用此类元语言编写的元程序可引入变量,例如,这些变量反映对程序、运行时、操作系统、基础设施服务、联网设备等的行为进行的各种校准。然后,这些变量被编织成元程序的更高级别的变量和结果,进而驱动来自元程序的校正、反应、警告和其他动作。结构化被分层使得元程序被设计用于对细节的抽象和减少,以及用于收敛于更高级别的指定目标。
提供了一种开放的体系结构,使得策略、启发式等的分层不仅仅局限于逻辑规则,而是允许插入数据编程智能(诸如神经网络、支持向量机(support vector machine,SVM)、决策树等)的能力。总体目标是将部分计算重定向到此类元程序,并且避免将作为应用的结构的一部分的计算与被设计为在应用的执行期间满足服务质量目标的计算进行严格划分。因此,像Kubernetes这样的控制/管理平面及其运行的容器化应用之间的普通区别模糊不清,并且有关意图和对该意图的执行的信息被允许在不同深度层双向流动。因此,可以在服务目标与服务质量目标的流程之间共同设计自动校正和自动指示功能。好处在于,软件开始实现与在其中软件被激活的环境的自适应或共适应。
试图最大化服务级别协议(SLA)满足的统计准入控制策略是可用的,并且与抖动敏感的网络系统有关。然而,随着抽象向上移动,并且实现无服务器系统或高度虚拟化的调度,以及通过按需创建的容器及时分配资源,调度资源的复杂性继续增加。非常大的数据中心可提供大量能力来执行反应负载平衡,并且可以将准入拒绝推迟到几乎最极端的需求爆发,但即使在统计策略下,较小且弹性较小的基础设施提供商也必须做出艰难的决定,因为当截止值是异常尾等待时间。极其难以满足可导致一系列等待时间推出的大量需求爆发。作为替代方案,本文描述的系统和方法实现了嵌套且渐进的并且因此是适应爆发的SLA。
假设在速率有限的服务器上有单一队列的令牌桶模型:最新来者的统计预测的平均响应时间与新来者看到的队列长度成比例。如果该预测的响应时间违反尾等待时间约束,朴素策略是拒绝新来者;一个稍微不那么朴素的策略是取决于队列长度和已经发生的违反的数量而概率地拒绝新来者。现在假设一种概况,基线单队列、单速率服务器被拆分为两级策略,其中最新来者被安排在保证服务速率较低但允许更宽松的尾等待时间的第二队列中。因此,例如,如果第一队列的P99等待时间为10ms,则第二队列可具有P95等待时间为10ms和P99等待时间为20ms的组合SLO。由于极端爆发很少见,用于第二队列的部分容量不必高,因为它的平均队列长度很小。在数据中心,向第二队列的移动有效地将边际请求(可能违反严格等待时间边界的请求)重新分配到具有相应地更宽松的SLO的、使用较少但资源较少的溢出集群。此方案可被一般化使得随着第二队列响应时间接近饱和,具有更自由的SLO的第三队列吸收溢出。通过该方式,可以在SLA中制作适应爆发的复合嵌套SLO。提供商可以协商类似的渐进成本模型,在该模型中,不必提供大量峰值容量以满足非弹性SLA的节省将被传递回给接受嵌套SLA的客户。
与层次体系服务级别协议不同,这里描述的系统和方法引入嵌套且渐进的SLA。SLA的嵌套子条款可以与其他子条款相结合被评估来评估整体SLA,而不是依赖经典阈值,也不是硬设置“单一”条款规则来检查。这允许更复杂的规则。此外,对子条款的“解析”允许每个条款的结果创建对未使用资源的共享。该方法允许SLA规则具有更大的灵活性,并更好地利用集群资源。灵活性可以作为“意图”而不是资源规范引入,然后其被映射到嵌套/渐进的SLA规则,然后进行监测和执行。
在生产部署中,一种常见的模式是在环境的一部分上部署应用的新实例,并在向更广泛的人群推广之前使用用户群的小子集进行测试(即,Canary推出)。确认SLA映射到较低和较低级别的服务级别目标需要迭代方法(出于优化和补救目的),该SLA分解的新工作流程还包括以有限的端到端方式或作为E2E解决方案的子部分进行部分部署的可能性,以确定对SLA遵守的影响。
总之,本文描述的系统和方法提供了实现编排的新方法,从当前模型转向目标驱动的方法,其中客户只表达意图(例如,等待时间、吞吐量和可靠性属性),而编排堆叠本身建立实现该意图的平台。随着无服务器基础设施变得越来越普遍,云原生(微服务)风格工作负载最终将需要意图驱动的编排方式。这些功能和其他功能在下面进行更详细的描述。
图1是示出用于边缘计算的配置的概览的框图100,该配置包括在以下许多示例中被称为“边缘云”的处理层。如图所示,边缘云110共同定位在边缘位置(诸如接入点或基站140、本地处理中枢150、或中央局120),并且因此可以包括多个实体、设备、和装备实例。与云数据中心130相比,边缘云110被定位成更靠近端点(消费者和生产者)数据源160(例如,自主车辆161、用户装备162、商业和工业装备163、视频捕获设备164、无人机165、智慧城市和建筑设备166、传感器和IoT设备167等)。在边缘云110中的边缘处提供的计算、存储器、和存储资源对于为由端点数据源160使用的服务和功能提供超低等待时间的响应时间以及减少从边缘云110朝向云数据中心130的网络回程通信量(由此改善能耗和整体网络使用等益处)至关重要。
计算、存储器、和存储是稀缺资源,并且通常根据边缘位置而减少(例如,在消费者端点设备上可用的处理资源比在基站上、在中央局处可用的处理资源更少)。然而,边缘位置越靠近端点(例如,用户装备(UE)),空间和功率通常就越受限。因此,边缘计算尝试通过分配被定位成既在地理上更靠近又在网络接入时间上更靠近的更多的资源来减少网络服务所需的资源量。以该方式,边缘计算尝试在适当的情况下将计算资源带到工作负载数据,或者,将工作负载数据带到计算资源。
以下描述了边缘云体系结构的各方面,该体系结构涵盖多种潜在的部署,并解决了一些网络运营商或服务提供商在其本身的基础设施中可能具有的限制。这些包括基于边缘位置的各种配置(例如,因为处于基站级别的边缘在多租户场景中可能具有更受限制的性能和能力);基于边缘位置、位置的层、或位置的组可用的计算、存储器、存储、结构、加速等资源的类型的配置;服务、安全性、以及管理和编排能力;以及实现端服务的可用性和性能的相关目标。这些部署可以在网络层中完成处理,取决于等待时间、距离、和定时特征,这些网络层可以被视为“接近边缘”、“靠近边缘”、“本地边缘”、“中间边缘”、或“远边缘”层。
边缘计算是一种开发范式,其中计算在网络的“边缘”处或靠近于网络的“边缘”被执行,典型地通过使用在基站、网关、网络路由器、或更靠近于产生和消耗数据的端点设备的其他设备处实现的计算平台(例如,x86或ARM计算硬件体系结构)来执行。例如,边缘网关服务器可装配有存储器池和存储资源,以针对连接的客户端设备的低等待时间用例(例如,自主驾驶或视频监测)实时地执行计算。或者作为示例,基站可被扩充有计算和加速资源,以直接为连接的用户装备处理服务工作负载,而无需进一步经由回程网络传输数据。或者作为另一示例,可用执行虚拟化网络功能并为服务的执行提供计算资源并且为连接的设备提供消费者功能的标准化计算硬件来代替中央局网络管理硬件。在边缘计算网络内,可能存在计算资源“被移动”到数据的服务中的场景,以及其中数据“被移动”到计算资源的场景。或者作为示例,基站计算、加速和网络资源可以提供服务,以便通过激活休眠容量(订阅、按需容量)来根据需要扩展工作负载需求,以便管理极端情况、紧急情况或为部署的资源在显著更长的实现的生命周期中提供长寿命。
图2示出了端点、边缘云和云计算环境之间的操作层。具体而言,图2描绘了在网络计算的多个说明性层之间利用边缘云110的计算用例205的示例。这些层从端点(设备和事物)层200开始,该层200访问边缘云110以进行数据创建、分析和数据消费活动。边缘云110可以跨越多个网络层(诸如具有网关、内部(on-premise)服务器、或位于物理上邻近边缘系统中的网络装备(节点215)的边缘设备层210);网络接入层220,该网络接入层220涵盖基站、无线电处理单元、网络中枢、区域数据中心(DC)、或本地网络装备(装备225);以及位于它们之间的任何装备、设备或节点(在层212中,未详细图示出)。边缘云110内和各层之间的网络通信可以经由任何数量的有线或无线介质来实现,包括经由未描绘出的连接性体系结构和技术。
由于网络通信距离和处理时间约束而导致的等待时间的示例的范围可以从在端点层200之间时的小于一毫秒(ms),在边缘设备层210处的低于5ms到当与网络接入层220处的节点通信时的10到40ms之间。在边缘云110之外是核心网络层230和云数据中心层240,每个层均具有增加的等待时间(例如,在核心网络层230处的50-60ms之间,到在云数据中心层处的100ms或更多ms)。因此,在核心网络数据中心235或云数据中心245处的、具有至少为50至100ms或更多的等待时间的操作将无法完成用例205的许多时间关键的功能。出于说明和对比的目的,提供这些等待时间值中的每一个等待时间值;应当理解,使用其他接入网络介质和技术可以进一步降低等待时间。在一些示例中,相对于网络源和目的地,网络的各个部分可以被分类为“靠近边缘”、“本地边缘”、“接近边缘”、“中间边缘”或“远边缘”层。例如,从核心网络数据中心235或云数据中心245的角度来看,中央局或内容数据网络可以被视为位于“接近边缘”层内(“接近”云,具有在与用例205的设备和端点通信时的高等待时间值),而接入点、基站、内部服务器或网络网关可以被视为位于“远边缘”层内(“远”离云,具有在与用例205的设备和端点通信时的低等待时间值)。应当理解,构成“靠近”、“本地”、“接近”、“中间”或“远”边缘的特定网络层的其他分类可以基于等待时间、距离、网络跳数或其他可测量的特性,如从网络层200-240中的任一层中的源测量的。
由于多个服务利用边缘云,各种用例205可以在来自传入流的使用压力下访问资源。为了实现低等待时间的结果,在边缘云110内执行的服务在以下方面平衡不同的需求:(a)优先级(吞吐量或等待时间)和服务质量(QoS)(例如,在响应时间需求方面,自主汽车的通信量可能比温度传感器具有更高的优先级;或者,取决于应用,性能敏感度/瓶颈可能存在于计算/加速器、存储器、存储、或网络资源上);(b)可靠性和复原性(例如,取决于应用,一些输入流需要被作用并且以任务关键型可靠性来路由通信量,而一些其他输入流可以容忍偶尔的故障;以及(c)物理约束(例如,功率、冷却和形状因子)。
这些用例的端到端服务视图涉及服务流的概念,并与事务相关联。事务详细说明了消费服务的实体的整体服务需求,以及资源、工作负载、工作流、以及业务功能和业务级别需求的相关联的服务。利用所描述的“方面(term)”执行的服务能以某种方式在每层处进行管理,以确保在服务的生命周期期间事务的实时和运行时合同合规性。当事务中的组件缺失其约定的SLA时,系统作为整体(事务中的组件)可以提供以下能力:(1)理解SLA违规的影响,以及(2)增强系统中的其他组件以恢复整体事务SLA,以及(3)实现补救的步骤。
因此,考虑到这些变化和服务特征,边缘云110内的边缘计算能以实时或接近实时的方式向用例205的多个应用(例如,对象跟踪、视频监视、连接的汽车等)提供服务和作出响应的能力,并满足这些多个应用的超低等待时间需求。这些优势使全新类别的应用(虚拟网络功能(VNF)、功能即服务(FaaS)、边缘即服务(EaaS)、标准过程等)得以实现,这些应用由于等待时间或其他限制而无法利用云计算。
然而,随着边缘计算的优势,有以下注意事项。位于边缘处的设备通常是资源受约束的,并且因此存在对边缘资源的使用的压力。通常,这是通过对供多个用户(租户)和设备使用的存储器和存储资源的池化来解决的。边缘可能是功率和冷却受约束的,并且因此需要由消耗最多功率的应用来负责功率使用。在这些经池化的存储器资源中可能存在固有的功率性能权衡,因为它们中的许多可能使用新兴的存储器技术,在这些技术中,更多的功率需要更大的存储器带宽。同样,还需要改善的硬件安全性和信任根受信任的功能,因为边缘位置可以是无人(控制)的,并且可能甚至需要经许可的访问(例如,当被容纳在第三方位置时)。在多租户、多所有者、或多访问设置中,此类问题在边缘云110中被放大,此类设置中,由许多用户请求服务和应用,特别是当网络使用动态地波动以及多个利益相关者、用例、和服务的组成改变时。
在更一般的级别上,边缘计算系统可以被描述为涵盖在先前讨论的、在边缘云110中操作的层(网络层200-240)处的任意数量的部署,这些层提供来自客户端和分布式计算设备的协调。一个或多个边缘网关节点、一个或多个边缘聚合节点和一个或多个核心数据中心可以分布在网络的各个层上,以由电信服务提供商(“telco”或“TSP”)、物联网服务提供商、云服务提供商(CSP)、企业实体或任何其他数量的实体或者代表其提供边缘计算系统的实现。可以动态地提供边缘计算系统的各种实现方式和配置,诸如当被编排以满足服务目标时。
与本文提供的示例一致,客户端计算节点可以被具体化为任何类型的端点组件、设备、装置或能够作为数据的生产者或消费者进行通信的其他事物。进一步地,如边缘计算系统中所使用的标签“节点”或“设备”不一定意指此类节点或设备以客户端或代理/仆从/跟随者角色操作;相反,边缘计算系统中的节点或设备中的任一者指代包括分立的或连接的硬件或软件配置以促进或使用边缘云110的个体实体、节点、或子系统。
由此,边缘云110由网络层210-230中的边缘网关节点、边缘聚合节点或其他边缘计算节点操作并在网络层210-230中的边缘网关节点、边缘聚合节点或其他边缘计算节点内被操作的网络组件和功能特征形成。因此,边缘云110可被具体化为提供边缘计算和/或存储资源的任何类型的网络,这些边缘计算和/或存储资源被定位成接近支持无线电接入网络(RAN)的端点设备(例如,移动计算设备、IoT设备、智能设备等),其在本文中所讨论。换言之,边缘云110可被预想为连接端点设备和传统网络接入点、同时还提供存储和/或计算能力的“边缘”,该“边缘”充当进入到包括移动运营商网络(例如,全球移动通信系统(GSM)网络、长期演进(LTE)网络、5G/6G网络等)的服务提供商核心网络中的入口点。其他类型和形式的网络接入(例如,Wi-Fi、长程无线、包括光学网络的有线网络)也可替代此类3GPP运营商网络被利用或与此类3GPP运营商网络组合来利用。
边缘云110的网络组件可以是服务器、多租户服务器、装置计算设备和/或任何其他类型的计算设备。例如,边缘云110可包括装置计算设备,该装置计算设备是包括壳体、底座、机箱或外壳的自包含电子设备。在一些情况下,可以针对便携性来确定壳体尺寸,以使得该壳体可由人类携载和/或被运输。示例壳体可包括形成一个或多个外表面的材料,该一个或多个外表面部分地或完整地保护装置的内容物,其中,保护可包括天气保护、危险环境保护(例如,EMI、振动、极端温度)和/或使得能够浸入水中。示例壳体可包括用于为固定式和/或便携式实现方式提供功率的功率电路系统,诸如AC功率输入、DC功率输入、(一个或多个)AC/DC或DC/AC转换器、功率调节器、变压器、充电电路系统、电池、有线输入和/或无线功率输入。示例壳体和/或其表面可包括或连接至安装硬件,以实现到诸如建筑物、电信结构(例如,杆、天线结构等)和/或机架(例如,服务器机架、刀片支架等)之类的结构的附接。示例壳体和/或其表面可支持一个或多个传感器(例如,温度传感器、振动传感器、光传感器、声学传感器、电容传感器、接近度传感器等)。一个或多个此类传感器可被包含在装置的表面中、由装置的表面承载、或以其他方式被嵌入在装置的表面中和/或被安装至装置的表面。示例壳体和/或其表面可支持机械连接性,诸如推进硬件(例如,轮子、螺旋桨等)和/或铰接硬件(例如,机械臂、可枢转附件等)。在一些情况下,传感器可包括任何类型的输入设备,诸如用户接口硬件(例如,按键、开关、拨号盘、滑块等)。在一些情况下,示例壳体包括包含在其中、由其携载、嵌入其中和/或附接于其的输出设备。输出设备可包括显示器、触摸屏、灯、LED、扬声器、I/O端口(例如,USB)等。在一些情况下,边缘设备是为特定目的(例如,红绿灯)而呈现在网络中的设备,但是其可具有可用于其他目的的处理和/或其他能力。此类边缘设备可以独立于其他联网设备,并且可设置有具有适合其主要目的的形状因子的壳体;但它仍然是可用于不干扰其主要任务的其他计算任务。边缘设备包括物联网设备。装置计算设备可包括用于管理诸如设备温度、振动、资源利用率、更新、功率问题、物理和网络安全等之类的本地问题的硬件和软件组件。结合图6B描述用于实现装置计算设备的示例硬件。边缘云110还可以包括一个或多个服务器和/或一个或多个多租户服务器。此类服务器可以包括操作系统并且实现虚拟计算环境。虚拟计算环境可包括用于管理(例如,生成、部署、损毁等)一个或多个虚拟机、一个或多个容器等的管理程序。此类虚拟计算环境提供执行环境,在该执行环境中一个或多个应用和/或其他软件、代码或脚本可以在与一个或多个其他应用、软件、代码或脚本隔离的同时执行。
在图3中,(以移动设备、计算机、自主车辆、业务计算装备、工业处理装备的形式的)各种客户端端点310交换特定于端点网络聚合类型的请求和响应。例如,客户端端点310可以通过交换通过内部网络系统332的请求和响应322,经由有线宽带网络获得网络接入。一些客户端端点310(诸如移动计算设备)可以通过交换通过接入点(例如,蜂窝网络塔)334的请求和响应324,经由无线宽带网络获得网络接入。一些客户端端点310(诸如自主车辆)可通过街道定位网络系统336经由无线车辆网络获得请求和响应326的网络接入。然而,无论网络接入的类型如何,TSP可以在边缘云110内部署聚合点342、344来聚合通信量和请求。因此,在边缘云110内,TSP可以(诸如在边缘聚合节点340处)部署各种计算和存储资源以提供请求的内容。边缘聚合节点340和边缘云110的其他系统被连接至云或数据中心360,该云或数据中心360使用回程网络350来满足来自云/数据中心对网站、应用、数据库服务器等的更高等待时间请求。边缘聚合节点340和聚合点342、344的附加或合并的实例(包括部署在单个服务器框架上的那些实例)也可以存在于边缘云110或TSP基础设施的其他区域内。
图4示出了跨在多个边缘节点和使用此类边缘节点的多个租户(例如,用户、提供商)之间操作的边缘计算系统的虚拟化和基于容器的边缘配置的部署和编排。具体而言,图4描绘了边缘计算系统400中的第一边缘节点422和第二边缘节点424的协调,以满足对接入各种虚拟边缘实例的各种客户端端点410(例如,智慧城市/建筑系统、移动设备、计算设备、商业/物流系统、工业系统等)的请求和响应。在此,虚拟边缘实例432、434通过接入云/数据中心440(对网站、应用、数据库服务器等有更高等待时间请求)来提供边缘云中的边缘计算能力和处理。然而,边缘云能够协调多个租户或实体的多个边缘节点之间的处理。
在图4的示例中,这些虚拟边缘实例包括:提供给第一租户(租户1)的第一虚拟边缘432,该第一虚拟边缘432提供边缘存储、计算、和服务的第一组合;以及第二虚拟边缘434,提供边缘存储、计算、和服务的第二组合。虚拟边缘实例432、434分布在边缘节点422、424之间,并且可以包括其中从相同或不同的边缘节点满足请求和响应的场景。用于以分布式但协调的方式操作的边缘节点422、424的配置基于边缘供应功能450来发生。用于在多个租户之间为应用和服务提供协调的操作的边缘节点422、424的功能基于编排功能460来发生。
应当理解,410中的设备中的一些设备是多租户设备,其中租户1可以在租户1‘片’内运行,而租户2可以在租户2片内运行(并且,在进一步的示例中,可能存在附加的租户或子租户;并且每个租户甚至可以对特定特征组具体地享有权利并且在事务上被绑定至特定特征组,一直到对特定的硬件特征具体地享有权利并且在事务上被绑定至特定的硬件特征)。受信任的多租户设备可以进一步包含租户专用的加密密钥,使得密钥和片的组合可以被视为“信任根”(RoT)或租户专用的RoT。可以进一步使用DICE(设备标识组合引擎)体系结构组成动态计算的RoT,使得单个DICE硬件构建块可用于构造用于对设备能力(诸如现场可编程门阵列(FPGA))进行分层的分层受信任的计算基础上下文。RoT进一步可用于受信任计算上下文,以启用对支持多租赁有用的“扇出”。在多租户环境内,相应的边缘节点422、424可以作为分配给每节点多个租户的本地资源的安全性特征实施点。附加地,租户运行时和应用执行(例如,在实例432、434中)可以用作安全性特征的实施点,该安全性特征创建跨越潜在多个物理主管平台的资源的虚拟边缘抽象。最后,编排实体处的编排功能460可以作为用于沿着租户边界对资源进行列队(marshalling)的安全性特征实施点来操作。
边缘计算节点可对资源(存储器、中央处理单元(CPU)、图形处理单元(GPU)、中断控制器、输入/输出(I/O)控制器、存储器控制器、总线控制器等)进行分区,其中,相应的分区可包含RoT能力,并且其中根据DICE模型的扇出和分层可进一步应用于边缘节点。云计算节点通常使用容器、FaaS引擎、小型服务程序、服务器、或可以根据DICE分层和扇出结构进行分区的其他计算抽象,以支持每个节点的RoT上下文。因此,跨越设备410、422和440的相应的RoT可以协调分布式受信任计算基础(DTCB)的建立,使得可以建立端到端链接所有要素的租户专用的虚拟受信任安全信道。
此外,应当理解,容器可以具有保护其内容不受先前边缘节点影响的数据或工作负载特定的密钥。作为容器迁移的一部分,源边缘节点处的舱(pod)控制器可以从目标边缘节点舱控制器获得迁移密钥,其中迁移密钥用于包裹容器特定的密钥。当容器/舱迁移到目标边缘节点时,解包裹密钥被暴露给舱控制器,然后舱控制器解密经包裹的密钥。密钥现在可用于对容器特定的数据执行操作。迁移功能可以由适当认证的边缘节点和舱管理器(如上所述)进行选通(gate)。
在进一步的示例中,边缘计算系统被扩展以通过在多所有者、多租户环境中使用容器(提供代码和所需依赖关系的被容纳的、可部署的软件单元)来提供多个应用的编排。多租户编排器可用于执行密钥管理、信任锚管理以及与图4中的受信任的‘片’概念的供应和生命周期相关的其他安全性功能。例如,边缘计算系统可被配置成用于满足来自多个虚拟边缘实例(以及,来自云或远程数据中心)的各种客户端端点的请求和响应。这些虚拟边缘实例的使用可以同时支持多个租户和多个应用(例如,增强现实(AR)/虚拟现实(VR)、企业应用、内容交付、游戏、计算迁移)。此外,虚拟边缘实例内可能存在多种类型的应用(例如,普通应用;等待时间敏感型应用;等待时间关键型应用;用户平面应用;联网应用等)。虚拟边缘实例还可以横跨处于不同地理位置的多个所有者的系统(或,由多个所有者共同拥有或共同管理的相应的计算系统和资源)。
例如,每个边缘节点422、424可以实现容器的使用,诸如使用提供一个或多个容器的组的容器“舱”426、428。在使用一个或多个容器舱的设置中,舱控制器或编排器负责舱中容器的本地控制和编排。根据每个容器的需要对为相应边缘片432、434提供的各种边缘节点资源(例如,存储、计算、服务,用六边形描绘)进行分区。
通过使用容器舱,舱控制器监督容器和资源的分区和分配。舱控制器从编排器(例如,编排器460)接收指令,该编排器指示控制器如何最佳地对物理资源进行分区以及在什么持续时间内,诸如通过基于SLA合同接收关键性能指标(KPI)目标。舱控制器确定哪个容器需要哪些资源以及需要多久,以完成工作负载和满足SLA。舱控制器还管理容器生命周期操作,诸如:创建容器、为容器提供资源和应用、协调在分布式应用上一起工作的多个容器之间的中间结果、工作负载完成时拆除容器等。此外,舱控制器可以充当安全角色,其阻止资源分配直到正确的租户验证,或阻止向容器提供数据或工作负载直到满足认证结果。
此外,通过使用容器舱,租户边界仍然可以存在,但在容器的每一个舱的上下文中。如果每个租户特定的舱都有租户特定的舱控制器,则将有一个共享舱控制器,该共享舱控制器将合并资源分配请求,以避免典型的资源短缺情况。可提供进一步的控制,以确保舱和舱控制器的认证和可信。例如,编排器460可以向执行认证验证的本地舱控制器提供认证验证策略。如果认证满足第一租户舱控制器而不是第二租户舱控制器的策略,则第二舱可以迁移到确实满足该策略的不同边缘节点。或者,可以允许第一舱执行,并且在第二舱执行之前安装和调用不同的共享舱控制器。
图5示出了在边缘计算系统中部署容器的附加计算布置。作为简化示例,系统布置510、520描述了设置,其中舱控制器(例如,容器管理器511、521和容器编排器531)适于通过经由计算节点(布置510中的515)的执行来启动容器化舱、功能、和功能即服务实例,或适于通过经由计算节点(布置520中的523)的执行来单独地执行容器化虚拟化的网络功能。该布置适于在(使用计算节点537的)系统布置530中使用多个租户,其中容器化舱(例如,舱512)、功能(例如,功能513、VNF 522、VNF 536)、和功能即服务实例(例如,FaaS实例514)在专用于相应的租户的虚拟机(例如,用于租户532的VM 534、用于租户533的VM 535)内被启动(除了执行虚拟化网络功能)。该布置进一步适于在系统布置540中使用,该系统布置540提供容器542、543,或在计算节点544上执行各种功能、应用和功能,如由基于容器的编排系统541所协调。
图5中描绘的系统布置提供了在应用组成方面平等地对待VM、容器和功能的体系结构(并且得到的应用是这三种组成部分的组合)。每个组成部分可能涉及使用一个或多个加速器(FPGA、ASIC)组件作为本地后端。以此方式,应用可以在多个边缘所有者之间被分割,如由编排器进行协调。
在图5的上下文中,舱控制器/容器管理器、容器编排器和各个节点可以提供安全性实施点。然而,可以编排租户隔离,其中分配给一租户的资源与分配给第二租户的资源是不同的,但是边缘所有者合作以确保资源分配不跨租户边界被共享。或者,资源分配可以跨租户边界而被隔离,因为租户可以允许经由订阅或事务/合同基础的“使用”。在这些上下文中,边缘所有者可以使用虚拟化、容器化、飞地和硬件分区方案来强制执行租赁。其他隔离环境可包括:裸金属(专用)装备、虚拟机、容器、容器上的虚拟机或其组合。
在进一步的示例中,软件定义的或受控的硅硬件以及其他可配置的硬件的各方面可以与边缘计算系统的应用、功能、和服务整合。软件定义的硅(SDSi,Software definedsilicon)可用于基于某一资源或硬件组成部分(例如,通过升级、重新配置或在硬件配置本身内提供新的特征)修复自身或工作负载的一部分的能力、来确保该组成部分满足合同或服务级别协议的能力。
在进一步的示例中,参考当前的边缘计算系统和环境讨论的计算节点或设备中的任一者可以基于图6A和图6B所描绘的组件来实现。相应的边缘计算节点可以被具体化为能够与其他边缘组件、联网组件或端点组件进行通信的设备、装置、计算机或其他“事物”的类型。例如,边缘计算设备可以具体化为个人计算机、服务器、智能手机、移动计算设备、智能设备、车载计算系统(例如,导航系统)、具有外箱、外壳等的自包含设备,或能够执行所述功能的其他设备或系统。
在图6A中描绘的简化示例中,边缘计算节点600包括计算引擎(本文中也称为“计算电路系统”)602、输入/输出(I/O)子系统(本文中也称为“I/O电路系统”)608、数据存储装置(本文中也称为“数据存储电路系统”)610、通信电路系统子系统612,以及任选地,一个或多个外围设备(本文中也称为“外围设备电路系统”)614。在其他示例中,相应的计算设备可以包括其他或附加组件,诸如通常在计算机中发现的那些组件(例如,显示器、外围设备等)。另外,在一些示例中,说明性组件中的一个或多个可被结合到另一组件中,或以其他方式形成另一组件的部分。
计算节点600可被具体化为能够执行各种计算功能的任何类型的引擎、设备、或设备集合。在一些示例中,计算节点600可被具体化为单个设备,诸如集成电路、嵌入式系统、现场可编程门阵列(FPGA)、片上系统(SOC)或其他集成系统或设备。在说明性示例中,计算节点600包括或被具体化为处理器(本文中也称为“处理器电路系统”)604和存储器(本文中也称为“存储器电路系统”)606。处理器604可被具体化为能够执行本文中所描述的功能(例如,执行应用)的任何类型的(一个或多个)处理器。例如,处理器604可被具体化为(一个或多个)多核心处理器、微控制器、处理单元、专门或专用处理单元、或其他处理器或处理/控制电路。
在一些示例中,处理器604可被具体化为、包括或耦合到FPGA、专用集成电路(ASIC)、可重新配置的硬件或硬件电路系统、或用于促进本文中所描述的功能的执行的其他专用硬件。同样在一些示例中,处理器604可以具体化为专用x处理单元(xPU),也称为数据处理单元(DPU)、基础设施处理单元(IPU)或网络处理单元(NPU)。此类xPU可具体化为独立电路或电路封装、集成在SOC内或与联网电路系统(例如,在智能NIC中或增强型智能NIC中)集成、加速电路系统、存储设备、存储盘或AI硬件(例如,GPU或编程FPGA)。此类xPU可设计成用于接收、取回和/或以其他方式获得编程以在CPU或通用处理硬件之外处理一个或多个数据流并执行数据流的特定任务和动作(诸如托管微服务、执行服务管理或编排、组织或管理服务器或数据中心硬件、管理服务网格、或收集和分发遥测数据)。然而,将理解的是,xPU、SOC、CPU和处理器604的其他变体可以彼此协调工作以在计算节点600内并代表计算节点600执行多种类型的操作和指令。
存储器606可被具体化为能够执行本文中所述的功能的任何类型的易失性(例如,动态随机存取存储器(DRAM)等)或非易失性存储器或数据存储。易失性存储器可以是需要电力来维持由该介质存储的数据状态的存储介质。易失性存储器的非限制性示例可包括各种类型的随机存取存储器(RAM),诸如DRAM或静态随机存取存储器(SRAM)。可以在存储器模块中使用的一个特定类型的DRAM是同步动态随机存取存储器(SDRAM)。
在示例中,存储器设备(例如,存储器电路系统)是任意数量的块可寻址存储器设备,诸如基于NAND技术或NOR技术(例如,单级单元(“Single-Level Cell,SLC”)、多级单元(“Multi-Level Cell,MLC”)、四级单元(“Quad-Level Cell,QLC”)、三级单元(“Tri-LevelCell,TLC”)或某种其他NAND)的那些块可寻址存储器设备。在一些示例中,(一个或多个)存储器设备包括字节可寻址就地写入三维交叉点存储器设备,或其他字节可寻址就地写入非易失性存储器(non-volatile memory,NVM)设备,诸如单级或多级相变存储器(PhaseChange Memory,PCM)或带开关的相变存储器(phase change memory with a switch,PCMS)、使用硫属化物相变材料(例如,硫属化物玻璃)的NVM器件、包括金属氧化物基底、氧空位基底和导电桥随机存取存储器(Conductive Bridge Random Access Memory,CB-RAM)的电阻式存储器、纳米线存储器、铁电晶体管随机存取存储器(ferroelectric transistorrandom access memory,FeTRAM)、结合忆阻器技术的磁阻随机存取存储器(magnetoresistive random access memory,MRAM)、自旋转移力矩(spin transfer torque,STT)-MRAM、基于自旋电子磁结存储器的设备、基于磁隧穿结(magnetic tunneling junction,MTJ)的设备、基于DW(畴壁,Domain Wall)和SOT(自旋轨道转移,Spin Orbit Transfer)的设备、基于晶闸管的存储器设备、上述各项中任何项的组合或其他合适的存储器。存储器设备还可包括三维交叉点存储器设备(例如,3D XPointTM存储器)或其他字节可寻址就地写入非易失性存储器设备。存储器设备可指代管芯本身和/或指代封装的存储器产品。在一些示例中,3D交叉点存储器(例如,/>3D XPointTM存储器)可包括无晶体管的可堆叠的交叉点体系结构,其中存储单元位于字线和比特线的交点处,并且可单独寻址,并且其中比特存储基于体电阻的变化。在一些示例中,存储器606的全部或一部分可以被集成到处理器604中。存储器606可以存储在操作期间使用的各种软件和数据,诸如一个或多个应用、通过(一个或多个)应用、库以及驱动程序操作的数据。
在一些示例中,基于电阻器的和/或无晶体管的存储器体系结构包括纳米级相变存储器(phase-change memory,PCM)器件,其中相变材料的体积驻留在至少两个电极之间。示例相变材料的部分表现出不同程度的结晶相和非晶相,其中可以测量至少两个电极之间不同程度的电阻。在一些示例中,相变材料是基于硫族化物的玻璃材料。此类电阻存储器器件有时被称为忆阻器件,其记住先前流过它们的电流的历史。通过测量电阻从示例PCM器件中取回存储的数据,其中,与具有(一个或多个)相对较高的电阻值(例如,逻辑“1”)的非晶相相比时,结晶相表现出(一个或多个)相对较低的电阻值(例如,逻辑“0”)。
示例PCM器件长期存储数据(例如,在室温下大约10年)。通过向至少两个电极施加一个或多个电流脉冲来完成对示例PCM器件的写入操作(例如,设置为逻辑“0”、设置为逻辑“1”、设置为中间电阻值),其中脉冲具有特定的电流大小和持续时间。例如,施加到至少两个电极的长的低电流脉冲(设置(SET))使示例PCM器件驻留在低电阻结晶状态,而施加到至少两个电极的相对短的高电流脉冲(重置(RESET))使示例PCM器件驻留在高电阻非晶状态。
在一些示例中,PCM器件的实现有助于实现存储器中计算能力的非冯诺依曼计算体系结构。一般来说,传统计算体系结构包括经由总线通信地连接到一个或多个存储器设备的中央处理单元(CPU)。因此,有限的能量和时间被消耗以在CPU与存储器之间传输数据,这是冯诺依曼计算体系结构的已知瓶颈。然而,PCM器件通过在存储器中执行一些计算操作来最小化并在某些情况下消除CPU与存储器之间的数据传输。换句话说,PCM器件既存储信息又执行计算任务。这种非冯诺依曼计算体系结构可以实现具有相对高维度的向量以促进超维计算,诸如具有10000比特的向量。比特宽度相对较大的向量能够实现模拟人脑构造的计算范式,人脑也处理类似于宽比特向量的信息。
计算电路系统602经由I/O子系统608通信地耦合到计算节点600的其他组件,该I/O子系统608可被具体化为用于促进与计算电路系统602(例如,与处理器604和/或主存储器606)以及计算电路系统602的其他组件的输入/输出操作的电路系统和/或组件。例如,I/O子系统608可被具体化为或以其他方式包括存储器控制器中枢、输入/输出控制中枢、集成传感器中枢、固件设备、通信链路(即,点对点链路、总线链路、线路、电缆、光导、印刷电路板迹线等)和/或用于促进输入/输出操作的其他组件和子系统。在一些示例中,I/O子系统608可以形成片上系统(SoC)的部分,并可与计算电路系统602的处理器604、存储器606、和其他组件中的一个或多个一起被合并到计算电路系统602中。
一个或多个说明性数据存储设备/盘610可被具体化为被配置成用于数据的短期或长期存储的任何(一个或多个)类型的(一个或多个)物理设备中的一个或多个,诸如例如,存储器设备、存储器、电路系统、存储器卡、闪存存储器、硬盘驱动器、固态驱动器(SSD,solid-state drive)和/或其他数据存储设备/盘。各个数据存储设备/盘610可包括存储数据存储设备/盘610的数据以及固件代码的系统分区。各个数据存储设备/盘610还可以包括一个或多个操作系统分区,该操作系统分区根据例如计算节点600的类型来存储操作系统的数据文件和可执行文件。
通信电路系统612可被具体化为能够实现通过网络在计算电路系统602与另一计算设备(例如,实现的边缘计算系统的边缘网关)之间进行通信的任何通信电路、设备或其集合。通信电路系统612可以被配置成使用任何一种或多种通信技术(例如,有线或无线通信)和相关联的协议(例如,蜂窝联网协议(诸如3GPP 4G或5G标准)、无线局域网协议(诸如IEEE)、无线广域网协议,以太网、/>蓝牙低能量、IoT协议(诸如IEEE802.15.4或/>)、低功率广域网(LPWAN)或低功率广域网(LPWA)协议等)来实行此类通信。
说明性通信电路系统612包括网络接口控制器(NIC)620,其也可被称为主机结构接口(HFI)。NIC 620可被具体化为一个或多个插入式板、子卡、网络接口卡、控制器芯片、芯片组或可由计算节点600用来与另一计算设备(例如,边缘网关节点)连接的其他设备。在一些示例中,NIC 620可被具体化为包括一个或多个处理器的片上系统(SoC)的一部分,或NIC620可被包括在也包含一个或多个处理器的多芯片封装上。在一些示例中,NIC 620可包括均位于NIC 620本地的本地处理器(未示出)和/或本地存储器(未示出)。在此类示例中,NIC620的本地处理器可能能够执行本文中描述的计算电路系统602的功能中的一个或多个功能。附加地,或者可替代地,在此类示例中,NIC 620的本地存储器可以在板级、插座级、芯片级和/或其他层级上被集成到客户端计算节点的一个或多个组件中。
另外,在一些示例中,相应的计算节点600可以包括一个或多个外围设备614。取决于计算节点600的特定类型,此类外围设备614可包括在计算设备或服务器中发现的任何类型的外围设备,诸如音频输入设备、显示器、其他输入/输出设备、接口设备和/或其他外围设备。在进一步的示例中,计算节点600可以由相应的边缘计算节点(无论是客户端、网关或聚合节点)在边缘计算系统或类似形式的设备、计算机、子系统、电路系统或其他组件中来具体化。
在更详细的示例中,图6B图示出可以存在于边缘计算节点650中的组件的示例的框图,该组件用于实现本文所描述的技术(例如,操作、过程、方法和方法论)。该边缘计算节点650在被实现为计算设备(例如,移动设备、基站、服务器、网关等)或计算设备(例如,移动设备、基站、服务器、网关等)的一部分时提供节点600的相应组件的更靠近的视图。边缘计算节点650可以包括本文中所引用的硬件或逻辑组件的任何组合,并且该边缘计算节点650可以包括或耦合可用于边缘通信网络或此类网络的组合的任何设备。这些组件可被实现为集成电路(IC)、IC的部分、分立电子器件,或其他模块、指令集、可编程逻辑或算法、硬件、硬件加速器、软件、固件或其适用于边缘计算节点650中的组合,或作为以其他方式被并入在更大的系统的机架内的组件。
边缘计算节点650可包括处理器652形式的处理电路系统,该处理电路系统可以是微处理器、多核心处理器、多线程处理器、超低电压处理器、嵌入式处理器、xPU/DPU/IPU/NPU、专用处理单元、专门处理单元,或其他已知的处理元件。处理器652可以是片上系统(SoC)的部分,在该SoC中,处理器652和其他组件形成到单个集成电路或单个封装中,诸如,来自加利福尼亚州圣克拉拉市的英特尔公司的爱迪生TM(EdisonTM)或伽利略TM(GalileoTM)SoC板。作为示例,处理器652可包括基于体系结构酷睿TM(CoreTM)的CPU处理器(诸如QuarkTM、AtomTM、i3、i5、i7、i9或MCU级处理器)、或可从/>获得的另一此类处理器。然而,可使用任何数量的其他处理器,诸如,可从加利福尼亚州桑尼威尔市的超微半导体公司/>获得的处理器、来自加利福尼亚州桑尼威尔市的MIPS技术公司的基于/>的设计、许可自ARM控股有限公司的基于/>的设计,或从上述各公司的客户、被许可方或采纳方获得的处理器。处理器可包括诸如以下单元:来自/>公司的A5-A13处理器、来自/>技术公司的骁龙TM(SnapdragonTM)处理器或来自德州仪器公司的OMAPTM处理器。处理器652和伴随的电路系统可以以单插座形状因子、多插座形状因子或各种其他格式提供,包括采用有限的硬件配置或包括少于图6B中所示的所有元件的配置。
处理器652可通过互连656(例如,总线)来与系统存储器654通信。可使用任何数量的存储器设备来提供给定量的系统存储器。作为示例,存储器654可以是根据联合电子器件工程委员会(JEDEC)设计的随机存取存储器(RAM),诸如DDR或移动DDR标准(例如,LPDDR、LPDDR2、LPDDR3或LPDDR4)。在特定示例中,存储器组件可符合JEDEC颁布的DRAM标准,诸如DDR SDRAM的JESD79F、DDR2 SDRAM的JESD79-2F、DDR3 SDRAM的JESD79-3F、DDR4 SDRAM的JESD79-4A、低功率DDR(LPDDR)的JESD209、LPDDR2的JESD209-2、LPDDR3的JESD209-3和LPDDR4的JESD209-4。此类标准(和类似的标准)可被称为基于DDR的标准,而存储设备的实现此类标准的通信接口可被称为基于DDR的接口。在各种实现方式中,单独的存储器设备可以是任何数量的不同封装类型,诸如单管芯封装(SDP)、双管芯封装(DDP)或四管芯封装(Q17P)。在一些示例中,这些设备可以直接焊接到主板上,以提供较低轮廓的解决方案,而在其他示例中,设备被配置为一个或多个存储器模块,这些存储器模块进而通过给定的连接器耦合至主板。可使用任何数量的其他存储器实现方式,诸如其他类型的存储器模块,例如,不同种类的双列直插存储器模块(DIMM),包括但不限于microDIMM(微DIMM)或MiniDIMM(迷你DIMM)。
为了提供对信息(诸如数据、应用、操作系统等)的持久性存储,存储装置658还可经由互连656而耦合至处理器652。在示例中,存储装置658可经由固态盘驱动器(SSDD)来实现。可用于存储装置658的其他设备包括闪存卡(诸如安全数字(SD)卡、microSD卡、极限数字(xD)图片卡,等等)和通用串行总线(USB)闪存驱动器。在示例中,存储器设备可以是或者可以包括使用硫属化物玻璃的存储器设备、多阈值级别NAND闪存、NOR闪存、单级或多级相变存储器(PCM)、电阻式存储器、纳米线存储器、铁电晶体管随机存取存储器(FeTRAM)、反铁电存储器、包含忆阻器技术的磁阻随机存取存储器(MRAM)存储器、包括金属氧化物基底、氧空位基底和导电桥随机存取存储器(CB-RAM)的电阻式存储器、或自旋转移力矩(STT)-MRAM、基于自旋电子磁结存储器的设备、基于磁隧穿结(MTJ)的设备、基于DW(畴壁)和SOT(自旋轨道转移)的设备、基于晶闸管的存储器设备、或者任何上述或其他存储器的组合。
在低功率实现中,存储装置658可以是与处理器652相关联的管芯上存储器或寄存器。然而,在一些示例中,存储装置658可使用微硬盘驱动器(HDD)来实现。此外,附加于或替代所描述的技术,可将任何数量的新技术用于存储装置658,诸如阻变存储器、相变存储器、全息存储器或化学存储器,等等。
组件可通过互连656进行通信。互连656可包括任何数量的技术,包括工业标准体系结构(ISA)、扩展ISA(EISA)、外围组件互连(PCI)、外围组件互连扩展(PCIx)、PCI快速(PCIe)或任何数量的其他技术。互连656可以是例如在基于SoC的系统中使用的专有总线。其他总线系统可被包括,诸如内部集成电路(I2C)接口、串行外围设备接口(SPI)接口、点对点接口、以及功率总线,等等。
互连656可将处理器652耦合至收发机666,以便与连接的边缘设备662通信。收发机666可使用任何数量的频率和协议,诸如,IEEE 802.15.4标准下的2.4千兆赫兹(GHz)传输,使用如由特别兴趣小组定义的/>低能量(BLE)标准、或/>标准,等等。为特定的无线通信协议配置的任何数量的无线电可用于到连接的边缘设备662的连接。例如,无线局域网(WLAN)单元可用于根据电气和电子工程师协会(IEEE)802.11标准实现通信。另外,例如根据蜂窝或其他无线广域协议的无线广域通信可经由无线广域网(WWAN)单元发生。
无线网络收发机666(或多个收发机)可以使用用于不同距离的通信的多种标准或无线电来进行通信。例如,边缘计算节点650可使用基于蓝牙低能量(BLE)或另一低功率无线电的本地收发机与接近的(例如,在约10米内的)设备通信以节省功率。更远的(例如,在约50米内的)连接的边缘设备662可通过或其他中间功率的无线电而联络到。这两种通信技术能以不同的功率水平通过单个无线电发生,或者可通过分开的收发机而发生,分开的收发机例如使用BLE的本地收发机和分开的使用/>的网格收发机。
无线网络收发机666(例如,无线电收发机)可被包括,以经由局域网协议或广域网协议来与云(例如,边缘云695)中的设备或服务通信。无线网络收发机666可以是遵循IEEE802.15.4或IEEE 802.15.4g标准等的低功率广域(LPWA)收发机。边缘计算节点650可使用由Semtech和LoRa联盟开发的LoRaWANTM(长距离广域网)在广域上通信。本文中描述的技术不限于这些技术,而使可与实现长距离、低带宽通信(诸如,Sigfox和其他技术)的任何数量的其他云收发机一起使用。进一步地,可使用其他通信技术,诸如在IEEE 802.15.4e规范中描述的时隙信道跳跃(time-slotted channel hopping)。
除了针对如本文中所描述的无线网络收发机666而提及的系统之外,还可使用任何数量的其他无线电通信和协议。例如,收发机666可包括使用扩展频谱(SPA/SAS)通信以实现高速通信的蜂窝收发机。进一步地,可使用任何数量的其他协议,诸如用于中速通信和供应网络通信的网络。收发机666可包括与任何数量的3GPP(第三代伙伴规划)规范(诸如在本公开的末尾处进一步详细讨论的长期演进(LTE)和第五代(5G)通信系统)兼容的无线电。网络接口控制器(NIC)668可被包括以提供到边缘云695的节点或到其他设备(诸如(例如,在网格中操作的)连接的边缘设备662)的有线通信。有线通信可提供以太网连接,或可基于其他类型的网络,诸如控制器区域网(CAN)、本地互连网(LIN)、设备网络(DeviceNet)、控制网络(ControlNet)、数据高速路+、现场总线(PROFIBUS)或工业以太网(PROFINET),等等。附加的NIC 668可被包括以实现到第二网络的连接,例如,第一NIC 668通过以太网提供到云的通信,并且第二NIC 668通过另一类型的网络提供到其他设备的通信。
鉴于从设备到另一组件或网络的适用通信类型的多样性,设备使用的适用通信电路可以包括组件664、666、668或670中的任何一个或多个或由组件664、666、668或670中的任何一个或多个来具体化。因此,在各个示例中,用于通信(例如,接收、传送等)的适用装置可由此类通信电路系统来具体化。
边缘计算节点650可以包括或被耦合到加速电路系统664,该加速电路系统664可以由一个或多个人工智能(AI)加速器、神经计算棒、神经形态硬件、FPGA、GPU的布置、xPU/DPU/IPU/NPU的布置、一个或多个SoC、一个或多个CPU、一个或多个数字信号处理器、专用ASIC、或被设计用于完成一个或多个专有任务的其他形式的专用处理器或电路系统来具体化。这些任务可以包括AI处理(包括机器学习、训练、推断、和分类操作)、视觉数据处理、网络数据处理、对象检测、规则分析等。这些任务还可包括用于本文档中其他地方讨论的服务管理和服务操作的特定边缘计算任务。
互连656可将处理器652耦合至用于连接附加的设备或子系统的传感器中枢或外部接口670。设备可包括传感器672,诸如加速度计、水平传感器、流量传感器、光学光传感器、相机传感器、温度传感器、全球定位系统(例如,GPS)传感器、压力传感器、气压传感器,等等。中枢或接口670可进一步用于将边缘计算节点650连接至致动器674,诸如功率开关、阀致动器、可听声音发生器、视觉警告设备等。
在一些任选的示例中,各种输入/输出(I/O)设备可存在于边缘计算节点650内,或可连接至边缘计算节点650。例如,显示器或其他输出设备684可被包括以显示信息,诸如传感器读数或致动器位置。输入设备686(诸如触摸屏或键区)可被包括以接受输入。输出设备684可包括任何数量的音频或视觉显示形式,包括:简单视觉输出,诸如,二进制状态指示器(例如,发光二极管(LED));多字符视觉输出;或更复杂的输出,诸如,显示屏(例如,液晶显示器(LCD)屏),其具有从边缘计算节点650的操作生成或产生的字符、图形、多媒体对象等的输出。在本系统的上下文中,显示器或控制台硬件可:用于提供边缘计算系统的输出和接收边缘计算系统的输入;用于管理边缘计算系统的组件或服务;标识边缘计算组件或服务的状态;或用于进行任何其他数量的管理或管理功能或服务用例。
电池676可为边缘计算节点650供电,但是在其中边缘计算节点650被安装在固定位置的示例中,该边缘计算节点650可具有耦合至电网的电源,或者电池可以用作备用或用于临时功能。电池676可以是锂离子电池、金属-空气电池(诸如锌-空气电池、铝-空气电池、锂-空气电池),等等。
电池监测器/充电器678可被包括在边缘计算节点650中以跟踪电池676(如果包括的话)的充电状态(SoCh)。电池监测器/充电器678可用于监测电池676的其他参数以提供失效预测,诸如电池676的健康状态(SoH)和功能状态(SoF)。电池监测器/充电器678可包括电池监测集成电路,诸如来自线性技术公司(Linear Technologies)的LTC4020或LTC2990、来自亚利桑那州的凤凰城的安森美半导体公司(ON Semiconductor)的ADT7488A、或来自德克萨斯州达拉斯的德州仪器公司的UCD90xxx族的IC。电池监测器/充电器678可通过互连656将关于电池676的信息传递至处理器652。电池监测器/充电器678也可包括使处理器652能够直接监测电池676的电压或从电池676流过的电流的模数(ADC)转换器。电池参数可被用于确定边缘计算节点650可执行的动作,诸如传输频率、网格网络操作、感测频率,等等。
功率块680或耦合至电网的其他电源可与电池监测器/充电器678耦合以对电池676充电。在一些示例中,功率块680可用无线功率接收机代替,以便例如通过边缘计算节点650中的环形天线来无线地获得功率。无线电池充电电路(诸如来自加利福尼亚州的苗比达市的线性技术公司的LTC4020芯片,等等)可被包括在电池监测器/充电器678中。可以基于电池676的尺寸并且因此基于所要求的电流来选择特定的充电电路。可使用由无线充电联盟(Airfuel Alliance)颁布的Airfuel标准、由无线电力协会(Wireless PowerConsortium)颁布的Qi无线充电标准、或由无线电力联盟(Alliance for Wireless Power)颁布的Rezence充电标准等等来执行充电。
存储装置658可包括用于实现本文中描述的技术的软件、固件或硬件命令形式的指令682。虽然此类指令682被示出为被包括在存储器654和存储装置658中的代码块,但是可以理解,可用例如被建立到专用集成电路(ASIC)中的硬连线电路替换代码块中的任一个。
在示例中,经由存储器654、存储装置658或处理器652提供的指令682可被具体化为非暂态机器可读介质660,该非暂态机器可读介质660包括用于指导处理器652执行边缘计算节点650中的电子操作的代码。处理器652可通过互连656访问非暂态机器可读介质660。例如,非暂态机器可读介质660可由针对存储装置658所描述的设备来具体化,或者可包括诸如存储设备和/或存储盘之类的特定存储单元,包括:光盘(例如,数字多功能盘(digital versatiledisk,DVD)、致密盘(compact disk,CD)、CD-ROM、蓝光盘)、闪存驱动器、软盘、硬驱动器(例如,SSD)、或在任何持续时间内(例如,在扩展时间段内、永久地、在简短的实例期间、在临时缓冲和/或缓存期间)将信息存储在其中的任何数量的其他硬件设备。非暂态机器可读介质660可包括用于指示处理器652执行例如像参照上文中描绘的操作和功能的(一个或多个)流程图和(一个或多个)框图而描述的特定的动作序列或动作流的指令。如本文所使用,术语“机器可读介质”和“计算机可读介质”是可互换的。如本文中所使用,术语“非暂态计算机可读介质”被明确地限定为包括任何类型的计算机可读存储设备和/或存储盘,并且排除传播信号并排除传输介质。
也在特定示例中,处理器652上的指令682(单独地或与机器可读介质660的指令682结合)可以配置受信任执行环境(TEE)690的执行或操作。在示例中,TEE 690作为处理器652可访问的受保护区域来操作,以用于指令的安全执行和对数据的安全访问。例如,可以通过使用软件防护扩展(SGX)或/>硬件安全扩展、/>管理引擎(ME)或/>融合安全可管理性引擎(CSME)来提供TEE 690的各种实现方式以及处理器652或存储器654中伴随的安全区域。安全强化、硬件信任根、和受信任或受保护操作的其他方面可以通过TEE 690和处理器652在设备650中实现。
虽然图6A和图6B所示的示例分别包括用于计算节点和计算设备的示例组件,但本文公开的示例不限于此。如本文所使用的,“计算机”可以包括不同类型的计算环境中的、图6A和/或图6B的示例组件中的一些或全部组件。示例计算环境包括分布式联网布置中的边缘计算设备(例如,边缘计算机),使得参与的边缘计算设备中的特定边缘计算设备是异构或同构设备。如本文所使用的,“计算机”可以包括个人计算机、服务器、用户装备、加速器等,包括其任何组合。在一些示例中,分布式联网和/或分布式计算包括任何数量的如图6A和/或图6B中所示的此类边缘计算设备,其中每个边缘计算设备可以包括不同的子组件、不同的存储器容量、I/O能力等。例如,由于分布式联网和/或分布式计算的一些实现方式与特定期望功能相关联,因此本文公开的示例包括图6A和/或图6B中所图示的组件的不同组合,以满足分布式计算任务的功能目标。在一些示例中,术语“计算节点”或“计算机”仅包括图6A的示例处理器604、存储器606和I/O子系统608。在一些示例中,(一个或多个)分布式计算任务的一个或多个目标功能依赖于定位在边缘联网环境的不同部分中的一个或者多个替代设备/结构,诸如用于容纳数据存储装置(例如,示例数据存储装置610)、输入/输出能力(例如,(一个或多个)示例外围设备614)和/或网络通信能力(例如,示例NIC 620)的设备。
在一些示例中,在分布式计算和/或分布式联网环境(例如,边缘网络)中操作的计算机被构造成用于以减少计算浪费的方式适应特定目标功能。例如,由于计算机包括图6A和图6B中公开的组件的子集,因此此类计算机满足分布式计算目标功能的执行,而不包括以其他方式不被使用和/或未充分利用的计算结构。因此,本文使用的术语“计算机”包括能够满足和/或以其他方式执行分布式计算任务的目标功能的、图6A和/或图6B的结构的任何组合。在一些示例中,计算机以与对应的分布式计算目标功能相称的方式、以与动态需求结合而缩小规模或增大规模的方式被构造。在一些示例中,鉴于不同计算机处理(一个或多个)分布式计算请求的一个或多个任务的能力来调用和/或以其他方式实例化不同的计算机,使得能够满足任务的任何计算机继续进行这种计算活动。
在图6A和图6B中所示的示例中,计算设备包括操作系统。如本文所使用的,“操作系统”是用于控制示例计算设备的软件,该计算设备诸如图6A的示例边缘计算节点600和/或图6B的示例边缘计算节点650。示例操作系统包括但不限于基于消费者的操作系统(例如,10、/> OS、/>OS等)。示例操作系统还包括但不限于,聚焦于工业的操作系统,诸如实时操作系统、管理程序等。第一边缘计算节点上的示例操作系统可以与第二边缘计算节点上的示例操作系统相同或不同。在一些示例中,操作系统调用替代软件,以促进对于操作系统不是原生的一个或多个功能和/或操作,诸如特定的通信协议和/或解释器。在一些示例中,操作系统实例化对于操作系统不是原生的各种功能。在一些示例中,操作系统包括不同程度的复杂性和/或能力。例如,对应于第一边缘计算节点的第一操作系统包括具有对动态输入条件的响应性的特定性能预期的实时操作系统,而对应于第二边缘计算节点的第二操作系统包括用于促进终端用户I/O的图形用户界面能力。
指令682可利用多种无线局域网(wireless local area network,WLAN)传输协议(例如,帧中继、网际协议(IP)、传输控制协议(TCP)、用户数据报协议(UDP)、超文本传输协议(HTTP)等)中的任何一种,经由无线网络收发机666,使用传输介质,通过通信网络被进一步传送或接收。示例通信网络可包括局域网(local area network,LAN)、广域网(widearea network,WAN)、分组数据网络(例如,因特网)、移动电话网络(例如,蜂窝网络)、普通老式电话(Plain Old Telephone,POTS)网络、以及无线数据网络。通过网络的通信可以包括一种或多种不同的协议,诸如:被称为Wi-Fi的电气与电子工程师协会(Institute forElectrical and Electronic Engineers,IEEE)802.11标准系列、IEEE 802.16标准系列、IEEE 802.15.4标准系列、长期演进(Long-Term Evolution,LTE)标准系列、通用移动电信系统(Universal Mobile Telecommunication System,UMTS)标准系列、对等(peer-to-peer,P2P)网络、下一代(next generation,NG)/第五代(5G)标准等。
注意,本文使用的术语“电路系统”是指配置成用于提供所描述的功能的硬件组件、是该硬件组件的一部分或包括该硬件组件,该硬件组件诸如电子电路、逻辑电路、处理器(共享的、专用的或组)和/或存储器(共享的、专用的、或组)、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、现场可编程器件(field-programmabledevice,FPD)(例如,现场可编程门阵列(FPGA)、可编程逻辑器件(programmable logic device,PLD)、复杂PLD(complex PLD,CPLD)、高容量PLD(high-capacity PLD,HCPLD)、结构化ASIC或可编程SoC)、数字信号处理器(digital signal processor,DSP)等。在一些实施例中,电路系统可执行一个或多个软件或固件程序,以提供所描述的功能中的至少一些。术语“电路系统”也可指代一个或多个硬件元件(或电气或电子系统中使用的电路的组合)与程序代码的组合,用于执行该程序代码的功能。在这些实施例中,硬件元件与程序代码的组合可被称为特定类型的电路系统。
如本文中所使用,术语“处理器电路系统”或“处理器”因此是指能够顺序地且自动地执行算术或逻辑操作序列,或者记录、存储和/或传递数字数据的电路,是该电路的部分,或者包括该电路。术语“处理器电路系统”或“处理器”可指一个或多个应用处理器、一个或多个基带处理器、物理中央处理单元(CPU)、单核心处理器或双核心处理器、和/或能够执行或以其他方式操作计算机可执行指令的任何其他设备,这些计算机可执行指令诸如程序代码、软件模块和/或函数进程。
本文描述的任何无线电链路可以根据以下无线电通信技术和/或标准中的任何一者或多者进行操作,这些无线电通信技术和/或标准包括但不限于:全球移动通信系统(Global System for Mobile Communications,GSM)无线电通信技术、通用分组无线电服务(General Packet Radio Service,GPRS)无线电通信技术、GSM演进增强数据速率(Enhanced Data Rates for GSM Evolution,EDGE)无线电通信技术、和/或第三代伙伴规划(Third Generation Partnership Project,3GPP)无线电通信技术,例如通用移动电信系统(Universal Mobile Telecommunications System,UMTS)、自由移动的多媒体接入(Freedom of Multimedia Access,FOMA)、3GPP长期演进(Long Term Evolution,LTE)、3GPP长期演进高级(Long Term Evolution Advanced,LTE Advanced)、码分多址2000(Codedivision multiple access 2000,CDMA2000)、蜂窝数字分组数据(Cellular DigitalPacket Data,CDPD)、Mobitex、第三代(Third Generation,3G)、电路交换数据(CircuitSwitched Data,CSD)、高速电路交换数据(High-Speed Circuit-Switched Data,HSCSD)、通用移动电信系统(第三代)(Universal Mobile Telecommunications System(ThirdGeneration),UMTS(3G))、宽带码分多址(通用移动电信系统)(Wideband Code DivisionMultiple Access(Universal Mobile Telecommunications System),W-CDMA(UMTS))、高速分组访问(High Speed Packet Access,HSPA)、高速下行链路分组访问(High-SpeedDownlink Packet Access,HSDPA)、高速上行链路分组访问(High-Speed Uplink PacketAccess,HSUPA)、高速分组访问加(High Speed Packet Access Plus,HSPA+)、通用移动电信系统-时分双工(Universal Mobile Telecommunications System-Time-DivisionDuplex,UMTS-TDD)、时分-码分多址(Time Division-Code Division Multiple Access,TD-CDMA)、时分-同步码分多址(Time Division-Synchronous Code Division MultipleAccess,TD-CDMA)、第三代伙伴规划第8版(预第四代)(3rd Generation PartnershipProject Release 8(Pre-4th Generation),3GPP Rel.8(Pre-4G))、3GPP Rel.9(第三代伙伴规划第9版)、3GPP Rel.10(第三代伙伴规划第10版)、3GPP Rel.11(第三代伙伴规划第11版)、3GPP Rel.12(第三代伙伴规划第12版)、3GPP Rel.13(第三代伙伴规划第13版)、3GPPRel.14(第三代伙伴规划第14版)、3GPP Rel.15(第三代伙伴规划第15版)、3GPP Rel.16(第三代伙伴规划第16版)、3GPP Rel.17(第三代伙伴规划第17版)以及后续版本(诸如Rel.18、Rel.19等)、3GPP 5G、5G、5G新无线电(5G New Radio,5G NR)、3GPP 5G新无线电、3GPP LTE附加、LTE高级加强版、LTE许可辅助接入(Licensed-Assisted Access,LAA),MuLTEfire、UMTS陆地无线电接入(UMTS Terrestrial Radio Access,UTRA)、演化UMTS陆地无线电接入(Evolved UMTS Terrestrial Radio Access,E-UTRA)、长期演进高级(第四代)(Long TermEvolution Advanced(4th Generation),LTE Advanced(4G))、cdmaOne(2G)、码分多址2000(第三代)(Code division multiple access 2000(Third generation),CDMA2000(3G))、演进数据优化或仅演进数据(Evolution-Data Optimized或Evolution-Data Only,EV-DO)、高级移动电话系统(第一代)(Advanced Mobile Phone System(1st Generation),AMPS(1G))、总接入通信系统/扩展总接入通信系统(Total Access CommunicationSystem/Extended Total Access Communication System,TACS/ETACS)、数字AMPS(第二代)(Digital AMPS(2nd Generation),D-AMPS(2G))、即按即说(Push-to-Talk,PTT)、移动电话系统(Mobile Telephone System,MTS)、改进的移动电话系统(Improved MobileTelephone System,IMTS)、高级移动电话系统(Advanced Mobile Telephone System,AMTS)、OLT(挪威语Offentlig Landmobil Telefoni,公共陆地移动电话)、MTD(瑞典语Mobiltelefonisystem D的缩写,即移动电话系统D)、公共自动陆地移动(Autotel/PALM)、ARP(芬兰语Autoradiopuhelin,“汽车无线电话”)、NMT(北欧移动电话)、NTT的高容量版本(日本电报和电话)(Hicap)、蜂窝数字分组数据(Cellular Digital Packet Data,CDPD)、Mobitex、DataTAC、整合数字增强网络(Integrated Digital Enhanced Network,iDEN)、个人数字蜂窝(Personal Digital Cellular,PDC)、电路交换数据(Circuit Switched Data,CSD)、个人手持电话系统(Personal Handy-phone System,PHS)、宽带整合数字增强网络(Wideband Integrated Digital Enhanced Network,WiDEN)、iBurst、非许可移动接入(Unlicensed Mobile Access,UMA)(也称为3GPP通用接入网络或GAN标准)、Zigbee、蓝牙(r)、无线千兆联盟(Wireless Gigabit Alliance,WiGig)标准、通用毫米波标准(在10-300GHz及以上操作的无线系统,诸如WiGig、IEEE 802.11ad、IEEE 802.11ay等)、在300GHz和THz带以上操作的技术(基于3GPP/LTE或IEEE 802.11p或IEEE 802.11bd及其他)交通工具对交通工具(Vehicle-to-Vehicle,V2V)和交通工具对X(Vehicle-to-X,V2X)和交通工具对基础设施(Vehicle-to-Infrastructure,V2I)以及基础设施对交通工具(Infrastructure-to-Vehicle,I2V)通信技术、3GPP蜂窝V2X、DSRC(专用短程通信,Dedicated Short Range Communications)通信系统,诸如智能运输系统及其他(通常在5850MHz至5925MHz或以上操作(遵循CEPT报告71中的变更提议,通常高达5935MHz))、欧洲ITS-G5系统(即基于IEEE 802.11p的DSRC的欧洲版本,包括ITS-G5A(即,专用于5875GHz至5905GHz频率范围内安全性相关应用的ITS的欧洲ITS频带中的ITS-G5的操作)、ITS-G5B(即,专用于在5855GHz至5875GHz频率范围内的ITS非安全性应用的欧洲ITS频带中的操作)、ITS-G5C(即,在5470GHz至5725GHz的频率范围内的ITS应用的操作))、在700MHz带(包括715MHz至725MHz)中的日本的DSRC、基于IEEE 802.11bd的系统等。
本文描述的方面可以在任何频谱管理方案的背景下使用,包括专用许可频谱、未许可频谱、免许可频谱、(许可)共享频谱(诸如,在2.3-2.4GHz、3.4-3.6GHz、3.6-3.8GHz和更多频率中,LSA即许可共享接入;以及在3.55-3.7GHz和更多频率中,SAS即频谱接入系统或CBRS即公民宽带无线电系统)。适用的频带包括IMT(International MobileTelecommunications,国际移动电信)频谱以及其他类型的频谱/带,诸如国家分配的带(包括:450-470MHz、902-928MHz(注意:例如在美国(FCC第15部分)分配)、863-868.6MHz(注意:例如在欧盟(ETSI EN 300 220)分配)、915.9-929.7MHz(注意:例如在日本分配)、917-923.5MHz(注意:例如在韩国分配)、755-779MHz和779-787MHz(注意:例如在中国分配)、790-960MHz、1710-2025MHz、2110-2200MHz、2300-2400MHz、2.4-2.4835GHz(注意:这是全球可用的ISM带,并且由Wi-Fi技术系列(11b/g/n/ax)和蓝牙使用)、2500-2690MHz、698-790MHz、610-790MHz、3400-3600MHz、3400-3800MHz、3800-4200MHz、3.55-3.7GHz(注意:例如在美国针对公民宽带无线电服务分配)、5.15-5.25GHz、5.25-5.35GHz和5.47-5.725GHz以及5.725-5.85GHz带(注意:例如在美国(FCC第15部分)分配,由总共500MHz频谱中的四个U-NII带组成)、5.725-5.875GHz(注意:例如在欧盟(ETSI EN 301 893)分配)、5.47-5.65GHz(注意:例如在韩国分配)、5925-7085MHz和5925-6425MHz带(注意:美国和欧盟分别正在考虑中))。下一代Wi-Fi系统预计将包括6GHz频谱作为工作频带,但应注意,截至2017年12月,Wi-Fi系统尚未允许在此频带使用。监管预期将于2019-2020年的时间范围内完成)、IMT-高级频谱、IMT-2020频谱(预期包括3600-3800MHz、3800-4200MHz、3.5GHz频带、700MHz频带、24.25-86GHz范围内的频带等)、在FCC的“频谱前沿”5G计划下成为可用的频谱(包括27.5-28.35GHz、29.1-29.25GHz、31-31.3GHz、37-38.6GHz、38.6-40GHz、42-42.5GHz、57-64GHz、71-76GHz、81-86GHz和92-94GHz等)、5.9GHz(一般为5.85-5.925GHz)和63-64GHz的ITS(智能运输系统)频带,目前分配给WiGig的频带57-64/66GHz(诸如WiGig频带1(57.24-59.40GHz)、WiGig频带2(59.40-61.56GHz)和WiGig频带3(61.56-63.72GHz)和WiGig频带4(63.72-65.88GHz))(注意:该频带具有针对多千兆无线系统(Multi-GigabitWireless System,MGWS)/WiGig的近全球指定)。在美国(FCC第15部分)分配总共14GHz频谱,而欧盟(对于固定P2P,ETSI EN 302 567和ETSI EN 301217-2)分配总共9GHz频谱)、70.2GHz-71GHz频带、65.88GHz和71GHz之间的任何频带、当前分配给汽车雷达应用的频带(诸如76-81GHz)以及包括94-300GHz及以上的未来频带。此外,该方案还可以在诸如电视空白频带(通常低于790MHz)之类的频带上在次要基础上使用,其中,特别地,400MHz和700MHz频带是有希望的候选频带。除了蜂窝应用之外,还可以解决垂直市场的特定应用,诸如PMSE(Program Making and Special Event,节目制作和特别活动)、医疗、健康、手术、汽车、低等待时间、无人机等应用。
图7图示出用于将软件分发至一个或多个设备的示例软件分发平台705,该软件诸如图6B的示例计算机可读指令682,该一个或多个设备诸如(一个或多个)示例处理器平台700和/或示例连接的边缘设备。示例软件分发平台705可以由能够存储软件并将软件传送到其他计算设备(例如,第三方、示例连接的边缘设备)的任何计算机服务器、数据设施、云服务等来实现。示例连接的边缘设备可以是客户方、客户端、管理设备(例如,服务器)、第三方(例如,拥有和/或操作软件分发平台705的实体的客户方)。示例连接的边缘设备可在商业和/或家庭自动环境中操作。在一些示例中,第三方是诸如图6B的示例计算机可读指令682之类的软件的开发方、销售方和/或许可方。第三方可以是购买和/或许可软件以用于使用和/或转售和/或分许可的消费方、用户、零售商、OEM等。在一些示例中,所分发的软件引起一个或多个用户界面(user interface,UI)和/或图形用户界面(graphical userinterface,GUI)的显示,以标识地理上和/或逻辑上彼此分离的一个或多个设备(例如,连接的边缘设备)(例如,被特许负责配水控制的物理上分离的IoT设备(例如,泵)、被特许负责配电控制的物理上分离的IoT设备(例如,继电器)等)。
在图7的所图示示例中,软件分发平台705包括一个或多个服务器以及一个或多个存储设备。存储设备存储计算机可读指令682。示例软件分发平台705的一个或多个服务器与网络710通信,该网络710可以对应于因特网和/或上文所述示例网络中的任何网络中的任何一者或多者。在一些示例中,作为商业事务的一部分,一个或多个服务器响应于请求而将软件传送到请求方。可以由软件分发平台的一个或多个服务器和/或经由第三方支付实体来处置针对软件的交付、销售、和/或许可的支付。服务器使购买方和/或许可方能够从软件分发平台705下载计算机可读指令682。例如,软件(其可与示例计算机可读指令相对应)可被下载到(一个或多个)示例处理器平台700(例如,示例连接的边缘设备),该(一个或多个)示例处理器平台700用于执行计算机可读指令682以在交换机上实现内容插入。在一些示例中,软件分发平台705的一个或多个服务器通信地连接至一个或多个安全域和/或安全设备,示例计算机可读指令682的请求和传送必须穿过该一个或多个安全域和/或安全设备。在一些示例中,软件分发平台705的一个或多个服务器周期性地提供、传送和/或强制进行软件(例如,图6B的示例计算机可读指令682)更新以确保改善、补丁、更新等被分发并应用于终端用户设备处的软件。
在图7的所图示示例中,计算机可读指令682以特定的格式被存储在软件分发平台705的存储设备上。计算机可读指令的格式包括但不限于,特定的代码语言(例如,Java、JavaScript、Python、C、C#、SQL、HTML等)和/或特定的代码状态(例如,未经编译的代码(例如,ASCII)、经解释的代码、链接的代码、可执行代码(例如,二进制文件)等)。在一些示例中,软件分发平台705中所存储的计算机可读指令682在被传送至(一个或多个)示例处理器平台700时采用第一格式。在一些示例中,第一格式是特定类型的(一个或多个)处理器平台700可以按其来执行的可执行二进制文件。然而,在一些示例中,第一格式是未经编译的代码,其要求一个或多个准备任务将第一格式转换为第二格式以使得能够在(一个或多个)示例处理器平台700上执行。例如,(一个或多个)接收处理器平台710可能需要对采用第一格式的计算机可读指令682进行编译,以生成能够在(一个或多个)处理器平台700上执行的采用第二格式的可执行代码。在另外的其他示例中,第一格式是经解释的代码,其在到达(一个或多个)处理器平台700后由解释器进行解释以促进指令的执行。
图8是图示根据实施例的无服务器数据中心800的框图。数据中心800被布置成逻辑服务块。图8所示的服务块包括通用计算服务802、机器学习(Machine Learning,ML)和人工智能(Artificial Intelligence,AI)服务804、计算存储服务806和加速服务808。服务块与智能网络结构810耦合。
使用这种类型的无服务器数据中心800,可以实现一种执行编排的新方式,其从当前实践转向目标驱动的方法,其中客户只表达意图,编排堆叠本身建立实现该意图的平台。
一些现有的软件即服务(Software as a Service,SaaS)模型通常向其消费者推广服务级别目标(SLO)的特定于服务集。例如,数据分析平台可促进每小时可被计算的数个作业。这从用户的角度来看很好,但仍然需要SaaS提供商在向资源编排器发送请求之前抢先地将SLO映射到所需的资源。服务提供商无法基于SLO来自动地选择资源类型。
本文描述的系统和方法图示出意图(目标)如何可以自动、动态且直接映射到平台设置。意图被接收为更高级别的目标,并在整个编排堆叠中映射到较低级别的设置。
例如,考虑应用要求,即在时间窗口内完成某事的某一百分比,本文称为“P50等待时间”。也可以使用其他术语,这些术语可以是类似的,诸如“P50目标”或“P50完成”,以指示任务、项目、请求等在至少50%的时间需要按时完成,或者任务至少有50%的概率将按时完成。此意图被映射到较低级别设置,诸如用于指示线程级别优先级,并从那里映射到CPU缓存路/简档指派/资源分配。在输入/输出(input/output,I/O)侧,意图可被映射到网络设置,以确保足够的通信资源可用于发送并接收请求和响应。
为了动态适应不断变化的条件,系统和方法使用体系结构中各个级别的控制回路。控制回路可采用信用系统、效用函数/成本函数、规划和求解器等。根据受监测系统需要适应的速度,控制回路可以按不同的速度执行。在考虑计算系统的动态性时,此类控制回路特别重要和有用。例如,网络通信量可能每天都在变化。如果客户必须自己更改资源需求,那么他们使用服务提供商有附加负担。此外,此类更改可能很困难,因为做出此类决定所需的信息可能不会暴露给客户。相反,使用此处描述的系统和方法,客户只需指定意图,并且系统自动调整资源。这可为客户和服务提供商节省成本。
系统中的动态性也适用于生成的规划。这些规划具有时间要素。例如,规划可暂时(例如,以分钟为单位)以向工作负载分配大量资源为目标,以便在快速控制回路的监督下赶上SLA,然后在更长的时间段内(例如,每月)寻求在较慢的控制回路的监督下实现可接受和负担得起的资源分配模式。该规划可以自动触发,或者可以部分手动触发,例如通过首先将规划作为建议发送给人类操作员以实现人类指导。
此外,从持续改进的角度来看,规划的时间方面也可能有用。满足系统体系(system-of-systems)中所有SLO的规划可能被另一个规划所取代,该规划也满足所有SLO,但会触发不同的设置、配置或策略集。例如,为了准备维护,SLO可以更有效地使用资源,为传入工作负载/服务腾出空间等。
在分散式面向服务的平台的情况下,编排的复杂性进一步增加。这里描述的系统和方法解决了跨可由不同利益相关者拥有的多个站点的编排。各个部分可实施协商和协调以实现总体意图,当没有集中式编排时,这至关重要。
在实现方式中,服务提供商可以部署具有应用上下文元数据的计算单元(例如,舱),以便节点可以在快速控制回路中做出更适当的应用决策,并可能选择不降低低优先级工作负载的优先级,因为其端到端影响性质。然而,这需要E2E视图,并且它包括节点的共同调度和共同优先级排定的概念,这必须为在堆叠的较高层执行操作的其他计算节点提供数据的安全功能(包括数据来源、合规性和记录)。在Kubernetes中,舱是可以创建且管理的最小的可部署计算单元。舱是具有共享存储和网络资源以及如何运行容器的规范的一个或多个容器的组。舱的内容总是共同定位且共同调度,并在共享环境中运行。
随着向意图驱动系统的转变,系统专注于从部署功能转向资源是否可潜在地可用,以及如何重新配置系统以使其可用。尽管在同一类别中,资源可能属于不同的类型:例如,高性能处理器(例如,Xeon CPU)相比于若干简化计算处理器(例如,Xeon-D),或单个大型XPU相比于若干较小XPU。此外,资源本身可包含不同类型的子资源/组件(例如,高效和高性能的核心等)。
在一些实现方式中,系统通过将面向服务级别目标的控制交给集群和基础设施管理员并消除必须指定可能错误的低级配置细节的负担,解决管理上管理复杂分布式基础设施的挑战。管理策略控制器和管理策略转换模块可以在编排体系结构中实现,并且用于管理多层意图驱动的管理策略的工作流可以在工作负载部署工作流中使用。可以使用管理策略的闭环控制,包括如何通过命令式配置的多次迭代来实现它们。面对不断变化的策略或策略不合规,它可以影响工作负载安置和重新安置。
系统可实现新的模型来驱动Kubernetes的生命周期管理(life-cycle management,LCM),以反映应用的需求,而不是Kubernetes管理员的假设。应用被临时部署(以支持快速启动),并且随后将部署具有更好地反映应用需求的集群和节点级策略的新Kubernetes实例。工作负载随后被移动到新的集群。
当前共享联合资源(如缓存分配技术(Cache Allocation Technology,CAT)和存储器带宽分配(Memory Bandwidth Allocation,MBA))和功率的方法依赖于由特定动态控制器(例如,资源管理守护进程(Resource Management Daemon,RMD)、动态资源控制器(Dynamic Resource Controller,DRC)、Appqos等)监测的应用的KPI或使用遥测感知调度来处理耗尽。将“资源请求中介”集成到编排中可以有基于消息的系统,独立于(由应用本身监测的)应用KPI。因为时间是分成(share)的因素,中介可以在平台上具有本地代理,并且可以基于集群“分成”策略做出本地决策。各个舱可以签署静态合约、“保证资源合约”、平等分成合约或动态(投标)合约。竞争请求由本地中介代理仲裁,该代理可以操作投标/要约方案,例如,“我愿意在时间段N内放弃资源X换取资源Y”。
当组件分布在多个资源中时,会出现安全风险。在基于意图的编排中,并且类似于QoS类,系统可允许用户定义他们对环境中的安全或信任的某些方面有多“敏感”,或者他们愿意接受多少风险。系统可包括用于监测、分析和评估风险的编排控制平面的附加组件以及能够将评估转换为策略、资源分配等的集合的组件的集合。
图9是图示根据实施例的具有多个硬件系统902A和902B的操作环境900的框图。操作环境900可被认为是北-南(例如,全栈)和东-西(例如,E2E)延伸的“系统体系”。在系统902A或902B中的每一层,不同类型的意图可从北到南或从东到西映射到SLO。栈中各层处的SLO可以用每秒帧(frames per second,FPS)、等待时间、每周期指令(instructions percycle,IPC)等来描述。企业或系统之间的SLO可以用构成服务的各个应用需要如何互动以实现总体意图目标来描述。例如,E2E SLO可包括P99等待时间<100ms要求、前端最大10ms、后端5ms、缓存最大10ms等。为了实现全栈SLO和E2E SLO的目标,系统执行从较高层到较低层的策略,并在跨系统的层内的组件之间协调或协商。
全栈或E2E(例如,系统到系统)SLO可以随着时间的推移而变化,以范围表示(例如,最小和最大可允许值),允许在某一时间段内偏差或变化超出范围,以优选或使用其他优先级方案表示等。例如,任务必须在60分钟内在99%的时间符合P99合规性,同时不超过10ms,并以5ms的优选合规级别运行。
在一些实现方式中,在节点上使用与其工作负载相关联的边车的集合。边车协调以确保节点、平台、设施等设置正确,从而可以满足其工作负载的目标。边车可以监测特定的设置并执行正确的策略,从而分配正确的资源,调整设置,以便可以满足舱的意图等。
在一些安装中,当提供工作负载的基于服务级别目标的输入参数时,对编排系统决定的资源分配设置收费/计费约束存在挑战。两个新组件启用意图驱动充电和意图驱动计费:1)充电护栏功能和2)SLO规划功能。充电护栏功能的概念被引入是编排体系结构中的逻辑中心点的部署工作流中。它充当负责控制和指导面向SLO的资源规划组件以确保用户能够负担得起所分配资源的实体。SLO规划功能需要考虑所分配资源的成本基础,而不仅仅是它们可能遵守工作负载SLA的适合性。
图10是图示根据实施例的编排控制平面1000的框图。编排控制平面1000通过使用应用编程接口(application programming interface,API)1002是可访问或可配置的。设置、数据或其他信息可被存储在数据库1004中。编排控制平面1000包括资源管理器1006、控制器1008、调度器1010、规划器1012、监测器1014、持续改进模块(continuous improvementmodule,CIM)1016和可观察性栈1018。规划器1012、CIM 1016、监测器1014或编排控制平面1000的其他组件可以访问知识数据库1020中的数据或将数据存储在知识数据库1020中。例如,知识数据库1020可包括用作规划器或调度器的输入的各种数据。知识数据库1020可包括可用于确定任务的安排和资源的利用的网络拓扑信息。
规划器1012可以使用硬接线电路、可编程硬件设备(例如,ASIC)或作为在(例如,通用CPU上的)硬件平台上执行的指令实现。规划器1012可被配置、设计、编程或以其他方式调整以将意图或目标映射到SLO。规划器1012也可将SLO分解为可操作的规划。规划器1012可用于将SLO要求自动转换或映射到适当的舱规范,舱规范可包括跨计算、网络、存储装置和设施(例如,功率)域的资源要求、平台特征或策略。将目标映射到策略和较低级别的目标设置可实施启发式、机器学习(machine learning,ML)或人工智能(artificialintelligence,AI)机制、工作负载表征(例如,从在线数据导出或通过离线实验或通过沙盒)、或来自资源所有者的用于指导如何使用所有者的系统的策略。
规划器1012可被进一步用于与另一个规划器1022系统到系统(例如,E2E)地协调,并映射属于潜在不同利益相关者的多个存在点(point-of-presence,PoP)。可以使用各种类型的协调和协商方案。例如,多属性效用理论(multiple attribute utility theory,MAUT)模型可用于协商资源分配。
规划器1012监督将意图转换为行动策略、系统设置、资源要求等。它基于存储在知识数据库1020中的见解来这么做。一旦规划可用,它就会由调度器1010实施和执行。
规划可以使用编排控制平面1000中的各种级别的多个SLO来限定。例如,编排控制平面1000的较高级别上的SLO可用于调节和控制FPS,而编排控制平面1000的较低级别上的SLO可用于调节和控制IPC。供应商、用户和服务提供商可以使用标准化格式限定SLO。SLO还可包括护栏,这些护栏提供与目标或极限值的一些变化。例如,护栏可允许10%违反P95长达10分钟。护栏也可以是有条件的。例如,如果系统在此之后将保证P99合规性,护栏可允许10%违反P95长达10分钟。
随着异构计算设置和XPU环境的增加,较低级别的编排和资源管理器可被配置成用于支持非常粒度级别的工作负载的共同调度和共同优先级排定。
在为资源指派任务时,安排问题很难解决。与基于集群的调度不同,该系统允许基于操作与所需的完成截止日期的接近性来调整本地资源的优先级。负载平衡和自动缩放动作在图瓶颈处在本地发起,而无需从集中调度器驱动。与来自集中或层次体系调度器的持久指令相比,这些动作也是时间有限的。
一些资源(诸如处理器)可以按优化功率使用的方式进行编排。处理器功率级别(例如,PL1、PL2、PL3等)用于限定阈值功耗。系统平台以细粒度方式不断调整这些PL值和其他功率值(封顶、P状态、非核心频率)。但是,鉴于将性能与功率与SLA链接的传输函数的高度时变、情境化性质,这是复杂的映射,因此调整是通过预先训练的模型驱动的。预先训练的模型将相对于利用率和功率的各种时间序列衍生的趋势信号作为输入,并且它们通常可以是在粗粒度类型工作负载组合(例如,“AI”、“gRPC重型”、“媒体”等)上训练的模型。
当客户在注册功能时表达存储访问意图时,这些注册意图为基础设施层提供了足够的上下文,以实现从存储层到功能的有效数据移动。这是通过调度数据旁边的功能、使用保存数据的服务器上的计算加速器或利用服务器内部或跨服务器的高效数据传输机制来完成的。关键点在于,这是在功能不需要具体了解服务器位置或必须编程特定计算资源或传输机制的情况下实现的。调度/安排是流程开始时的功能。由于访问模式在部署时可能并不明显,该系统还实现数据局部性和传输速率的运行时评估,并使用该见解触发自动重新调度事件,例如,示出哪些功能/微服务擅长处理哪种数据的直方图。
CIM 1016寻找选项以使当前操作更有效,同时分析策略的权衡或变化,并负责预测该系统在不久的将来将如何运作。这种预测是实现主动规划的关键。被动或主动规划可用于各种时间尺度(以满足各种快速/缓慢)回路。
监测器1014从可观察性栈1018获取输入,并使用这些信息来馈送或触发规划器1012和CIM 1016。此外,可观察性栈1018使用在线和离线学习过程负责确保知识数据库1020中的见解、启发式等是准确的。离线学习可以通过基于实验的工作负载表征来实现。可观察性栈1018可收集训练数据以通过使用所收集数据的分析使体系结构自我进化。训练数据可从监测器捕获的现实世界数据导出。或者,训练数据可被离线准备并被提供给可观察性栈1018。使用CIM 1016提供在系统中具有持续改进能力并实现自我适应、自我修复和优化的优势。
为了提供持续改进,多个控制回路可被实现。图11是图示根据实施例的编排系统中的数据和控制流的框图。基于意图的SLO在SLO转换器1102处接收,该SLO转换器1102将经转换SLO馈送给服务监测器1104。SLO转换器1102可以是规划器1012的实例、是规划器1012的组件或包括规划器1012。服务监测器1104可以是监测器1014的实例、是监测器1014的组件或包括监测器1014。
SLO转换器1102可以使用规则和词典的数据库(例如,知识数据库1020)将基于意图的SLO映射到三个方面:1)监测参数,2)配置参数和3)时间域参数。
监测参数由服务监测器1104在监测服务、任务或作业时使用。监测参数可包括一系列灵活的护栏和所需的遥测以供服务监测器1104用于积极监测操作。
护栏可以提供时间有界和范围有界的灵活性,使得它们变得上下文敏感和适应情况。因此,应用于编排器的功能的护栏可非常缓慢但无缝地移位,以便准许通过提供一系列本地化的余地来最大化可期望端到端目标。这个想法在于实现三个重要的灵活性:a)采取最困难的约束(诸如P99.9等待时间)并允许它在短时间内从固定阈值移动到阈值范围(例如,+10%),在稍后的延长时间段得到更好的P99.9等待时间补偿;b)一次对资源分配进行可能昂贵的调整,并以有界的时间将其移出,在此期间,软化护栏,以便令人满意的解决方案可以继续运行,以及c)准许对紧急需求、要求等的更丰富的系统响应,以处理数据中心的其他部分中的瞬时故障,这需要更灵活地共享资源,直到维修和随后的正常操作能够恢复。
护栏的当前方法涉及在预先定义的时间段内使用阈值化和集成来评估护栏交叉和随后的补救。允许护栏变得“有状态”或基于“上下文”允许在特定条件期间软化硬约束。例如,当工作负载缓存数据时,CPU利用率可被允许在首次部署工作负载时达到峰值,但在那之后,在正常操作中,过度的CPU利用率可触发护栏交叉。系统增加上下文的知识作为实施护栏的上下文信息,上下文包括生命周期分段、在服务升级中、HA故障转移、服务网格重新启动等。
配置参数由编排器和资源管理器使用来配置计算、网络、存储器和其他资源。配置参数可以表示为一系列编排目标,这些目标被馈送到最高级别的编排系统,并由编排堆叠的每个较低层转化为一系列子目标。编排堆叠的底部是可以通过细粒度控制进行调整的物理硬件组件。因此,一系列资源控制器可在计算平台上执行策略。计算平台可以是CPU、GPU、FPGA、加速器、IPU或其他类型的处理设备。
时域参数用于配置控制回路以设置监测周期以及对配置参数进行更改的频率。SLO转换器1102生成SLO监测的时域,范围从非实时监测到实时监测。时域指定相对应SLO的严格监测和编排反馈响应时间。时域在图11中以主观术语示出为“较慢”、“慢”和“较快”,但可以按任何时间测量(诸如微秒、小时、天等)指定,这取决于由SLO转换器1102映射到时域的要求。这些时域参数可以是固定的、自动更新的或单独可配置的。
服务监测器1104具有监测E2E遥测1106、非实时遥测1108、近实时遥测或实时遥测1110的层。每个层具有相对应的控制回路,该控制回路可具有不同的时域参数。
SLO转换器1102将意图转换为E2E的“服务级别监测”、缓慢资源监测和快速资源监测。基于规则、策略和所学习的见解,SLO转换器1102将意图映射到一个或多个服务监测器,这些服务监测器可以基于意图的类型、所需的反应速度或其他要求进行实例化。SLO转换器1102配置服务监测器,以在“物理SLA”或“物理SLO”越界时向编排堆叠中的实体提供通知。服务监测器可以包括经典的服务保证解决方案以使用被动或主动探针、软件定义联网(software defined networking,SDN)控制器或SDN分析系统来监测E2E SLA。较快服务监测器可以根据需要在平台上共同定位以实现映射的SLO所需的响应时间。
系统可采用例如在组件的部署上注入智能可观察性以及如何在正确的位置自动注入监测的方法。在组件的部署后,系统可形成实现自动SLW补救的控制回路的一部分。当有补救的情况时,系统确保有足够的控制就位以提供有效并且不会无意中影响其他服务的校正动作。
如图11所示,基于意图的编排可以使用编排器1112-1114的层次体系来实现。标准编排器允许用户将应用描述为组件和将这些组件布置在平台上的要求的集合。层次体系编排可用于允许将问题分解并分布在部分中,其中子编排器负责在节点的一个子集上调度应用的子集,而另一个子编排器负责在节点的不同子集上调度应用的不同子集。
与标准命令式编排不同,基于意图的编排可以通过允许用户将意图描述为组件要求的一部分来启用。这是一种声明性机制,其中用户正在声明期望的结果。因此,用户能够表达期望的结果,而不是表达特定的规则或参数(诸如在命令式机制中)。示例可能是实现某种给定的可用性级别或最大处理等待时间,其中多个实例可被部署在具有特定特性的节点上以实现该意图。意图是一种声明性表达。
基于意图的调度算法可被部署在子编排器中,而不是将基于意图的编排深度集成到标准编排器的调度器中。在这种情况下,当顶级标准编排器接收应用描述时,它可看到为应用的一个或多个组件指定的意图。它可选择请求基于意图的子编排器来调度这些组件。每个基于意图的编排器或子编排器可专门满足特定类型的意图。基于意图的子编排器可进一步将问题分解到其他子编排器中。
例如,考虑由摄取步骤、处理步骤和致动步骤组成的视频分析管线。总体应用可以被描述为每个相机的摄取组件、意图为不超过100ms等待时间的处理步骤以及每个致动器的致动组件。顶级编排器可以处置摄取和致动组件部署。处理可被传递给基于意图的编排器,该编排器可确定需要多少处理组件来进行负载平衡并实现期望的等待时间。基于意图的编排器甚至可以将任务细分到附加的子编排器,从而使用节点的多个集群来实现意图(或者可能实现集群级别的高可用性的附加意图)。
这种方法有几个优点。首先,没有必要将现有编排器中现有调度算法的复杂决策与同样复杂的基于意图的编排的决策合并。每个都可以用于问题的关键部分。此外,分布式决策允许将决策推动至接近处理。这可允许较快的反应性,这将有助于在工业用例中实现快速控制回路等。
在各种实施例中,顶级编排器被配置、编程或以其他方式适应接收来自客户的意图,标识何时需要基于意图的子编排,并限定顶级编排器与子编排器之间的交互。顶级编排器可能是标准编排器,而子编排器可能是基于意图的编排器,诸如图10中描述的基于意图的编排器。通过使用编排器的层次体系,通过较高级编排器与子编排器之间商定的SLA来解决这个问题。当子编排器不再能满足SLA时,它可以向作出请求的编排器指示。
为了实现这种编排器的组织,意图应以与标准编排器兼容的方式表达,并且这些标准编排器应该能够标识何时需要基于意图的子编排。协议可以在作出请求的编排器与用于满足作出请求的编排器的子编排器之间使用。
此外,当应用被拆分为单独编排的组件时,它们可具有影响总体编排的排序依赖关系。在存在此类排序依赖关系的情况下,可以用抽象术语描述它们。例如,在生产者-消费者流的用例中,生产组件可被指定为期望地将X个数据单元、事件、帧等放在消费组件之前。因此,每个组件的子编排器可对资源分配负有条件责任(消费者在T0时需要的资源比T0+Δ时少,而生产者在T0-Δ时需要的资源比T0时多)。这些“资源流”在子编排器之间变得紧密协调,以便我们示例中的生产者和消费者共同获得CPU、缓存、存储器带宽等的X分之一,但资源根据他们之间设计的共享无缝流动。同样,需要防止优先级反转;因此,虽然生产者可具有较低优先级,因为假设消费者正在努力追赶和缩小生产者领先的距离,但如果消费者继续快速缩短距离,以至于生产者现在必须努力保持领先,那么,优先级在它们之间根据距离快速流动而不是要求调度软件的侵入性调整是有意义的。
为了实现所请求的意图/目标,可以实现对加速技术(FPGA、GPU等)以及支持总体设置的硬件特征(例如,DRC)的需求。通常,加速器和XPU运行CPU代码开发人员无法通过指令直接控制的操作。因此,在加速器或XPU中以某种硬件特权执行、或以某种方式对更高级别的栈中的普通软件不透明的敏感操作,可以简化本需要共同调度安全过滤操作的安全边界约束。此外,较低级别特征需要向各种控制回路告知快速控制回路中正在发生的事情。这种类型的报告需要扩展/使用可观察性框架来跟踪、记录和监测。
图12是图示根据实施例的用于实现基于意图的编排的方法1200的流程图。在1202处,在编排器处接收用于任务的执行的基于意图的服务级别目标(SLO)。
在1204处,SLO被映射到多个策略。映射可基于静态图。或者,可以使用启发式或其他智能机制执行映射。
在1206处,多个策略被分发给多个子编排器,其中多个子编排器中的每个子编排器管理部分任务的执行。策略可以按类型、资源或其他因素分组或分开。子编排器可负责一组资源、一类资源、特定节点或节点集合等。
在1208处,任务的执行被监测。任务监测可以通过限定感兴趣的KPI,然后反复获得有关这些KPI的数据来执行。
在1210处,补救操作基于监测被发起。补救操作可包括诸如迁移、资源分配或解除分配、重新启动或挂起进程、容器、舱或微服务等之类的操作。
监测应用流的执行对于优化节点之间的资源编排至关重要。当前的监测机制通常导致大量可能与部署的应用无关的数据。结果是不必要的存储和传输开销。此外,通常需要手动配置来调整数据监测收集器,以提供相关信息并减少收集的数据量。这阻碍了高效的扩展。此外,现有机制不将监测度量映射到特定的SLA。
本系统和方法解决了这些缺点,并提供了测量基于意图的策略中概述的SLO实现的机制,在映射到微服务和物理基础设施时监测SLO,自动应用特定于SLO的补救以确保实现基于意图的策略,并确保补救不对基于意图的策略产生负面影响。
此处描述的系统、方法和操作使用四阶段方法来使监测SLO、评估SLO以及对利用SLO的应用进行补救自动化。此处概述了四个阶段,并在以下各部分中进行了更全面的描述。
第一阶段是自动测量基于意图的策略中概述的SLO的实现。第二阶段是在映射到微服务和物理基础设施平台时自动监测基于意图的策略中概述的SLO。第三阶段是自动应用特定于SLO的补救以确保实现基于意图的策略。第四阶段是自动评估补救以确保补救不会对基于意图的策略产生负面影响。
这些阶段在四个相互关联的部分中进行了描述,这些部分围绕着从意图输入中导出配置、部署、补救和补救控制的挑战。
部分1侧重于测量SLA成功率的方法论。这涉及自动处理意图规则(SLO)、使用输出生成适当标记的遥测上下文、根据SLO评估遥测、并基于评估来生成事件或警报的挑战。
部分2侧重于通过部署注入智能可观察性以及如何在正确的位置自动注入监测的方法论。
部分3侧重于实现自动SLA补救的方法论。这可以通过形成控制回路的一部分来实现,其采取措施解决不满足SLO要求的应用执行。
部分4侧重于确保安全补救动作的方法论。这可涉及确保补救措施中有足够的控制就位,以便校正动作具有期望效果,并且不会无意中影响其他服务。
应理解,监测器可用于端到端监测方案。监测器可跨基础设施被部署或实现。一些监测器可跟踪反映任务的执行的KPI,而其他监测器可跟踪与任务运行的本地计算不直接相关的KPI。相反,一些监测器可被用于跟踪计算平台、邻居计算平台、网络资源或其他可能与任务相关的基础设施。
部分1-测量SLA成功率的方法论
参照图13讨论部分1。图13是图示根据实施例的用于测量SLO的成功率的数据和控制流的框图。部分1描述自动生成监测分析并向分析馈送参数所需的“遥测标记/上下文”以将SLO/SLA与基于意图的策略相关并评估SLO/SLA的方法。
在框1302处,生成共同元数据上下文。该操作生成监测分析系统并向分析系统馈送参数所需的遥测标记和上下文,以将SLO/SLA与基于意图的策略相关并针对基于意图的策略评估SLO/SLA。这可包括自动生成可用于将微服务与平台、微服务与联网资源、微服务与服务链等关联的上下文形式。共同元数据上下文可基于从SLO意图监测规则数据库1304获得的规则。元数据可跨若干机器被分发或复制。元数据可以跨多个边缘或数据中心共享。
除了描述的相关性类型外,还可以使用其他类型的相关性,包括由基于数据或基于时间的上下文绑定的微服务到微服务相关性,该上下文与通过其微服务、功能、操作、任务等的链来管理请求的流动的上下文无关(orthogonal)。微服务的链处置给定请求的方式可受到此类不可见上下文(它们必须被提取)在另一应用或微服务的集合中触发的动作设置的策略的间接影响。规则可被触发,其中触发基于一些敏感数据值超过各种阈值,使得当这些阈值被超过时,管理端到端请求执行的SLA可能需要被挂起或替换。
例如,数据库服务可具有在100μs的P99等待时间内它必须完成100万次查找的SLA。现在假设一系列插入和删除基本上改变密钥的分布,而数据库实用程序需要执行各种本地动作来重新平衡索引结构。为了执行此重新平衡,数据库实用程序临时分配大量存储器,以便它可以快速完成索引修复任务。尽管前台工作与后台索引修复工作之间没有明显的上下文关系,这在一小段时间影响正在进行的操作及其SLA。在更复杂的示例中,它可在重新计算索引重新平衡的时间段期间更改各种查询的查询规划。
SLO意图监测规则数据库1304包含将SLO意图映射到各种特征的规则,包括但不限于:监测类型、域类型、KPI、所需上下文、有效KPI范围、KPI违反范围和可允许的临时偏移。域类型可包括基础设施(infra)、虚拟、服务网格、扩展伯克利分组滤波器(Extended BerkeleyPacket Filter,eBPF)、自上而下的微体系结构分析方法(Top-down MicroarchitectureAnalysis Method,TMAM)、资源(例如,缓存、速度选择技术(Speed SelectTechnology,SST))等。KPI违反范围可用于建立系统的护栏。SLO意图监测规则数据库1304中的规则可具有相互关系、依赖关系或是层次体系的。
在框1306处,监测器和KPI被选择。此类选择可基于所提供的意图类型。可以选择、配置、部署或实例化基础设施监测组件。在服务网格上下文和开放遥测类型上下文中,监测器或监测组件包括但不限于纠错和检测(error correction and detection,EDAC)、collectd、OpenTelemetry(开放遥测)、Telegraf、istio、kube_state_metrics(kube_状态_度量)、Syslog等。在一些情况下,包括多个上下文。例如,全局上下文可用于解决不同域之间的相关性。
遥测标记上下文具有取决于遥测指示的内容的有条件规则。例如,在具有不同阶段或不同潜在行为的复杂应用中,应用所有者可能希望在检测到某些模式时标记某些类型的遥测,这可允许一种有效的方法来检测根本原因问题。另一个示例是,所有者可能希望允许应用的某些界面,以指导根据正在执行的阶段或操作来监测哪些事情。这可包括允许应用指示其当前正在执行哪个阶段的界面,以确定要监测的相关度量类型。
在另一个实现方式中,系统可使用KPI的转换功能。例如,当应用因某些担忧(例如,安全性)而不想暴露所有遥测时,转换功能可与资源相关联。转换功能可以是特定于应用的,因此只有应用才能不转换数据并理解正在监测的度量。
转换功能被附加到某些类型的遥测度量(例如,存储器使用、计算功耗、网络吞吐量等)。不同的应用可为给定的遥测类型提供其自己的转换功能。转换功能规范包括:要监测的度量,以及转换功能的预期格式(例如,存储器带宽转换将生成低/中/高存储器边界)。服务可以将特定的转换功能注册到给定的遥测度量。服务可能需要将某种转换功能应用于给定的遥测(预先存在的或注册的)。监测器将为其数据需要被收集的每一个服务选择转换功能。转换功能可以在基于微服务的流中实现以与加速器或者甚至NIC一致。
在框1308处,生成监测类型域和跨域上下文。这可包括用于创建基于SLA规则专门配置的遥测收集器的操作。
在框1310处,分析系统1316被配置有监测源、上下文和相关联SLO衍生KPI范围。分析系统1316使用上下文将来自多个源的遥测与适当的SLO相关联,并在条件被满足时生成SLO违反。分析系统1316还可以往回向规则集(诸如存储在SLO意图监测规则数据库1304中的规则)提供输入。
将KPI的评估与意图相关是意图驱动的编排模型的重要组成部分。“遥测标记/上下文”将由遥测提供到分析系统1316中的所测量KPI链接到正在被监测的相关联SLO。多个遥测监测器可以共享相同的上下文,从而允许分析将来自多个域和源的遥测与相同的SLO相关联。
在框1312处,监测器被配置或部署。具有KPI的监测器被配置或部署成用于支持具有全局和跨域上下文的SLO监测。
应理解,监测器可用于端到端监测方案。监测器可跨基础设施被部署或实现。一些监测器可以与任务执行有关,而另一些可以与其运行的本地计算没有直接关系。因此,监测器可用于跟踪和记录与任务相关的来自计算平台和基础设施资源的执行的遥测。
例如,从相机访问RSFTP流的任务可能存在性能问题,不是因为计算,而是因为到相机的网络流,该相机可能在基础设施中。因此,端到端监测(包括与确定任务相关的资源)有助于确定SLO被破坏的原因。该原因可源于本地或远程。
在框1314处,所配置的KPI使用监测器或监测组件来监测。遥测被传输到分析系统1316,该系统可更新SLO意图监测规则数据库1304中的规则。例如,如果为规则中的一些指定的范围在正常范围以外某个标准差,则规则可被改进以更好地反映SLO。分析系统1316还可以为其他内部或外部组件、系统、平台(诸如服务保证监测和警报系统、管理操作或系统(management operations or system,MANO)、或操作支持系统(Operations SupportSystem,OSS)或业务支持系统(Business Support System,BSS)平台)等提供接口。
可以利用机器学习自动训练系统,以识别哪些遥测需要特殊规则。分析系统1316可以使用机器学习,并且来自机器学习的输出可以用作对存储在规则数据库1304中的规则的反馈。此外,统计分析和简单建模(结合一些关键度量)可以帮助限定衍生度量。这些可用于提供反映系统如何执行的简化状态。
部分2——用于通过部署注入智能可观察性的方法论
部分2侧重于向编排流注入智能可观察性的机制。图14是图示根据实施例的用于将监测代理注入到编排环境中的数据和控制流的框图。图14的数据和控制流可以是选择监测器和KPI(图13的框1306)或配置或部署监测器(图13的框1312)的操作的实现方式或实例。图14的元素可能是图13中描述的核心监测思想的延伸,在基础设施上添加新的监测实体。这是负责监测和连接大规模微服务的编排或管理网络的扩展。
在框1402处,微服务监测代理被组装。在框1404处,基础设施监测代理被组装。存在两种类型的监测器被组装:微服务代理和基础设施代理。微服务代理用于监测微服务的执行,而基础设施代理用于监测操作平台(例如,全局资源监测)。来自SLO意图监测规则数据库1304中的规则可用于配置微服务或基础设施监测代理。
在框1406处,监测规则被组装。可以添加用于激活用于发出预编写(例如,预编码)监测动作的规则的基于规则的框架和API,以及用作替代决定何时和多长时间参与不同类型的监测的策略编码的推理引擎。
在框1408处,网格监测器被组装。组装网格监测器可包括指派唯一标识符、实例化或编译监测器、配置已部署的监测器等。
在框1410处,分析系统1412被配置有用于SLO的监测源。这可以是上述操作的实例或实现方式(例如,图13的框1310)。分析系统1412可以是分析系统1316的实例、实现方式或扩展。分析系统1412可实现反馈回路来调整监测强度。例如,监测规则可以是自适应的。监测“强度控制器”因素可用于对工作流程执行自我调整。当度量接近SLO阈值时,数据监测的频率、类型或度量数量可增加。相反,当度量指示SLO没有被违反的危险时(例如,系统中存在过度松弛),则监测频率、类型或度量数量可减少。这减少监测开销。通过人工智能操作(artificial intelligence operation,AI-Op),经训练的控制器可以执行对SLO监测规则的自动更新。
在框1414处,监测器被注入。注入可包括标记通过网络和与特定网格执行相关联的平台的数据流。例如,如果有服务A到服务B到服务C的网格。新请求可首先在服务A执行,并且结果被发送到服务B,其中然后服务B的结果被发送到服务C。唯一标识符可被附加到流或与流相关联。该唯一标识符穿越平台和基础设施。每个组件可包括组件的遥测,并将其存储在全局遥测实体中。例如,当具有ID的请求穿过网络交换机时,n毫秒的穿过网络交换机的等待时间被记录。自动标记服务数据流添加比从当前服务网格度量可获得的更多的信息,这些度量往往只监测网格本身。
监测注入可包括诸如注入开放遥测边车、Telegraf边车、配置eBPF流监测或注入网格流监测器之类的操作(例如,网格流监测可用于针对通过网格的特定流而监测和注入)。监测度量被报告给分析系统1412。
监测器可被部署作为容器中的边车。或者,监测器可以作为守护进程集或操作器部署。监测器也可被部署作为ansible,一种裸金属部署工具。边车监测器可被部署在VM中(在VM内部运行的容器中)。
部分3——用于实现自动SLA补救的方法论。
部分3侧重于实现自动SLA补救的机制。图15是图示根据实施例的用于处置编排环境中的补救的数据和控制流的框图。图15的数据和控制流可以是分析系统的操作的实现方式、实例或扩展,以提供基于持续学习对规则的更新,如图13总体所描述。
在框1502处,生成唯一SLO跟踪器元数据。这可以是框1302中描述的操作的扩展,在框1302中生成共同元数据上下文。
在框1504处,生成可允许的补救策略。这些策略可基于存储在SLO护栏规则数据库1506中的护栏规则。可允许的补救基于特定策略、目标平台和联网的护栏规则自动生成,以实现特定于策略的补救目的、目标或SLA。补救策略可特定于与硬件可用性SLA、网络可用性SLA、存储、加速、服务网格可靠性SLA、负载平衡器SLA等相关的服务可用性SLA。生成的策略被存储在SLO补救策略数据库1508中,该数据库用于应用补救的稍后操作。
SLO补救策略数据库1508中的补救策略可自动更新。在实施例中,训练或使用强化学习使用应用特性、SLA、意图、简档描述、当前遥测作为输入,并生成补救策略作为输出。大规模地,可以对补救进行评分,并可以生成/重新生成改进的补救。
补救的类型可有所不同。例如,补救可包括节点或集群级别的定量或定性补救。通过应用于SLO的阈值(例如,达到SLO的x%),可以应用一些本地(例如,节点级别、CPU级别、服务器级别)定量分配,以帮助避免SLO被破坏(受策略约束)。分配定性资源可能需要集群级别见解,这可能需要微服务重新启动事件来了解新功能。
SLO护栏规则数据库1506包含将基于意图的SLO映射到以下各项的规则:硬件可用性SLA;网络可用性SLA;存储、加速或服务网格可靠性SLA;负载平衡器SLA;canary推出补救以在系统的一部分进行测试;等。
护栏可以允许基于时间的临时(瞬时)偏移,以用于获得更高的资源分配(“涡轮资源”),并协商返回一段偿还期。SLA中介可用于协商由应用群组、云管理平台或第三方提供的SLA中介对护栏偏移的临时偏移和偿还。该SLA中介可与监测和分析系统沟通,以确定何时超过“可允许的偏移”时间或未提供“偿还”。
在框1510处,分析系统1512被配置有SLO跟踪器元数据和可允许的偏移(护栏)。
在框1514处,监测器被配置有SLO跟踪器元数据。监测器可被部署作为容器中的边车。或者,监测器可以作为守护进程集或软件实现的操作器部署。监测器也可被部署作为ansible,一种裸金属部署工具。边车监测器可被部署在VM中(在VM内部运行的容器中)。
在现有的编排分布式计算环境中,数百甚至数千个微服务可被部署。基于软件或软件实现的操作器被用于管理分布式资源和可执行组件。操作器可以基于SLO/SLA策略配置硬件或软件。大多数管理硬件的操作器由平台提供商拥有或提供,但一些管理软件的操作器可由客户提供。一般来说,操作器是用于在数据中心级别设置、监测、配置和执行操作的软件结构。软件实现的操作器可被部署有容器或工作负载。在Kubernetes中,操作器是特定于应用的控制器,其可以帮助您打包、部署和管理Kubernetes应用。操作器扩展Kubernetes的功能并提供自动化。软件代理、设施和实用程序可以提供与操作器相同或类似的服务。
在框1516处,使用监测器监测KPI。遥测被传输到分析系统1512。当检测到来自SLO的警报偏移时,SLO补救策略数据库1508限定在平台和集群级别应用的具体补救。分析系统1512可触发本地平台补救(框1518)。本地补救使用来自SLO补救策略数据库1508的策略。此外,可以实施集群级别补救(框1520)。本地补救是指在节点级别、服务器级别、CPU级别等上执行的补救操作。
部分4——用于确保安全补救动作的方法论
部分4侧重于确保编排流程中的安全补救动作的机制。图16是图示根据实施例的用于防止补救对基于意图的策略产生负面影响的数据和控制流的框图。图16的数据和控制流可以是分析系统的操作的实现方式、实例或扩展,以提供基于持续学习对规则的更新,如图13总体所描述。如部分3的讨论中所述,护栏允许与SLO目标有一些偏差。
在框1602处,生成唯一SLO跟踪器元数据。
在框1604处,生成补救评估规则。补救评估规则可以从SLO护栏规则数据库1606中选择。评估规则被存储在SLO补救评估规则数据库1608中,该数据库稍后在监测补救时使用。
在框1610处,分析系统被配置有SLO跟踪器元数据和可允许的偏移。
在框1612处,监测器被配置有SLO跟踪器元数据。监测器可被部署作为容器中的边车。或者,监测器可以作为守护进程集或操作器部署。监测器也可使用ansible(一种裸金属部署工具)部署。边车监测器可被部署在VM中(在VM内部运行的容器中)。
在框1614处,使用监测器监测KPI。遥测被传输到分析系统1616。当检测到来自SLO的警报偏移时,SLO补救评估规则数据库1608提供在平台和集群级别应用的具体补救。分析系统1616可触发本地平台补救或集群级别补救,或本地平台补救或集群级别补救可被实施(框1618)。补救受到监测(框1620),而监测结果可被反馈回到分析系统1616。
在框1622处,对补救进行评估和评分。补救可包括节点级别补救、集群级别补救或两者的组合。
反馈回路用于允许/不允许基于历史的类型的补救。分析或机器学习(ML)可用于向过去学习,并基于示出的反馈回路更改补救。如果评分低,补救可被撤回,并且系统状态可被清理(框1624)。补救清理的策略可被存储在SLO补救策略数据库(框1626)中。由于评分低,因此可创建新的补救护栏或可调整现有的护栏(框1628)。
此外,系统可提供在canary(部分)推出的基础上推出补救的选项,以限制不期望结果可影响总体服务的暴露风险。
在多租户的情况下,补救策略能够改善服务正在做的事情,并监测对系统上运行的其他服务的影响。一旦补救被正确映射到类别中,系统操作器可以使用哪些补救规则最适合特定情况或特定状态、以及它们可能如何影响其他服务的映射。周边服务也受到监测,以了解补救的影响。
安全还可包括当补救动作没有按期望完成时,或者当补救动作完成但未能实现期望的补救时的安全清理。此类操作对于防止异常级联至关重要,特别是因为补救可能很少进行,因此很难在canary测试中获得足够的测试覆盖范围。补救可以根据原子(全有或全无)协议进行,其中资源指派的状态从以前的稳定状态更改为应用所有更改的新状态。安全是通过确保此类动作是原子的并且不会中途执行并留下应该释放的资源已分配来实现的。
系统还基于阈值或影响提供快速和缓慢的、受控推出的补救回路,其中节点级别补救进展到集群级别。控制补救的范围和速度的另一种方法是添加效果或建议补救的预览,这将补救的部署范围在一段时间内限制在非关键或“试点”集群,并在更广泛地推出补救之前监测影响。
图17是图示根据实施例的用于注入自动生成的SLO监测器并实现补救的方法1700的流程图。在1702处,方法1700包括在编排系统处接收基于意图的服务级别目标(SLO),以供用于执行多个任务。
在1704处,方法1700包括生成将SLO与多个任务的执行相关的共同上下文。在实施例中,生成共同上下文包括访问存储控制参数的规则数据库。在实施例中,共同上下文包括与多个任务相关联的唯一标识符。在相关实施例中,共同上下文包括与多个任务相关联的标签。
在1706处,方法1700包括选择多个监测器来监测多个任务的执行,多个监测器用于记录多个关键性能指标。在实施例中,多个监测器包括软件实现的操作器或代理。在实施例中,选择多个监测器包括组装微服务监测代理。在相关实施例中,选择多个监测器包括组装基础设施监测代理。在相关实施例中,选择多个监测器包括组装分组滤波器监测代理。在相关实施例中,选择多个监测器包括组装网格监测代理。
在1708处,方法1700包括生成多个任务的域上下文。
在1710处,方法1700包括利用由域上下文进行关联的多个监测器和多个关键性能指标来配置分析系统。
在1712处,方法1700包括部署多个监测器来收集遥测。在实施例中,部署多个监测器包括将转换功能与多个监测器中的监测器的遥测度量类型关联,转换功能由监测器用于对由监测器检测到的、在被传输到分析系统之前的数据进行转换。在实施例中,部署多个监测器包括将多个监测器作为边车注入多个任务中的相对应任务。
在1714处,方法1700包括使用来自多个监测器的遥测来监测多个任务的执行。在实施例中,监测多个任务的执行包括适应性地调整与关于多个任务的SLO的松弛程度成比例的监测强度。
在1716处,方法1700包括基于遥测执行响应动作。
在实施例中,分析系统从遥测训练机器学习模型,并使用经训练的机器学习模型来更新用于配置和部署多个监测器的规则。
在实施例中,方法1700包括生成补救策略,以便在多个任务中的任务违反与任务相关联的SLO时使用,并包括使用可允许的补救策略配置分析系统。在进一步的实施例中,方法1700包括检测与同任务相关联的SLO的偏差,并基于补救策略应用补救。在进一步的实施例中,应用补救包括应用本地补救。在相关实施例中,应用补救包括应用基于集群的补救。
在实施例中,方法1700包括评估补救以确定评分,并响应于评分低于质量阈值时执行对补救的清理。在进一步的实施例中,方法1700包括在评分低于质量阈值时创建新的补救策略。
本文档中描述的编排器或编排系统可以在装置、端点组件、设备、客户端设备、计算设备、节点、服务器、单独销售并集成到不同系统中的独立节点等中实现。系统体系结构可以在任何安装中实施编排系统。
各实施例可采用硬件、固件和软件中的一者或其组合实现。各实施例也可被实现为存储在机器可读存储设备上的指令,这些指令可由至少一个处理器读取并执行,以执行本文中所描述的操作。机器可读存储设备可包括用于以可由机器(例如,计算机)读取的形式存储信息的任何非暂态机制。例如,机器可读存储设备可包括只读存储器(read-onlymemory,ROM)、随机存取存储器(random-access memory,RAM)、磁盘存储介质、光存储介质、闪存设备、以及其他存储设备和介质。
如本文中所描述的示例可包括逻辑或者数个组件(诸如模块、知识产权(IP)块或IP核心、引擎、或机制),或可在逻辑或者数个组件(诸如模块、知识产权(IP)块或IP核心、引擎、或机制)上进行操作。此类逻辑或组件可以是通信地耦合到一个或多个处理器以执行本文中所描述的操作的硬件、软件配置的硬件或固件。逻辑或组件可以是硬件模块(例如,IP块),并且由此,逻辑或组件可被认为是能够执行指定操作的有形实体且可按某种方式来配置或布置。在示例中,可以按指定的方式将电路(例如,内部地或者相对于诸如其他电路之类的外部实体)布置为IP块、IP核心、片上系统(system-on-chip,SoC)等。
在示例中,一个或多个计算机系统(例如,独立的客户端或服务器计算机系统)或一个或多个硬件处理器的全部或部分可由固件或软件(例如,指令、应用部分、或者应用)配置为操作用于执行指定的操作的模块。在示例中,软件可驻留在机器可读介质上。在示例中,软件在由模块的底层硬件执行时,使得该硬件执行指定的操作。因此,术语硬件模块被理解为涵盖有形实体,该有形实体是被物理地构造、具体地配置(例如,硬连线)、或者临时地(例如,暂态地)配置(例如,编程)为以指定的方式操作或者执行本文中所描述的任何操作的部分或全部的实体。
考虑到其中临时配置模块的示例,这些模块中的每一个不需要在任何一个时刻进行实例化。例如,在模块包括使用软件而配置的通用硬件处理器的情况下,该通用硬件处理器可以在不同时间被配置为相应的不同模块。软件可相应地配置硬件处理器,例如以便在一个时间实例处构造特定的模块,并且在不同的时间实例处构造不同的模块。模块也可以是软件或固件模块,这些模块操作以执行本文中所描述的方法。
IP块(也称为IP核心)是逻辑、单元或集成电路的可重用单元。IP块可以用作现场可编程门阵列(FPGA)、专用集成电路(ASIC)、可编程逻辑器件(PLD)、片上系统(SoC)等的一部分。它可被配置用于特定目的,诸如数字信号处理或图像处理。示例IP核心包括中央处理单元(CPU)核心、集成图形、安全性、输入/输出(I/O)控制、系统代理、图形处理单元(GPU)、人工智能、神经处理器、图像处理单元、通信接口、存储器控制器、外围设备控制、平台控制器中枢等。
附加注释和示例:
示例1是一种编排系统,包括:处理器;以及用于存储指令的存储器,指令在由处理器执行时,使得编排系统用于:在编排系统处接收基于意图的服务级别目标(SLO)用于多个任务的执行;生成将SLO与多个任务的执行相关的共同上下文;选择多个监测器来监测多个任务的执行,多个监测器用于记录多个关键性能指标;生成多个任务的域上下文;利用由域上下文相关的多个监测器和多个关键性能指标来配置分析系统;部署多个监测器来收集遥测;使用来自多个监测器的遥测监测多个任务的执行;以及基于遥测执行响应动作。
在示例2中,示例1的主题包括,其中共同上下文包括与多个任务相关联的唯一标识符。
在示例3中,示例1-2的主题包括,其中共同上下文包括与多个任务相关联的标签。
在示例4中,示例1-3的主题包括,其中为了生成共同上下文,编排系统用于访问存储控制参数的规则数据库。
在示例5中,示例1-4的主题包括,其中多个监测器包括软件实现的操作器或代理。
在示例6中,示例1-5的主题包括,其中为了部署多个监测器,编排系统用于将转换功能与多个监测器中的监测器的遥测度量类型关联,转换功能由监测器用于对由监测器检测到的、在被传输到分析系统之前的数据进行转换。
在示例7中,示例1-6的主题包括,其中分析系统从遥测中训练机器学习模型,并使用经训练的机器学习模型来更新用于配置和部署多个监测器的规则。
在示例8中,示例1-7的主题包括,其中为了选择多个监测器,编排系统用于组装微服务监测代理。
在示例9中,示例1-8的主题包括,其中为了选择多个监测器,编排系统用于组装基础设施监测代理。
在示例10中,示例1-9的主题包括,其中为了选择多个监测器,编排系统用于组装分组滤波器监测代理。
在示例11中,示例1-10的主题包括,其中为了选择多个监测器,编排系统用于组装网格监测代理。
在示例12中,示例1-11的主题包括,其中为了部署多个监测器,编排系统用于将多个监测器作为边车注入多个任务中的相对应任务。
在示例13中,示例1-12的主题包括,其中为了监测多个任务的执行,编排系统用于适应性地调整与关于多个任务的SLO的松弛程度成比例的监测强度。
在示例14中,示例1-13的主题包括,其中编排系统用于:生成补救策略以用于当多个任务中的任务违反与任务相关联的SLO时使用;以及使用可允许的补救策略配置分析系统。
在示例15中,示例14的主题包括,其中分析系统用于:检测与同任务相关联的SLO的偏差;以及基于补救策略应用补救。
在示例16中,示例15的主题包括,其中为了应用补救,分析系统用于应用本地补救。
在示例17中,示例15-16的主题包括,其中为了应用补救,分析系统用于应用基于集群的补救。
在示例18中,示例1-17的主题包括,其中分析系统用于:评估补救以确定评分;以及响应于当评分低于质量阈值时而执行对补救的清理。
在示例19中,示例18的主题包括,其中分析系统用于:当评分低于质量阈值时,创建新的补救策略。
示例20是一种方法,包括:在编排系统处接收基于意图的服务级别目标(SLO)用于多个任务的执行;生成将SLO与多个任务的执行相关的共同上下文;选择多个监测器来监测多个任务的执行,多个监测器用于记录多个关键性能指标;生成多个任务的域上下文;利用由域上下文相关的多个监测器和多个关键性能指标来配置分析系统;部署多个监测器来收集遥测;使用来自多个监测器的遥测监测多个任务的执行;以及基于遥测执行响应动作。
在示例21中,示例20的主题包括,其中共同上下文包括与多个任务相关联的唯一标识符。
在示例22中,示例20-21的主题包括,其中共同上下文包括与多个任务相关联的标签。
在示例23中,示例20-22的主题包括,其中生成共同上下文包括访问存储控制参数的规则数据库。
在示例24中,示例20-23的主题包括,其中多个监测器包括软件实现的操作器或代理。
在示例25中,示例20-24的主题包括,其中部署多个监测器包括将转换功能与多个监测器中的监测器的遥测度量类型关联,转换功能由监测器用于对由监测器检测到的、在被传输到分析系统之前的数据进行转换。
在示例26中,示例20-25的主题包括,其中分析系统从遥测中训练机器学习模型,并使用经训练的机器学习模型来更新用于配置和部署多个监测器的规则。
在示例27中,示例20-26的主题包括,其中选择多个监测器包括组装微服务监测代理。
在示例28中,示例20-27的主题包括,其中选择多个监测器包括组装基础设施监测代理。
在示例29中,示例20-28的主题包括,其中选择多个监测器包括组装分组滤波器监测代理。
在示例30中,示例20-29的主题包括,其中选择多个监测器包括组装网格监测代理。
在示例31中,示例20-30的主题包括,其中部署多个监测器包括将多个监测器作为边车注入多个任务中的相对应任务。
在示例32中,示例20-31的主题包括,其中监测多个任务的执行包括适应性地调整与关于多个任务的SLO的松弛程度成比例的监测强度。
在示例33中,示例20-32的主题包括:生成补救策略以用于在多个任务中的任务违反与任务相关联的SLO时使用;以及使用可允许的补救策略配置分析系统。
在示例34中,示例33的主题包括:检测与同任务相关联的SLO的偏差;以及基于补救策略应用补救。
在示例35中,示例34的主题包括,其中应用补救包括应用本地补救。
在示例36中,示例34-35的主题包括,其中应用补救包括应用基于集群的补救。
在示例37中,示例20-36的主题包括,评估补救以确定评分;以及响应于当评分低于质量阈值时而执行对补救的清理。
在示例38中,示例37的主题包括,当评分低于质量阈值时,创建新的补救策略。
示例39是至少一种包括指令的机器可读介质,这些指令在由机器执行时使得机器执行示例20-38的方法中的任一项的操作。
示例40是一种包括用于执行示例20-38的方法中的任一项的装置的设备。
示例41是一种设备,包括:用于在编排系统处接收基于意图的服务级别目标(SLO)用于多个任务的执行的装置;用于生成将SLO与多个任务的执行相关的共同上下文的装置;用于选择多个监测器来监测多个任务的执行的装置,多个监测器用于记录多个关键性能指标;用于生成多个任务的域上下文的装置;用于利用由域上下文相关的多个监测器和多个关键性能指标来配置分析系统的装置;用于部署多个监测器来收集遥测的装置;用于使用来自多个监测器的遥测监测多个任务的执行的装置;以及用于基于遥测执行响应动作的装置。
在示例42中,示例41的主题包括,其中共同上下文包括与多个任务相关联的唯一标识符。
在示例43中,示例41-42的主题包括,其中共同上下文包括与多个任务相关联的标签。
在示例44中,示例41-43的主题包括,其中生成共同上下文访问存储控制参数的规则数据库。
在示例45中,示例41-44的主题包括,其中多个监测器包括软件实现的操作器或代理。
在示例46中,示例41-45的主题包括,其中部署多个监测器包括将转换功能与多个监测器中的监测器的遥测度量类型关联,转换功能由监测器用于对由监测器检测到的、在被传输到分析系统之前的数据进行转换。
在示例47中,示例41-46的主题包括,其中分析系统从遥测中训练机器学习模型,并使用经训练的机器学习模型来更新用于配置和部署多个监测器的规则。
在示例48中,示例41-47的主题包括,其中选择多个监测器包括组装微服务监测代理。
在示例49中,示例41-48的主题包括,其中选择多个监测器包括组装基础设施监测代理。
在示例50中,示例41-49的主题包括,其中选择多个监测器包括组装分组滤波器监测代理。
在示例51中,示例41-50的主题包括,其中选择多个监测器包括组装网格监测代理。
在示例52中,示例41-51的主题包括,其中部署多个监测器包括将多个监测器作为边车注入多个任务中的相对应任务。
在示例53中,示例41-52的主题包括,其中监测多个任务的执行包括适应性地调整与关于多个任务的SLO的松弛程度成比例的监测强度。
在示例54中,示例41-53的主题包括:用于生成补救策略以用于在多个任务中的任务违反与任务相关联的SLO时使用的装置;以及用于使用可允许的补救策略配置分析系统的装置。
在示例55中,示例54的主题包括:用于检测与同任务相关联的SLO的偏差的装置;以及用于基于补救策略应用补救的装置。
在示例56中,示例55的主题包括,其中应用补救包括应用本地补救。
在示例57中,示例55-56的主题包括,其中应用补救包括应用基于集群的补救。
在示例58中,示例41-57的主题包括,用于评估补救以确定评分的装置;以及用于响应于当评分低于质量阈值时而执行对补救的清理的装置。
在示例59中,示例58的主题包括,当评分低于质量阈值时,创建新的补救策略。
示例60是至少一种机器可读介质,包括指令,指令在由机器执行时,使机器执行操作,包括:在编排系统处接收基于意图的服务级别目标(SLO)用于多个任务的执行;生成将SLO与多个任务的执行相关的共同上下文;选择多个监测器来监测多个任务的执行,多个监测器用于记录多个关键性能指标;生成多个任务的域上下文;利用由域上下文相关的多个监测器和多个关键性能指标来配置分析系统;部署多个监测器来收集遥测;使用来自多个监测器的遥测监测多个任务的执行;以及基于遥测执行响应动作。
在示例61中,示例60的主题包括,其中共同上下文包括与多个任务相关联的唯一标识符。
在示例62中,示例60-61的主题包括,其中共同上下文包括与多个任务相关联的标签。
在示例63中,示例60-62的主题包括,其中生成共同上下文访问存储控制参数的规则数据库。
在示例64中,示例60-63的主题包括,其中多个监测器包括软件实现的操作器或代理。
在示例65中,示例60-64的主题包括,其中部署多个监测器包括将转换功能与多个监测器中的监测器的遥测度量类型关联,转换功能由监测器用于对由监测器检测到的、在被传输到分析系统之前的数据进行转换。
在示例66中,示例60-65的主题包括,其中分析系统从遥测中训练机器学习模型,并使用经训练的机器学习模型来更新用于配置和部署多个监测器的规则。
在示例67中,示例60-66的主题包括,其中选择多个监测器包括组装微服务监测代理。
在示例68中,示例60-67的主题包括,其中选择多个监测器包括组装基础设施监测代理。
在示例69中,示例60-68的主题包括,其中选择多个监测器包括组装分组滤波器监测代理。
在示例70中,示例60-69的主题包括,其中选择多个监测器包括组装网格监测代理。
在示例71中,示例60-70的主题包括,其中部署多个监测器包括将多个监测器作为边车注入多个任务中的相对应任务。
在示例72中,示例60-71的主题包括,其中监测多个任务的执行包括适应性地调整与关于多个任务的SLO的松弛程度成比例的监测强度。
在示例73中,示例60-72的主题包括指令用于:生成补救策略以用于在多个任务中的任务违反与任务相关联的SLO时使用;以及使用可允许的补救策略配置分析系统。
在示例74中,示例73的主题包括指令用于:检测与同任务相关联的SLO的偏差;以及基于补救策略应用补救。
在示例75中,示例74的主题包括,其中应用补救包括应用本地补救。
在示例76中,示例74-75的主题包括,其中应用补救包括应用基于集群的补救。
在示例77中,示例60-76的主题包括指令用于:评估补救以确定评分;以及响应于当评分低于质量阈值时而执行对补救的清理。
在示例78中,示例77的主题包括指令用于:当评分低于质量阈值时,创建新的补救策略。
示例79是至少一种机器可读介质,该至少一种机器可读介质包括指令,该指令当由处理电路系统执行时,使得该处理电路系统执行操作以实现示例1-78中的任一项。
示例80是一种设备,该设备包括用于实现示例1-78中的任一项的装置。
示例81是一种用于实现示例1-78中的任一项的系统。
示例82是一种用于实现示例1-78中的任一项的方法。
以上具体实施方式包括对所附附图的引用,所附附图形成具体实施方式的部分。附图通过图示方式示出可被实施的具体实施例。这些实施例在本文中也被称为“示例”。此类示例可包括除所示出或所描述的那些要素以外的要素。然而,还构想了包括所示出或所描述的要素的示例。而且,还构想了使用所示出或所描述的那些要素(或其一个或多个方面)的任何组合或排列的示例,或参考本文中所示出或所描述的特定示例(或其一个或多个方面),或参考本文中所示出或所描述的其他示例(或其一个或多个方面)。
在此文档中引用的出版物、专利和专利文档通过引用被整体结合在本文中,就好像通过引用单独地被结合那样。在本文档与通过引用结合的那些文档之间不一致的用法的情况下,所结合的(一个或多个)引用中的用法是对此文档的用法的补充;对于不可调和的不一致性,此文档中的用法占主导。
在此文档中,如在专利文档中常见的那样,使用术语“一(a/an)”以包括一个或多于一个,这独立于“至少一个”或“一个或多个”的任何其他实例或用法。在此文档中,除非另外指示,否则使用术语“或”来指代非排他性的或,使得“A或B”包括“A但非B”、“B但非A”、以及“A和B”。在所附权利要求书中,术语“包含(including)”和“其中(in which)”被用作相应的术语“包括(comprising)”和“其中(wherein)”的普通英语等价词。此外,在所附权利要求书中,术语“包含(including)”和“包括(comprising)”是开放式的,也就是说,在权利要求中包括除此类术语之后列举的那些要素之外的要素的系统、设备、制品或过程仍被视为落在那项权利要求的范围内。此外,在所附权利要求中,术语“第一”、“第二”、以及“第三”等仅用作标记,并且不旨在表明它们的对象的数值顺序。
以上描述旨在是说明性而非限制性的。例如,可结合其他示例来使用以上所描述的示例(或其一个或多个方面)。诸如可由本领域普通技术人员在仔细阅读以上描述之后使用其他实施例。摘要允许读者快速地确定本技术公开的性质。提交该摘要,并且理解该摘要将不用于解释或限制权利要求书的范围或含义。而且,在以上具体实施方式中,各种特征可编组在一起以使本公开精简。然而,权利要求可以不陈述本文中所公开的每一特征,因为实施例可以表征所述特征的子集。进一步地,实施例可包括比特定示例中所公开的那些特征更少的特征。因此,所附权利要求书由此被并入具体实施方式中,其中一项权利要求独立成为单独实施例。本文中所公开的实施例的范围应当参照所附权利要求书连同此类权利要求所赋予权利的等价方案的完整范围来确定。

Claims (25)

1.一种编排系统,包括:
处理器;以及
用于存储指令的存储器,所述指令在由所述处理器执行时,使得所述编排系统用于:
在所述编排系统处接收基于意图的服务级别目标(SLO)用于多个任务的执行;
生成将所述SLO与所述多个任务的执行相关的共同上下文;
选择多个监测器来监测所述多个任务的执行,所述多个监测器用于记录多个关键性能指标;
生成所述多个任务的域上下文;
利用由所述域上下文相关的所述多个监测器和所述多个关键性能指标来配置分析系统;
部署所述多个监测器来收集遥测;
使用来自所述多个监测器的所述遥测监测所述多个任务的执行;以及
基于所述遥测执行响应动作。
2.如权利要求1所述的编排系统,其特征在于,所述共同上下文包括与所述多个任务相关联的唯一标识符。
3.如权利要求1所述的编排系统,其特征在于,所述共同上下文包括与所述多个任务相关联的标签。
4.如权利要求1所述的编排系统,其特征在于,为了生成所述共同上下文,所述编排系统用于访问存储控制参数的规则数据库。
5.如权利要求1所述的编排系统,其特征在于,所述多个监测器包括软件实现的操作器或代理。
6.如权利要求1所述的编排系统,其特征在于,为了部署所述多个监测器,所述编排系统用于将转换功能与所述多个监测器中的监测器的遥测度量类型关联,所述转换功能由所述监测器用于对由所述监测器检测到的、在被传输到所述分析系统之前的数据进行转换。
7.如权利要求1所述的编排系统,其特征在于,所述分析系统从所述遥测训练机器学习模型,并使用经训练的机器学习模型来更新用于配置和部署所述多个监测器的规则。
8.如权利要求1所述的编排系统,其特征在于,为了选择所述多个监测器,所述编排系统用于组装微服务监测代理。
9.如权利要求1所述的编排系统,其特征在于,为了选择所述多个监测器,所述编排系统用于组装基础设施监测代理。
10.如权利要求1所述的编排系统,其特征在于,为了选择所述多个监测器,所述编排系统用于组装分组滤波器监测代理。
11.如权利要求1所述的编排系统,其特征在于,为了选择所述多个监测器,所述编排系统用于组装网格监测代理。
12.如权利要求1所述的编排系统,其特征在于,为了部署所述多个监测器,所述编排系统用于将所述多个监测器作为边车注入所述多个任务中的相对应任务。
13.如权利要求1所述的编排系统,其特征在于,为了监测所述多个任务的执行,所述编排系统用于适应性地调整与关于所述多个任务的SLO的松弛程度成比例的监测强度。
14.如权利要求1所述的编排系统,其特征在于,所述编排系统用于:
生成补救策略以用于在所述多个任务中的任务违反与任务相关联的SLO时使用;以及
使用能允许的补救策略配置所述分析系统。
15.如权利要求14所述的编排系统,其特征在于,所述分析系统用于:
检测与同任务相关联的SLO的偏差;以及
基于所述补救策略应用补救。
16.如权利要求15所述的编排系统,其特征在于,为了应用所述补救,所述分析系统用于应用本地补救。
17.如权利要求15所述的编排系统,其特征在于,为了应用所述补救,所述分析系统用于应用基于集群的补救。
18.如权利要求1所述的编排系统,其特征在于,所述分析系统用于:
评估所述补救以确定评分;以及
响应于当所述评分低于质量阈值时而执行对所述补救的清理。
19.如权利要求18所述的编排系统,其特征在于,所述分析系统用于:当所述评分低于所述质量阈值时,创建新的补救策略。
20.至少一种机器可读介质,包括指令,所述指令当由机器执行时,使所述机器用于执行操作,所述操作包括:
在编排系统处接收基于意图的服务级别目标(SLO)用于多个任务的执行;
生成将所述SLO与所述多个任务的执行相关的共同上下文;
选择多个监测器来监测所述多个任务的执行,所述多个监测器用于记录多个关键性能指标;
生成所述多个任务的域上下文;
利用由所述域上下文相关的所述多个监测器和所述多个关键性能指标来配置分析系统;
部署所述多个监测器来收集遥测;
使用来自所述多个监测器的所述遥测监测所述多个任务的执行;以及
基于所述遥测执行响应动作。
21.如权利要求20所述的机器可读介质,其特征在于,监测所述多个任务的执行包括适应性地调整与关于所述多个任务的SLO的松弛程度成比例的监测强度。
22.如权利要求20所述的机器可读介质,包括指令用于:
生成补救策略以用于在所述多个任务中的任务违反与任务相关联的SLO时使用;以及
使用能允许的补救策略配置所述分析系统。
23.如权利要求22所述的机器可读介质,包括指令用于:
检测与同任务相关联的SLO的偏差;以及
基于所述补救策略应用补救。
24.如权利要求23所述的机器可读介质,其特征在于,应用所述补救包括应用本地补救。
25.如权利要求23所述的机器可读介质,其特征在于,应用所述补救包括应用基于集群的补救。
CN202180099618.6A 2021-11-16 2021-12-24 用于端到端编排中的自主监测的系统和方法 Pending CN117501246A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202163280001P 2021-11-16 2021-11-16
US63/280,001 2021-11-16
PCT/PL2021/050093 WO2023091036A1 (en) 2021-11-16 2021-12-24 Systems and methods for autonomous monitoring in end-to-end orchestration

Publications (1)

Publication Number Publication Date
CN117501246A true CN117501246A (zh) 2024-02-02

Family

ID=80122872

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180099618.6A Pending CN117501246A (zh) 2021-11-16 2021-12-24 用于端到端编排中的自主监测的系统和方法

Country Status (5)

Country Link
US (6) US20220114251A1 (zh)
KR (2) KR20230073371A (zh)
CN (1) CN117501246A (zh)
DE (2) DE102022212157A1 (zh)
WO (1) WO2023091036A1 (zh)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI764971B (zh) * 2016-12-30 2022-05-21 美商英特爾公司 物聯網
US11159650B2 (en) * 2018-11-02 2021-10-26 Lg Electronics Inc. Broadcast signal transmission apparatus, broadcast signal transmission method, broadcast signal reception apparatus and broadcast signal reception method
CN114930293A (zh) * 2019-06-12 2022-08-19 Snyk有限公司 预测性自动扩展和资源优化
CN110618871B (zh) * 2019-09-21 2022-07-22 苏州浪潮智能科技有限公司 一种fpga云平台加速资源的分配方法与系统
US11544113B2 (en) * 2019-11-20 2023-01-03 Google Llc Task scheduling for machine-learning workloads
WO2021122675A1 (en) * 2019-12-19 2021-06-24 Koninklijke Philips N.V. Dynamic personalized platform generation based on on-the-fly requirements
US11570638B2 (en) * 2020-06-26 2023-01-31 Intel Corporation Automated network control systems that adapt network configurations based on the local network environment
US11770377B1 (en) * 2020-06-29 2023-09-26 Cyral Inc. Non-in line data monitoring and security services
US20220046292A1 (en) * 2020-08-05 2022-02-10 Avesha, Inc. Networked system for real-time computer-aided augmentation of live input video stream
US11671484B2 (en) * 2020-09-25 2023-06-06 Verizon Patent And Licensing Inc. Methods and systems for orchestrating a distributed computing service based on latency performance levels
US20210081271A1 (en) * 2020-09-25 2021-03-18 Intel Corporation Dynamic tracing control
US11972193B1 (en) * 2020-10-01 2024-04-30 Synopsys, Inc. Automatic elastic CPU for physical verification
KR102650892B1 (ko) * 2021-04-12 2024-03-26 한국전자통신연구원 지역적으로 분산된 다중 클라우드 환경에서의 컨테이너 오케스트레이션 장치 및 이를 이용한 방법
WO2022235651A1 (en) 2021-05-03 2022-11-10 Avesha, Inc. Distributed computing system with multi tenancy based on application slices
US11916951B2 (en) * 2021-06-14 2024-02-27 Jamf Software, Llc Mobile device management for detecting and remediating common vulnerabilities and exposures
US11726894B2 (en) * 2021-08-12 2023-08-15 Sap Se Runtime entropy-based software operators
US11627155B1 (en) * 2021-09-20 2023-04-11 Normalyze, Inc. Cloud infrastructure detection with resource path tracing
US20230171240A1 (en) * 2021-11-26 2023-06-01 Cisco Technology, Inc. Web tokens for enhanced microservice obervability
US11971990B2 (en) 2022-01-13 2024-04-30 Dell Products L.P. System and method for container validation
US20230222045A1 (en) * 2022-01-13 2023-07-13 Dell Products L.P. System and method for enhanced container deployment
US11880950B2 (en) * 2022-03-14 2024-01-23 Meta Platforms Technologies, Llc Selective offload of workloads to edge devices
US20220245903A1 (en) * 2022-03-14 2022-08-04 Facebook Technologies, Llc Selective Offload of Workloads to Edge Devices
US11743108B1 (en) * 2022-03-15 2023-08-29 Cisco Technology, Inc. Dynamic customization of network controller data path based on controller internal state awareness
US20230344714A1 (en) * 2022-04-22 2023-10-26 Microsoft Technology Licensing, Llc Global intent-based configuration to local intent targets
US11989200B2 (en) * 2022-05-25 2024-05-21 Nutanix, Inc. System and method for lambda buckets
US11853176B1 (en) * 2022-06-09 2023-12-26 Sap Se Service-compatible fault tolerance and acclimation
US20230409307A1 (en) * 2022-06-15 2023-12-21 Harness Inc. Automatic progressive rollout of software update
WO2023247042A1 (en) * 2022-06-23 2023-12-28 Telefonaktiebolaget Lm Ericsson (Publ) Detection of host container monitoring
US11886864B1 (en) * 2022-07-18 2024-01-30 International Business Machines Corporation Enhanced edge application deployment and processing in a network
US11915059B2 (en) * 2022-07-27 2024-02-27 Oracle International Corporation Virtual edge devices
CN115412609B (zh) * 2022-08-16 2023-07-28 中国联合网络通信集团有限公司 一种业务处理方法、装置、服务器及存储介质
US11863404B1 (en) * 2022-08-23 2024-01-02 Verizon Patent And Licensing Inc. Systems and methods for calculating optimum customer access paths for applications provided by multi-cloud providers through private networks
CN117724764A (zh) * 2022-09-09 2024-03-19 达发科技(苏州)有限公司 网络处理单元的算法分析方法及装置和存储介质
WO2024123338A1 (en) * 2022-12-08 2024-06-13 Robin Systems, Inc Application provisioning with active and available inventory
US11907230B1 (en) 2023-01-10 2024-02-20 Dell Products L.P. System and method for distributed management of hardware based on intent
US11929891B1 (en) * 2023-01-10 2024-03-12 Dell Products L.P. System and method for distributed management of hardware through relationship management
US11763006B1 (en) * 2023-01-19 2023-09-19 Citibank, N.A. Comparative real-time end-to-end security vulnerabilities determination and visualization
US11748491B1 (en) 2023-01-19 2023-09-05 Citibank, N.A. Determining platform-specific end-to-end security vulnerabilities for a software application via a graphical user interface (GUI) systems and methods
US11874934B1 (en) 2023-01-19 2024-01-16 Citibank, N.A. Providing user-induced variable identification of end-to-end computing system security impact information systems and methods
CN116467068B (zh) * 2023-03-14 2024-06-18 浙江大学 资源调度方法、设备及存储介质
US12009974B1 (en) * 2023-05-05 2024-06-11 Dish Wireless L.L.C. Self-optimizing networks
US12001312B1 (en) * 2023-07-26 2024-06-04 Dell Products L.P. Data center monitoring and management operation for provisioning a data center asset using unstructured data
CN117349034B (zh) * 2023-12-05 2024-02-23 创意信息技术股份有限公司 一种大语言模型分层加载方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09179235A (ja) 1995-12-27 1997-07-11 Konica Corp ハロゲン化銀写真感光材料及びその処理方法
US11824784B2 (en) * 2019-12-20 2023-11-21 Intel Corporation Automated platform resource management in edge computing environments
CN112073531B (zh) * 2020-09-15 2021-10-19 常熟理工学院 一种基于边缘计算的物联网实时监测系统的实现方法
US20210014133A1 (en) * 2020-09-25 2021-01-14 Intel Corporation Methods and apparatus to coordinate edge platforms

Also Published As

Publication number Publication date
US20220124009A1 (en) 2022-04-21
US20220124005A1 (en) 2022-04-21
US20220116455A1 (en) 2022-04-14
US20220114251A1 (en) 2022-04-14
WO2023091036A1 (en) 2023-05-25
US20220121455A1 (en) 2022-04-21
DE102022212157A1 (de) 2023-05-17
KR20230073371A (ko) 2023-05-25
US20220113790A1 (en) 2022-04-14
KR20230073372A (ko) 2023-05-25
DE102022212115A1 (de) 2023-05-17

Similar Documents

Publication Publication Date Title
CN117501246A (zh) 用于端到端编排中的自主监测的系统和方法
EP3974980A1 (en) Methods, apparatus, and articles of manufacture for workload placement in an edge environment
EP3985511A1 (en) Orchestration of meshes
US20210014133A1 (en) Methods and apparatus to coordinate edge platforms
US20220261661A1 (en) Methods, systems, articles of manufacture and apparatus to improve job scheduling efficiency
EP4203417A1 (en) Systems, methods, articles of manufacture, and apparatus for end-to-end hardware tracing in an edge network
CN114253793A (zh) 动态追踪控制
CN114285738A (zh) 边缘节点的基于信任的编排
US12026074B2 (en) Continuous testing, integration, and deployment management for edge computing
US20220082616A1 (en) Systems and methods for networked device testing
CN114253657A (zh) 使用分布式账本的编排器执行计划
US20220150125A1 (en) AI Named Function Infrastructure and Methods
US20220014946A1 (en) Methods and apparatus for digital twin aided resiliency
CN114338680A (zh) 用于在计算设备中相对于服务水平协议来管理服务质量的方法和装置
US20220014422A1 (en) Cross-layer automated fault tracking and anomaly detection
NL2033544B1 (en) Methods and apparatus to implement edge scalable adaptive-grained monitoring and telemetry processing for multi-qos services
US20220222584A1 (en) Heterogeneous compute-based artificial intelligence model partitioning
US20230014064A1 (en) Decentralized reputation management in a named-function network
WO2022271042A1 (en) Automated node configuration tuning in edge systems
US20240235959A1 (en) Systems and methods for autonomous monitoring in end-to-end orchestration
NL2033285B1 (en) Intent-based orchestration in heterogenous compute platforms
EP4180958A1 (en) Computational storage in a function-as-a-service architecture
EP4180957A1 (en) Intent-driven power management
US20210119935A1 (en) Objective driven orchestration
US20230325246A1 (en) Dynamic hardware profile modification

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication