CN104272292A - 用于基于云的服务的网络资源部署 - Google Patents

用于基于云的服务的网络资源部署 Download PDF

Info

Publication number
CN104272292A
CN104272292A CN201380022780.3A CN201380022780A CN104272292A CN 104272292 A CN104272292 A CN 104272292A CN 201380022780 A CN201380022780 A CN 201380022780A CN 104272292 A CN104272292 A CN 104272292A
Authority
CN
China
Prior art keywords
environment
modular assembly
network
service
internet resources
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.)
Granted
Application number
CN201380022780.3A
Other languages
English (en)
Other versions
CN104272292B (zh
Inventor
弗拉德·文德罗
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.)
RingCentral Inc
Original Assignee
RingCentral Inc
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 RingCentral Inc filed Critical RingCentral Inc
Publication of CN104272292A publication Critical patent/CN104272292A/zh
Application granted granted Critical
Publication of CN104272292B publication Critical patent/CN104272292B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • 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/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • 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
    • 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/508Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
    • H04L41/5096Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement wherein the managed service relates to distributed or central networked applications
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99956File allocation

Abstract

所描述的技术对与网络资源的配置、部署和管理关联的很多任务进行了简化和/或自动化,以支持基于云的服务。

Description

用于基于云的服务的网络资源部署
技术领域
本申请要求2012年3月12日递交的申请号为13/418,181,发明名称为“Network Resource Deployment for Cloud-Based Service”的美国专利申请(律师案号RINGP001)的优先权,其全部公开内容通过引用结合于此,以用于所有目的。
背景技术
本发明涉及用于在异构网络环境中部署网络资源的系统和方法,以支持例如基于云的服务。
术语“云计算”指能够实现对可配置计算资源(例如,网络、服务器、存储器、应用程序、服务)的共享池进行广泛、方便、按需的网络访问的计算模型。基于云的服务正快速地成为向互联网和万维网上的商业和消费者提供服务的主要方式。
目前对这些资源进行配置、部署和管理的主要方式包括个体系统资源的手动配置、部署和管理。当资源数量较少时,例如5或10个服务器时,不会出现问题。然而,当为满足增长的客户需求,基于云的服务或服务组增加到例如在多个地理上不同的代管主机上的几百或几千个服务器时,手动技术就成为扩展和递送这些服务的一个严重的瓶颈。
此外,对网络资源的手动部署要求较为高级的编程技能和对已部署资源的当前配置的详细了解,并且,由于涉及的任务的复杂性,在成功部署前,往往要求对资源组件和参数进行费时的试错排障处理。从系统的角度看,例如当重要员工离开时,这种重要活动要求的专业技能和习得知识水平也会体现为单一故障点。这都是基于云的服务的部署不愿遇到的技术或经济上的障碍。
发明内容
根据本发明,提供了用于在网络中部署一个或多个基于网络的服务的方法、装置、系统和计算机程序产品。根据多个实施例,提供了一个或多个用户界面,所述一个或多个用户界面被配置为帮助用户指定环境的逻辑结构的至少一部分。环境的逻辑结构将所述一个或多个基于网络的服务与一个或多个对应的配置相互关联。所述一个或多个基于网络的服务和所述一个或多个对应的配置由一个或多个网络资源和一个或多个软件组件实现。所述一个或多个网络资源选自可用网络资源池。从可用网络资源池中去除所述一个或多个网络资源。参照环境的逻辑结构,将所述一个或多个网络资源分配给环境。参照环境的逻辑结构,将所述一个或多个网络资源和所述一个或多个软件组件部署给网络,从而能够提供所述一个或多个服务。
根据一些实施例,所述一个或多个用户界面进一步被配置为允许用户发起环境的部署,并且响应于发起环境的部署来分配所述一个或多个网络资源和所述一个或多个软件组件。
根据一些实施例,所述一个或多个用户界面进一步被配置为,一旦环境已部署,即使一个或多个环境测试失败,也允许用户发起所述一个或多个服务的提供。
根据一些实施例,所述一个或多个用户界面进一步被配置为允许用户发起取消环境的部署,响应于取消环境的部署,将所述一个或多个网络资源返回至可用网络资源池中。
根据一些实施例,所述一个或多个用户界面进一步被配置为允许用户发起环境的操作的暂停,结合环境的操作的暂停,停止提供所述一个或多个服务。
根据一些实施例,环境包括先前已部署的环境的更新版本,所述先前已部署的环境具有多个与所述先前已部署的环境相关联的终端用户,所述一个或多个用户界面进一步被配置为允许用户发起将终端用户的子集从先前部署的环境迁移到所述环境中,而不中断向终端用户的所述子集提供所述一个或多个基于网络的服务。
根据一些实施例,可用网络资源池包括实际和虚拟的计算资源,通过可互换地使用实际和虚拟的计算资源来完成所述一个或多个网络资源的分配和部署。
根据一些实施例,环境将多个网络资源与多个软件组件关联。所述多个网络资源位于地理上不同的多个数据中心,环境的逻辑结构包括所述网络资源或软件组件在所述地理上不同的数据中心上的一个或多个逻辑分组。
根据一些实施例,环境将多个网络资源与多个软件组件关联,所述多个网络资源使用多个不同的操作系统来提供所述一个或多个服务。
根据一些实施例,所述一个或多个用户界面被进一步配置为允许用户选择环境模板,其中用户指定环境的逻辑结构的一部分,环境模板指定环境的逻辑结构的其余部分。
根据一些实施例,对用于实现所述一个或多个基于网络的服务和所述一个或多个配置的一个或多个网络资源进行修改。
通过参照说明书其他部分和附图,可实现对本发明的本质和益处的进一步理解。
附图说明
图1是部署系统的特定实现方式的简化系统图。
图2是示出由部署系统的特定实现方式配置、部署和管理的环境或场景的生命周期的流程图。
图3和图4是可以使用部署系统的特定实现方式对网络资源进行部署的通信系统的示例的简化方框图
图5是说明部署系统的特定实现方式的用户界面屏幕之间关系的示意图。
图6-图13是图5的用户界面屏幕的示例。
图14是部署系统的特定实现方式的简化系统图。
具体实施方式
现在详细参照本发明的具体实施例,包括发明人为实施本发明而构思的最佳模式。在附图中说明了这些具体实施例的示例。尽管是结合这些具体实施例描述本发明的,但是可以理解,本发明不限于所描述的实施例。相反,本发明意在覆盖可能包括在由所附权利要求所定义的本发明的精神和范围中的替代、修改和等同物。以下说明书中将展示具体的细节以提供对本发明的透彻理解。实施本发明时可不需要一些或全部这些具体细节。并且,为避免不必要地模糊本发明,可能不对公知的特征进行详细描述。
本发明的实施例提供的方法、装置、系统、以及计算机程序产品对与网络资源(包括计算资源和软件)的配置、部署和管理关联的很多任务进行了简化和/或自动化,以支持网络服务(例如,基于云的服务)。这些方法、系统和计算机程序产品提供了支持发现、配置、部署和管理网络服务和资源的用户界面,包括在一些实现方式中,不中断当前操作系统和/或服务递送地对服务和/或资源进行部署。
这里,在基于云的通信服务(例如,电话和传真服务)的上下文中描述多个实现方式。然而可以理解,本发明的范围要大得多,包括使用几乎任何基于网络的计算范式而提供的多种系统和服务。更清楚地说,在此描述的技术可用于支持任意类型的基于网络或者云的服务或服务集合。因此,在此对具体应用的参照不意图也不应当用于限制本发明的范围。
现在将参照图1来描述自动部署系统(ADS)的特定实现方式的高级架构,该自动部署系统能够为基于云的服务(例如,如上描述的电话服务)对网络资源进行配置、部署和管理。值得注意的是,术语“自动”不应解释为在没有与人的交互的情况下进行部署。相反,通过参考下文的说明书,可以清楚地看到,通过这些任务的各个方面的选择性自动化,有利地帮助了人对网络服务和/或资源的配置、部署和管理。另一个值得注意的是,可以使用类似于ADS 100的系统针对任意服务或系统类型对网络服务和/或资源进行配置、部署和管理。
ADS 100操作和用户交互的主要对象称为“环境”。环境102是服务、配置和依赖关系的集合,可由安装在资源上的软件组件和配置文件来实现。资源104可以包括例如“裸金属”资源106(如实际的计算硬件)以及虚拟资源(如虚拟机(VM)108)。这些资源可被不同的实体拥有、关联或控制,例如与通信服务提供商RingCentral关联的资源池110和与第1到第N个第三方平台即服务(PaaS)提供商关联的资源池112。根据多个实现方式,在相同资源上可以安装多个服务,可以跨资源传送服务而不改变环境的逻辑结构。
依赖关系可以包括,例如,服务之间的关系、配置之间的关系、以及服务和配置之间的关系。例如,电话服务可以需要语音邮箱服务,这就可以表示为一种依赖关系。在另一个示例中,一个服务的配置可能依赖于另一个服务的配置,例如在服务之间共享的共用目录,这可以表示为另一种依赖关系。在一些实施例中,服务、配置和依赖关系以及对应的软件组件、配置文件和资源可以用静态或者动态的可扩展标记语言(XML)格式来表达,从而能够对环境进行层次化和模块化的定义。
资源可以与ADS 100直接地接口,或者经由各应用程序接口(API)通过云网关113与ADS 100接口。例如,“裸金属”资源106和虚拟资源(VM)108可在服务提供商级被抽象或虚拟化,并可以与ADS 100直接地接口,或者经由虚拟中心(vCenter)API 115,通过云网关113与ADS100接口。在另一示例中,“裸金属”资源106和虚拟资源108可以与ADS 100直接地接口,或者经由独立的API通过云网关113与ADS 100接口。第三方PaaS资源可以与ADS 100直接地接口,或者经由各平台API117和119,通过云网关113与ADS 100接口。
根据特定实现方式,云网关包括经由云网关API 121连接至ADS100的主模块,以及与特定资源(如API 115、117、119)的API一起工作的一个或多个连接器模块。云网关API 121针对环境在其生命周期内可能使用的资源提供操作集。所述操作的示例可以包括,例如,创建、删除、重启、获取状态、启动、停止、以及创建或删除资源快照。所述操作的其他示例可以包括获取资源列表、获取资源大小(如,CPU、RAM或存储容量)、获取实例模板列表、上传实例模板、删除实例模板、以及获取快照列表。
动态资源池114识别出资源104中的能够被包括在任何新的或已有环境中的所有可用资源。动态资源池114提供底层软件和硬件资源不可知的资源视图。需要注意的是,动态资源池114可以包括关于资源是否被部署在例如已部署环境116中的信息,或者关于资源是否可用、部分可用、不可用的信息。动态资源池114还可以包括关于资源的总的信息,例如,可供部署的小型、中型、大型服务器的数量。
根据一些实现方式,ADS可以例如使用云网关API121或连接至资源池的API(例如API115、117、119),周期性地向资源池请求可用资源的列表或者可用资源变化的列表,并自动地更新可用资源的列表(例如,动态资源池114)。备选地或者附加地,资源池可以例如使用各种API(例如API115、117、119)通过云网关通知ADS资源的变化。
当ADS的用户希望部署新的环境或者向已有环境部署新的资源时,生成对动态资源池的资源请求118,作为对资源请求118的响应,向部署引擎122提供120并识别合适的资源。根据一些实现方式,如果动态资源池114不包括足够的资源来完成资源请求,将实时地(on-the-fly)生成资源,例如,可以实例化新的虚拟机。即,动态资源池114可以是资源的动态池,可以响应需求将资源加入所述动态资源池中。从使用第三方PaaS资源的成本角度来看,这可能是尤其有益的,因为可以按需创建和部署第三方PaaS资源。更具体地,可基于资源池的确定或者基于ADS的确定来增加、删除、或修改资源。例如,如果给定的资源池正接近其负载能力,其可以提供附加的服务器并向ADS通知这些服务器。在另一个示例中,如果ADS确定特定的服务执行得比预期的要慢,ADS可以请求附加的资源,并将这些服务迁移到这些新的资源。
根据特定实现方式,部署引擎122采用开源集成工具Chef作为基础。Opscode公司的Chef是符合Apache认证2.0的开源软件,提供了帮助网络基础设施进行配置管理的系统集成框架。“Chef”使用“食谱(cookbook)”或“配方(recipe)”,通过写代码而不是运行命令对网络资源进行管理。Chef还使用库(library)将网络资源与应用、数据库、LDAP目录等结合。更多关于Chef的信息请参考http://www.opscode.com/chef。
传统上,使用Chef时,“Chef”要求高度专业的知识和编程技能来手动地配置和管理网络资源。根据在此描述而实现的ADS提供了一个或更多附加的、位于“Chef”框架顶部的抽象和功能层,实现了针对网络资源的配置、部署和管理的更高级自动化,而不要求典型的“Chef”用户的专业知识或编程技能。相应地,这就使得基于云的服务和系统具有高阔缩性,消除了应对快速增长的需求的关键瓶颈。应当注意的是,“Chef”仅是可以将ADS实现方式构建于其上的系统集成框架的一个示例。其他的示例包括Puppet Enterprise和AutomateIt。
参考图1,用户指定了场景(即,一个或多个服务)和/或所请求的资源的配置,并请求部署。场景和/或配置124包括在部署中将使用什么服务和配置的具体说明,以及服务和配置之间的依赖关系,这些都可以实现为安装在资源上的软件组件和配置文件。部署引擎122接收场景/配置124、提供的资源120、以及要与资源集成的任意软件组件126,并且部署环境128。软件组件126可以对应于,例如,部署在网络资源上的服务的各方面中的任意方面(如,安装包、程序或脚本)以及配置文件(包括依赖关系)。然后,部署引擎122核实部署是否正确并成功,一旦核实,将环境的状态从“未部署”改为“已部署”,或可能为“生存”。在示出的实现方式中,部署引擎122还向共用层132提供了负载平衡配置130。共用层132可以对应于,例如,由多个环境共享的资源集合。
根据一些实现方式,ADS 100支持“连续集成”,即,在不中断服务的情形下,对网络资源和软件组件进行配置、部署、和/或管理。这可例如通过将服务和用户从一个环境迁移到另一个环境来完成,即,将当前活动的环境与该环境升级后的版本进行“热切换”。
图2说明了根据ADS的特定实现方式的环境或者一个或多个服务(在此称为场景)的生命周期。用户通过草图、模板、或者从已有的环境复制,来创建环境或者场景(202)。根据特定实现方式,用户可以在固定部署和自动部署中选择。如果选择了固定部署,用户可以指定环境或场景的任意部分,例如,服务、配置、依赖关系、软件组件、资源、软件组件到资源的映射等。如果选择了自动部署,则ADS将例如基于已有的服务、配置、依赖关系(如,软件组件依赖关系)、可用资源等,指定环境或场景的这些部分中的一部分或全部。这时,环境或场景处于“未部署”状态(204)
在“未部署”状态中,环境或场景是可编辑的(206),直到用户希望对其部署。响应于“部署”请求(208),ADS针对必需的资源检查动态资源池(210),并将必需的资源锁定备用。如果没有足够的可用资源,ADS将此向用户报告并将环境或场景返回至“未部署”状态(204)。备选地或附加地,系统可以发起创建附加的资源,或者,资源池可响应于ADS的请求,发起创建附加的资源。另一方面,如果ADS具有全部的必需资源,则部署处理开始,这时ADS激活部署的环境或场景(“就绪”状态212)并运行全部必需的安装后测试214。如果安装后测试成功(216),则部署的环境或场景可以使用并且其状态改变为“生存”状态(218),其中,部署的环境或场景变为可操作并用于目的用途,例如,提供基于云的服务。否则,ADS向用户报告测试失败,并可将环境或场景返回至“未部署”状态(204)。
备选地,可能存在一些情形,其中即使安装后测试不是完全成功,用户可能仍要将环境或场景变为生存态。例如,在特定环境或场景配置的测试阶段中,即使一部分安装后测试可能失败了,允许测试工程师具有将环境或场景变为生存态的灵活性可能是有用的。
如果用户要停止环境或场景的操作(220),则环境或场景的状态变为“已停止”(222)。这在例如环境或场景采用操作即代表成本的第三方资源的情况下可能是有用的,即,当环境或场景的资源没有被使用时,可以暂停环境或场景的操作。该状态对下层的网络资源来说可能具有多个含义。例如,已部署的环境或场景中的“裸金属”服务器的操作可能并没有真正地停止,而是可能为三个状态之一,如“就绪”、“生存”、或“未部署”。相比之下,对于虚拟机,ADS可运行将虚拟机镜像保持到存储器的关机过程。
如果用户要以某些方式修改生存的环境或场景(例如,改变软件组件的版本或配置,增加或改变资源等),ADS取消环境或场景的部署(224),并将其返回至“未部署”状态(204)。类似地,如果不再需要生存的环境或场景,可将其取消部署(224)。当已经部署的环境或场景被取消部署时(224或226),ADS删除为环境或场景注册的虚拟机的已保存的全部镜像,释放和/或重新格式化为环境或场景注册的全部“裸金属”服务器,并将全部资源返还至动态资源池。
环境或场景还可以回到“就绪”状态(212),例如,以重新运行安装后测试,或者回到“生存”状态(218),例如,以回到常规操作。
根据特定实现方式,ADS可定制为帮助部署基于云的通信系统(例如图3和4中所示)中的网络资源。图3示出了例如基于云的电话系统的通信系统300。通信系统300包括数据中心301、302和303。每个数据中心是包括支持通信系统300提供的服务所必需的资源(例如服务器、路由器、交换机、网络连接等)的存在点(POP)。每个数据中心典型地位于不同的地理区域。
在该示例中,通信系统300包括三个用户数据点(pod),即数据点1、2、3,每一个用户数据点都是具有位于不同数据中心中的两个或更多个数据点单元的逻辑组。每个数据点为用户账户的不同子集服务。在该示例中,每个数据点单元(如,单元2A)与相同数据点中的其他数据点单元(如,数据点单元2B、2C)为用户的相同子集服务。每个数据点单元包括通信服务器319a-319g,所述通信服务器被配置为与相同数据点中的其他数据点单元向相同用户子集提供实质上相同的服务。每个数据点单元还包括账户数据库321a-321g,所述账户数据库被配置为为对应的用户子集支持相应的通信服务器。
图4示出了图3的通信系统300的各种组件。具体地,图4示出了数据中心301和302内部和之间的各种互连。两个数据中心均连接至网络417。来自各通信设备443A-443D的服务请求经网络417路由至数据中心中的任意一个或两个。数据中心301包括数据点单元1A和2A,共用数据库(CDB)407A,消息存储系统(MSS)411A,路由器413A,以及全局用户目录(GUD)415A。数据中心301还可以包括附加的数据点单元(未示出)。数据中心具302有类似的配置并包括操作与数据中心301中的组件的操作实质上相同的组件。数据中心301和302在故障事件中相互提供备份和冗余。
通信服务器319为对应的用户子集提供通信服务(如语音、视频、电子邮件、和/或传真)。每个服务器还可提供其他服务,包括,例如,用户账户管理与配置、账单服务、记账服务等。每个数据点单元包括账户数据库321以支持用于该特定数据点单元的通信服务器,账户数据库存储配置细节和关于每个用户账户的其他信息。
数据点单元1A和1B相互通信,使得其相应账户数据库上的数据在数据中心之间同步。数据中心301包括路由器413A,用于接收来自网络417的输入服务请求431A。路由器413A解析输入服务请求以识别或提取用户密钥,并查询GUD 415A以确定用户密钥所关联的数据点。一旦识别出关联的数据点,路由器413A向数据中心中与识别出的数据点关联的数据点单元路由该服务请求。如果与识别出的数据点关联的数据点单元与数据中心301不关联,则路由器413A可向另一个数据中心(如,箭头441A所指的数据中心302)路由该服务请求。
数据中心301的每个数据点单元还耦接至MSS 411A,其存储用于由数据点单元1A和2A服务的用户的文件。这些文件可以包括,例如,消息(如语音邮箱和传真)、用户日志、系统消息、系统和用户呼叫提示(如自动总机或用户录制的问候)、以及其他类型的呼叫相关或电子消息。MSS 411A的内容与其他数据中心同步(如,与数据中心302的MSS 411B同步)。
数据中心301的每个数据点单元耦接至共用数据库407A,共用数据库407A存储全部数据点所共享的数据,以及来自账户数据库321的综合信息。共用数据库407A还帮助数据点数据库的改变。例如,共用数据库407A还可以存储用于提供通信服务器319上的服务的应用的数据。在共用数据库407A中可以存储应用数据的不同版本,从而能够高效并方便地对通信服务器319实施改变和升级。可以对共用数据库407A进行改变并将该改变扩散至对数据点单元1A和2A。共用数据库407A在数据中心之间与其他共用数据库(如,数据中心302的共用数据库407B)同步。共用数据库407A、MSS 411A、路由器413A、和GUD415A形成可被数据中心301中的全部数据点单元共享的资源共用层。
更多有关根据这里的描述而构建的ADS可以使用的系统的本质的信息,请参考申请号为12/957,125,名称为“User Partitioning ina Communication System”,递交日为2010年11月30日的美国专利申请(律师案号:RC1012/18166-0034001),其全部公开通过引用结合于此以用于全部目的。
根据一些实现方式,环境的逻辑结构(如通过XML、动态XML、数据库、图形设计环境等来指定)可被固定为多个不同的层(从用户角度来看),以帮助特定类型的系统或服务集合(如上所描述的通信系统)的配置、部署和管理。在该实现方式中,可以限制用户对结构的单元进行指定或选择的选项,从而实现部署的环境的一致性的所需级别。例如,使用XML定义环境的逻辑结构允许用户定义服务和配置的层级和模块化的配置,其在源代码库中能够容易地存储、版本化和更新。以下的表1-7示出了与参照图3和图4所讨论的环境和部署信息的逻辑结构相类似的一个示例,表中定义了环境层级结构的多个层。
环境
表1
Pod(数据点)
属性 ID:==Unique unsigned integer
Name:==String#from preconfigured list
下行链路 UNITs:==Array of UNIT IDs#at least two elements
表2
单元
表3
服务角色
表4
Ring Central软件组件
表5
第三方软件组件
表6
服务器
表7
根据其他实现方式,环境结构自身可以使用ADS来指定。该实现方式使得ADS是可定制的,从而可用于针对更多类型的服务和系统配置、部署、和管理网络资源。
图5是说明ADS的用户界面屏幕之间的关系的流程图,该ADS能够对基于云的通信系统(例如,上文参考图3-4和表1-7所描述的通信系统)的环境进行配置、部署和管理。图6-13提供了向用户呈现的UI屏幕和选项的示例。需要注意的是,除了登录屏幕,用户可从在一些界面的右侧示出的导航菜单到达任意列表或增加屏幕。还需要注意的是,使用这些界面发起的部署序列对于一个或一组服务来说可以是异步的,而在两个服务之间或者一组已定义的服务之间可以是同步的。
根据一些实现方式,可使用部署配置文件、ADS数据库或类似的数据结构在ADS中指定部署服务或服务组的序列。例如,部署配置文件可以指定在用户特定服务(如消息服务)前同步地部署共用层服务,而相互异步地部署消息服务。在另一个示例中,部署配置文件可以定义服务组以及用于同步地部署服务组的序列,其中,关于每组中的服务,所述服务组可以相互异步地部署。
在所描述的实现方式中,当用户登录时,默认的屏幕是图6示出的部署环境列表屏幕502,其中列出了在环境生命周期的各阶段的环境(如,见图2)。根据当前环境的状态,用户可以对列出的环境使用各种动作选项,包括,例如,部署、停止、取消部署等。
通过选择列出的环境之一得到图7示出的已部署的环境的细节屏幕504A。示出了包括与每个数据点单元关联的服务的环境的逻辑结构,即数据中心(存在点)、数据点、数据点单元等。图8的屏幕504B提供了一个备选的视图,其中显示了与每个数据点单元关联的服务器,而非服务。用于逻辑层级结构的各层的各种用户的可用动作包括设置数据库为只读、启动或停止特定资源、激活或禁用结构的一部分、或者迁移用户(如从数据点中的一个数据点单元迁移到另一个)的能力。
环境层还具有用于改变环境的状态的各类动作,包括,例如,更新或编辑环境,环境的各类型的部署(如生存或下线),启动或停止环境(包括启动或停止的调度),取消环境的部署等。一个环境层的选项允许用户从一个环境迁移到另一个环境,例如当环境需要下线或者被更新或其他修改版本所替代时,可以使用所述另一个环境。这使得执行这些动作时能够不中断受影响用户的服务。
图9的环境模板列表屏幕510向用户提供了可用的模板环境(即模板)的列表,可从其创建并配置新的环境。选择一个模板将会呈现图10的环境修改屏幕512,用户可在其中创建新的环境。用户还可以例如,通过选择在上文参考图7和8所讨论的部署环境细节屏幕504A和504B中的“编辑”选项来到达该屏幕,以修改已有的环境。
响应于对屏幕512中增加服务类型的选择,呈现增加服务弹出屏幕516,用户可以在其中选择服务以增加到环境中。响应于选择屏幕512中的设置服务器选项,呈现增加/改变服务器弹出屏幕514,允许用户从可用的“裸金属”和虚拟服务器列表中增加服务器,其中可通过不同的属性,例如服务器类型或大小过滤该列表。根据所示的实现方式,通过将用户选项主要限于将数据点单元增加到数据点,以及将服务增加到数据点单元(包括对负载平衡池的指定),来相对地固定所选择模板或环境的逻辑结构。在其他实现方式中,用户可以修改所选择模板或环境的逻辑结构的任意部分,并随后将其保存为新的模板或环境。
图11的资源列表屏幕518向用户提供了动态资源池(如,图1的动态资源池114)中的全部可用资源的视图。通过选择屏幕518中的“新增”或特定的一个已有资源,可以达到资源创建/修改屏幕520,使用资源创建/修改屏幕520可将“裸金属”和虚拟资源加入到池中。可以使用位置列表来基于资源的物理位置过滤可用资源的列表。
图12的用户列表屏幕522帮助管理用户许可,使得用户被授权使用ADS来配置、部署、和管理环境和网络资源,并且,具体地,使得授权用户在用户特定的基础上授予、撤销或修改创建环境的许可。
图13的ADS日志屏幕524向用户提供了与各类环境关联的事件的视图,在该示例中,所述事件通过时间来组织。用户可以通过说明、日期(如,通过指定时间窗)、事件等级(如,调试、提示、警告、错误、重要)、用户、或环境来搜索或过滤日志条目。这使得用户将日志条目减少到仅为感兴趣的内容。
图14示出了根据ADS 1400的特定实现方式的信息流动的方式。一个或多个ADS核服务器1452采用网络用户界面1454,使用户与ADS引擎1456交互。在所示的示例中,网络UI 1454基于用Python语言写的开源网络应用框架Django。UI 1454可被配置为提供例如上文参考图5-13所讨论的用户界面。
一个或多个ADS数据仓库1458是PostSQL系统,其为一种用于存储ADS 1400使用的数据(如,环境配置、用户等)以及ADS 1400运行的工作的对象关系管理系统。如上文讨论的,ADS 1400包括一个或多个Chef服务器1460以支持环境的部署。ADS 1400还包括一个或多个RabbitMQ服务器1462以支持信息交换,例如ADS核服务器1452与系统中其他服务器之间的信息交换。一个或多个Chef客户服务器1464发起并运行Chef客户端1466,其中Chef客户端负责从ApacheSubversion(SVN)服务器1468获取环境模板,从Buider服务器1470获取软件组件(例如安装包、程序、或脚本)。
根据一些实现方式,ADS可设计成具有高可用性。例如,独立的ADS实例可被用于配置、部署、和管理不同类型的环境,例如,测试环境、生产前环境、和生产环境。通过使用例如共用地址冗余协议(CARP)和分布式存储(如,使用分布式重复块设备(DRBD)或者网络连接存储(NAS))支持ADS内的系统组件(如,ADS核服务器、ADS数据仓库、Chef服务器、RabbitMQ服务器等)的冗余。可以使用多种其他高可用性设计技术来确保希望的可靠性和可用性级别。
再一次参考图14,从UI 1454向ADS引擎1456发送例如具有环境配置的查询(1401),ADS引擎1456查询数据仓库1458以获得环境状态(1402)。ADS核服务器1452也查询RabbitMQ服务器1462以创建消息池(1403)。消息池1472轮询位于Chef客户服务器1464上的守护程序1474(1404),启动Chef客户服务器上的Chef客户端1466(1405)。Chef客户端1466从Chef服务器1460获取角色和食谱或配方(1406)。Chef客户端1466还从构建器(Builder)服务器1470获取软件组件,从SVN服务器1468获取环境模板配置1476(1407)。从Chef客户端1466向守护程序1474返回离开状态(1408),守护程序1474将离开状态放置在RabbitMQ服务器1462的消息总线上。离开状态然后被返回至ADS引擎1456(1410),写入数据仓库1458(1411),并返回至UI1454(1412)。
如上文提到的,按在此描述设计的ADS可用于对多种同构和异构网络上下文中的网络资源进行配置、部署、和管理,以支持多种系统和基于网络的服务(例如基于云的系统和服务)。并且,本发明的范围不限于任何特定类型的网络或网络拓扑,或者计算设备的特定类型或配置。这对于由ADS在其中或其上配置、部署、和管理系统和服务的网络和计算设备,以及ADS在其中或其上操作以帮助网络资源的配置、部署、和管理以支持该系统和服务的网络和计算设备,都是成立的。
尽管在此参考了特定的计算范式和软件工具,但是,用来实现本发明实施例的计算机程序指令可对应于多种编程语言和软件工具中的任意编程语言和软件工具,并可存储在任意类型的易失性、非易失性、非瞬态的计算机可读存储介质或存储设备中,并可根据独立计算机设备上的各类计算机模型(例如包括客户端/服务器模型、点对点模型),或者根据分布式计算模型(其中,在此所描述的功能可在不同位置实现或使用)来执行。
尽管参考其具体的实现方式详细示出和描述了本发明,本领域技术人员可以理解,可在不背离本发明的精神和范围的情况下对公开的实施例的形式和细节进行改变。并且,尽管在此参考各个实施例对本发明的各优点、方面和目的进行了讨论,可以理解,本发明的范围不限于这些优点、方面和目的。相反,本发明的范围应参考随附的权利要求来确定。

Claims (22)

1.一种计算机实现的方法,用于在网络中部署一个或多个基于网络的服务,包括:
提供一个或多个用户界面,所述一个或多个用户界面被配置为帮助用户指定环境的逻辑结构的至少一部分,其中,环境的逻辑结构将所述一个或多个基于网络的服务与一个或多个对应的配置相互关联,所述一个或多个基于网络的服务和所述一个或多个对应的配置由一个或多个网络资源和一个或多个软件组件实现,所述一个或多个网络资源选自可用网络资源池,所述逻辑结构组织为具有多个层的层级结构,层级结构的每一层包括一个或多个模块化组件,所述逻辑结构包括在模块化组件、所述一个或多个服务、和所述一个或更多配置之间的一个或多个依赖关系,所述一个或多个界面被配置为允许用户在层级结构的多个层上做出与所述一个或多个模块化组件相关的一个或多个动作,所述一个或多个动作中的至少一个动作根据所述一个或多个依赖关系在所述逻辑结构中自动地扩散;
从可用网络资源池中去除所述一个或多个网络资源;
参考环境的逻辑结构,将所述一个或多个网络资源分配给环境;以及
参考环境的逻辑结构,将所述一个或多个网络资源和所述一个或多个软件组件部署给网络,从而允许提供所述一个或多个基于网络的服务。
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-10中任一项的方法的一个或多个计算设备。
13.一种计算机实现的方法,用于管理网络中的一个或多个基于网络的服务,包括:
使用逻辑结构将一个或多个网络资源和一个或多个软件组件部署到网络中,以实现所述一个或多个基于网络的服务,其中,所述逻辑结构指定用于提供所述基于网络的服务的环境;所述逻辑结构将所述一个或多个基于网络的服务与一个或多个对应的配置相互关联;所述逻辑结构组织为具有多个层的层级结构,层级结构的每一层包括一个或多个模块化组件,所述逻辑结构包括模块化组件之间的依赖关系,以及
响应于对所述一个或多个模块化组件中与层级结构的特定层相对应的至少一个模块化组件的操作进行修改的命令,根据所述依赖关系来修改所述一个或多个网络资源和所述一个或多个软件组件的对应子集的操作。
14.根据权利要求13的计算机实现的方法,其中,将所述一个或多个网络资源和所述一个或多个软件组件部署到网络中,以实现所述一个或多个基于网络的服务包括以指定的序列来进行部署。
15.根据权利要求14的计算机实现的方法,其中所述指定的序列指定了以下中的任一项或二者:要相互异步地部署的第一组服务;和要相互同步地部署的第二组服务。
16.根据权利要求13-15中任一项的计算机实现的方法,其中,对所述一个或多个模块化组件中的所述至少一个模块化组件的操作进行修改的命令包括启动或停止服务器的操作、软件组件、服务、一组服务、或环境的命令。
17.根据权利要求13-16中任一项的计算机实现的方法,其中,对所述一个或多个模块化组件中的所述至少一个模块化组件的操作进行修改的命令是停止所述一个或多个模块化组件中的所述至少一个模块化组件的操作的命令,所述方法进一步包括响应于将所述一个或多个模块化组件中的所述至少一个模块化组件替换为所述一个或多个模块化组件中的所述至少一个模块化组件的升级版本,修改环境的逻辑结构以包括所述升级版本。
18.根据权利要求17的计算机实现的方法,进一步包括为所述一个或多个模块化组件中的所述至少一个模块化组件的升级版本分配一个或多个新网络资源或者一个或多个新软件组件。
19.根据权利要求13-18中任一项的计算机实现的方法,进一步包括响应于启动或停止一个特定网络资源或一个特定软件组件的操作的命令,启动或停止所述特定网络资源或所述特定软件组件的操作。
20.根据权利要求13-19中任一项的计算机实现的方法,其中,对所述一个或多个模块化组件中的所述至少一个模块化组件的操作进行修改的命令包括停止所述一个或多个模块化组件中的所述至少一个模块化组件的操作命令,所述方法进一步包括将用户群从所述一个或多个模块化组件中的所述至少一个模块化组件迁移到所述一个或多个模块化组件中的所述至少一个模块化组件的不同实例。
21.一种用于管理网络中的一个或多个基于网络的服务的系统,所述系统包括被配置为执行权利要求13-20中任一项的方法的一个或多个计算设备。
22.一种用于管理网络中的一个或多个基于网络的服务的计算机程序产品,所述计算机程序产品包括一个或多个其中存储有计算机程序指令的非瞬时计算机可读介质,所述计算机程序指令被配置为使得当被一个或多个计算设备执行时,使所述一个或多个计算机设备执行根据权利要求13-20中任一项的方法。
CN201380022780.3A 2012-03-12 2013-03-01 用于基于云的服务的网络资源部署 Active CN104272292B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/418,181 2012-03-12
US13/418,181 US8335851B1 (en) 2012-03-12 2012-03-12 Network resource deployment for cloud-based services
PCT/US2013/028626 WO2013138091A1 (en) 2012-03-12 2013-03-01 Network resource deployment for cloud-based services

Publications (2)

Publication Number Publication Date
CN104272292A true CN104272292A (zh) 2015-01-07
CN104272292B CN104272292B (zh) 2017-09-26

Family

ID=47325343

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380022780.3A Active CN104272292B (zh) 2012-03-12 2013-03-01 用于基于云的服务的网络资源部署

Country Status (6)

Country Link
US (4) US8335851B1 (zh)
EP (1) EP2825973B1 (zh)
CN (1) CN104272292B (zh)
CA (1) CA2867126C (zh)
HK (1) HK1200555A1 (zh)
WO (1) WO2013138091A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106209602A (zh) * 2016-08-04 2016-12-07 北京迅达云成科技有限公司 跨数据中心多路径高可靠性消息传输系统
CN108255501A (zh) * 2017-12-29 2018-07-06 三盟科技股份有限公司 一种基于云计算环境下的应用引擎的管理方法及系统
CN109298859A (zh) * 2018-11-01 2019-02-01 郑州云海信息技术有限公司 一种处理云平台下的应用的方法及装置
CN110096284A (zh) * 2019-04-19 2019-08-06 北京金山云网络技术有限公司 一种可视化发布软件的方法、装置、电子设备及存储介质
TWI710915B (zh) * 2017-02-27 2020-11-21 大陸商騰訊科技(深圳)有限公司 一種基於互聯網資料中心的資源處理方法、相關裝置以及通信系統
CN113360164A (zh) * 2021-05-27 2021-09-07 上海信宝博通电子商务有限公司 快速部署应用的方法、装置及存储介质

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10631068B2 (en) 2008-11-26 2020-04-21 Free Stream Media Corp. Content exposure attribution based on renderings of related content across multiple devices
US10567823B2 (en) 2008-11-26 2020-02-18 Free Stream Media Corp. Relevant advertisement generation based on a user operating a client device communicatively coupled with a networked media device
US9026668B2 (en) 2012-05-26 2015-05-05 Free Stream Media Corp. Real-time and retargeted advertising on multiple screens of a user watching television
US9386356B2 (en) 2008-11-26 2016-07-05 Free Stream Media Corp. Targeting with television audience data across multiple screens
US9519772B2 (en) 2008-11-26 2016-12-13 Free Stream Media Corp. Relevancy improvement through targeting of information based on data gathered from a networked device associated with a security sandbox of a client device
US9154942B2 (en) 2008-11-26 2015-10-06 Free Stream Media Corp. Zero configuration communication between a browser and a networked media device
US8180891B1 (en) 2008-11-26 2012-05-15 Free Stream Media Corp. Discovery, access control, and communication with networked services from within a security sandbox
US10334324B2 (en) 2008-11-26 2019-06-25 Free Stream Media Corp. Relevant advertisement generation based on a user operating a client device communicatively coupled with a networked media device
US10977693B2 (en) 2008-11-26 2021-04-13 Free Stream Media Corp. Association of content identifier of audio-visual data with additional data through capture infrastructure
US10880340B2 (en) 2008-11-26 2020-12-29 Free Stream Media Corp. Relevancy improvement through targeting of information based on data gathered from a networked device associated with a security sandbox of a client device
US10419541B2 (en) 2008-11-26 2019-09-17 Free Stream Media Corp. Remotely control devices over a network without authentication or registration
US9961388B2 (en) 2008-11-26 2018-05-01 David Harrison Exposure of public internet protocol addresses in an advertising exchange server to improve relevancy of advertisements
US9986279B2 (en) 2008-11-26 2018-05-29 Free Stream Media Corp. Discovery, access control, and communication with networked services
US10079716B2 (en) 2009-03-04 2018-09-18 Amazon Technologies, Inc. User controlled environment updates in server cluster
US8707111B2 (en) 2011-02-09 2014-04-22 Ebay Inc. High-volume distributed script error handling
US8335851B1 (en) 2012-03-12 2012-12-18 Ringcentral, Inc. Network resource deployment for cloud-based services
US8949930B1 (en) * 2012-03-19 2015-02-03 Amazon Technologies, Inc. Template representation of security resources
JP5537600B2 (ja) * 2012-05-15 2014-07-02 株式会社Nttドコモ 制御ノード及び通信制御方法
US8904402B2 (en) * 2012-05-30 2014-12-02 Red Hat, Inc. Controlling capacity in a multi-tenant platform-as-a-service environment in a cloud computing system
US9043786B1 (en) * 2012-06-29 2015-05-26 Emc Corporation Blueprint-driven environment template creation in a virtual infrastructure
US9003406B1 (en) * 2012-06-29 2015-04-07 Emc Corporation Environment-driven application deployment in a virtual infrastructure
CN104380276A (zh) 2012-07-03 2015-02-25 惠普发展公司,有限责任合伙企业 管理云服务
US8978035B2 (en) * 2012-09-06 2015-03-10 Red Hat, Inc. Scaling of application resources in a multi-tenant platform-as-a-service environment in a cloud computing system
US9841929B1 (en) * 2012-09-28 2017-12-12 EMC IP Holding Company LLC Distributed system software infrastructure
US9378064B2 (en) * 2012-11-15 2016-06-28 Bank Of America Corporation Orchestration management of information technology
US20160285734A1 (en) * 2012-11-21 2016-09-29 Nec Corporation Cloud-environment provision system, route control method, and medium
US9336118B2 (en) * 2013-01-28 2016-05-10 Hewlett Packard Enterprise Development Lp Allocating test capacity from cloud systems
KR20150113106A (ko) * 2013-01-31 2015-10-07 퀄컴 인코포레이티드 다수의 컴퓨팅 디바이스들에 걸친 정보에 대한 액세스의 제공
US9628399B2 (en) * 2013-03-14 2017-04-18 International Business Machines Corporation Software product instance placement
GB2512051A (en) * 2013-03-18 2014-09-24 Ibm Robust service deployment
US9122804B2 (en) * 2013-05-15 2015-09-01 Oracle Internation Corporation Logic validation and deployment
EP2852124A4 (en) * 2013-07-09 2015-12-02 Cloud Technology Ltd G RESOURCE DEPLOYMENT METHOD FOR CLOUD COMPUTING ENVIRONMENT
US8874755B1 (en) 2013-07-31 2014-10-28 Splunk, Inc. Provisioning of cloud networks with services
US9083653B2 (en) * 2013-10-21 2015-07-14 Hewlett-Packard Development Company, L.P. Automated cloud set up
US9749257B2 (en) * 2013-10-24 2017-08-29 Kcura Llc Method and apparatus for dynamically deploying software agents
US10164986B2 (en) 2013-10-30 2018-12-25 Entit Software Llc Realized topology system management database
EP3063660A4 (en) 2013-10-30 2017-06-14 Hewlett-Packard Enterprise Development LP Execution of a topology
US10230580B2 (en) 2013-10-30 2019-03-12 Hewlett Packard Enterprise Development Lp Management of the lifecycle of a cloud service modeled as a topology
WO2015065356A1 (en) 2013-10-30 2015-05-07 Hewlett-Packard Development Company, L.P. Topology remediation
US10447538B2 (en) 2013-10-30 2019-10-15 Micro Focus Llc Facilitating autonomous computing within a cloud service
EP3063663A4 (en) 2013-10-30 2017-04-19 Hewlett-Packard Enterprise Development LP Stitching an application model to an infrastructure template
EP3063654A4 (en) 2013-10-30 2017-06-21 Hewlett-Packard Enterprise Development LP Modifying realized topologies
US10284427B2 (en) 2013-10-30 2019-05-07 Hewlett Packard Enterprise Development Lp Managing the lifecycle of a cloud service modeled as topology decorated by a number of policies
WO2015065370A1 (en) 2013-10-30 2015-05-07 Hewlett-Packard Development Company, L.P. Monitoring a cloud service modeled as a topology
US9509560B2 (en) 2014-02-25 2016-11-29 Sap Se Unified configuration for cloud integration
US9639742B2 (en) 2014-04-28 2017-05-02 Microsoft Technology Licensing, Llc Creation of representative content based on facial analysis
US9773156B2 (en) 2014-04-29 2017-09-26 Microsoft Technology Licensing, Llc Grouping and ranking images based on facial recognition data
US9874914B2 (en) 2014-05-19 2018-01-23 Microsoft Technology Licensing, Llc Power management contracts for accessory devices
US10037202B2 (en) * 2014-06-03 2018-07-31 Microsoft Technology Licensing, Llc Techniques to isolating a portion of an online computing service
US9717006B2 (en) 2014-06-23 2017-07-25 Microsoft Technology Licensing, Llc Device quarantine in a wireless network
CN104090799B (zh) * 2014-07-11 2017-10-27 百度在线网络技术(北京)有限公司 一种环境部署方法及装置
US20160011882A1 (en) * 2014-07-12 2016-01-14 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Resource advisor for automated bare-metal operating system installation
US9922099B2 (en) 2014-09-30 2018-03-20 Splunk Inc. Event limited field picker
US10235460B2 (en) 2014-09-30 2019-03-19 Splunk Inc. Sharing configuration information for searches in data intake and query systems
US9990423B2 (en) * 2014-09-30 2018-06-05 Splunk Inc. Hybrid cluster-based data intake and query
US9720737B2 (en) * 2014-10-31 2017-08-01 Microsoft Technology Licensing, Llc Controlling resource allocation with automated consumption against a work breakdown structure
US10057184B1 (en) 2014-11-10 2018-08-21 Amazon Technologies, Inc. Resource configuration compliance service
CN104598592A (zh) * 2015-01-20 2015-05-06 北京仿真中心 一种基于xml的数据库自定义方法及系统
CN104615466B (zh) * 2015-02-05 2017-08-25 广州亦云信息技术有限公司 一种云平台部署方法和系统
US10951473B1 (en) * 2015-03-25 2021-03-16 Amazon Technologies, Inc. Asynchronous fleet configuration service
US9871857B2 (en) 2015-04-29 2018-01-16 Microsoft Technology Licensing, Llc Optimal allocation of dynamic cloud computing platform resources
US10200246B1 (en) * 2015-09-01 2019-02-05 Vmware, Inc. Importing parameters from nested information-technology blueprints
TW201712563A (zh) * 2015-09-25 2017-04-01 鴻海精密工業股份有限公司 公共雲系統及公共資源配置方法
US10411954B2 (en) 2015-10-13 2019-09-10 International Business Machines Corporation Pattern based network configuration
US10523591B2 (en) 2015-12-08 2019-12-31 Microsoft Technology Licensing, Llc Discovering resource availability across regions
US9542219B1 (en) * 2015-12-17 2017-01-10 International Business Machines Corporation Automatic analysis based scheduling of jobs to appropriate cloud resources
US9985827B2 (en) * 2016-05-24 2018-05-29 Futurewei Technologies, Inc. Automated generation of deployment workflows for cloud platforms based on logical stacks
US10305750B1 (en) * 2016-07-29 2019-05-28 Juniper Networks, Inc. Methods and apparatus for centralized configuration management of heterogenous network devices through software-based node unification
US10761827B2 (en) * 2016-11-30 2020-09-01 Vmware, Inc. WIN32 software distribution architecture
US10809989B2 (en) * 2017-05-05 2020-10-20 Servicenow, Inc. Service release tool
US20190108112A1 (en) * 2017-10-05 2019-04-11 Hcl Technologies Limited System and method for generating a log analysis report from a set of data sources
US11095644B2 (en) 2019-06-04 2021-08-17 Bank Of America Corporation Monitoring security configurations of cloud-based services
US11251982B2 (en) * 2019-06-12 2022-02-15 Nextiva, Inc. System and method of creating and organizing private chat messages
US20210142249A1 (en) * 2019-10-22 2021-05-13 FinancialForce.com, Inc. Consolidated resource management across multiple services
CN110601911A (zh) * 2019-11-14 2019-12-20 紫光云(南京)数字技术有限公司 一种基于python的物联网云网关的实现方法和系统
US11422862B1 (en) * 2019-11-29 2022-08-23 Amazon Technologies, Inc. Serverless computation environment with persistent storage
MX2023003154A (es) * 2020-09-16 2023-04-20 Cloudblue Llc Sistemas y métodos para implementar modelos de aplicación a través de la nube.
US11711282B2 (en) * 2020-12-16 2023-07-25 Capital One Services, Llc TCP/IP socket resiliency and health management
WO2024074196A1 (en) * 2022-10-04 2024-04-11 Telefonaktiebolaget Lm Ericsson (Publ) Methods and apparatus for data sharing for services

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040148375A1 (en) * 2001-02-12 2004-07-29 Levett David Lawrence Presentation service which enables client device to run a network based application
CN1906600A (zh) * 2004-01-30 2007-01-31 国际商业机器公司 计算实用工具的分级资源管理
US20100042720A1 (en) * 2008-08-12 2010-02-18 Sap Ag Method and system for intelligently leveraging cloud computing resources
US20100153527A1 (en) * 2008-12-12 2010-06-17 Mci Communications Services, Inc. Method and system for automating network engineering
US20110029981A1 (en) * 2009-07-31 2011-02-03 Devendra Rajkumar Jaisinghani System and method to uniformly manage operational life cycles and service levels

Family Cites Families (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2236320A1 (en) * 1995-11-02 1997-05-09 Andrew Timothy Hunter Service creation apparatus for a communications network
IL121181A0 (en) * 1997-06-27 1997-11-20 Agentics Ltd A method and system for unifying multiple information resources into hierarchial integrated information resource accessible by means of user interface
US6073172A (en) * 1997-07-14 2000-06-06 Freegate Corporation Initializing and reconfiguring a secure network interface
US6418445B1 (en) * 1998-03-06 2002-07-09 Perot Systems Corporation System and method for distributed data collection and storage
US6335733B1 (en) * 1998-05-21 2002-01-01 International Business Machines Corporation Method and system for displaying and editing a resource schedule
US6356900B1 (en) * 1999-12-30 2002-03-12 Decode Genetics Ehf Online modifications of relations in multidimensional processing
US20020091681A1 (en) * 2000-04-03 2002-07-11 Jean-Yves Cras Report then query capability for a multidimensional database model
US7334216B2 (en) * 2000-04-04 2008-02-19 Sosy, Inc. Method and apparatus for automatic generation of information system user interfaces
US7023845B1 (en) * 2000-06-13 2006-04-04 Ciena Corporation Network device including multiple mid-planes
US20020087665A1 (en) * 2000-12-29 2002-07-04 Marshall Donald Brent Method and system for integrated resource management
US7099938B2 (en) * 2001-03-23 2006-08-29 Hewlett-Packard Development Company, L.P. Method, computer system, and computer program product for monitoring services of an information technology environment
US7415671B2 (en) * 2001-06-08 2008-08-19 Computer Associates Think, Inc. Interactive hierarchical status display
US20060010425A1 (en) * 2001-10-29 2006-01-12 Willadsen Gloria J Methods and apparatus for automated mangement of software
US7574496B2 (en) * 2001-11-30 2009-08-11 Surgient, Inc. Virtual server cloud interfacing
DE60216885T2 (de) * 2001-12-19 2007-07-05 Alcatel Canada Inc., Ottawa Prozessor für die Befehlszeilenschnittstelle
US7093259B2 (en) * 2001-12-20 2006-08-15 Cadence Design Systems, Inc. Hierarchically structured logging for computer work processing
US7353464B1 (en) * 2002-04-01 2008-04-01 Microsoft Corporation Hierarchical data navigation tool populated by a web service
EP1363187A1 (en) * 2002-05-15 2003-11-19 Sony International (Europe) GmbH Dispatching application steps in a client/server environment
FI20021833A0 (fi) 2002-10-09 2002-10-15 Nokia Corp Sertifikaattien toimittamisen kontrollointi matkaviestinjärjestelmässä
AU2003293933A1 (en) * 2003-12-09 2005-07-05 Sap Ag A method of planning demand for a configurable product in a managed supply chain and a demand planner apparatus for planning demand for a configurable product in a managed supply chain
US7526542B2 (en) * 2004-01-16 2009-04-28 Computer Associates Think, Inc. Methods and apparatus for information processing and display for network management
EP1628248A1 (en) * 2004-08-20 2006-02-22 Sap Ag Modelling a bill of materials for a configurable product in a managed supply chain.
EP1628250A1 (en) * 2004-08-20 2006-02-22 Sap Ag A methof of automatically modelling a relationship between a configurable product and a plurality of components of the configurable products as a bill of materials, a computer system for automatically modelling a relationship between configurable product and a plurality of components of the configurable product as a bill of materials
US8028250B2 (en) * 2004-08-31 2011-09-27 Microsoft Corporation User interface having a carousel view for representing structured data
US8000451B1 (en) * 2005-02-08 2011-08-16 Sprint Communications Company L.P. System and method for managing network switch transaction dependencies
US8429630B2 (en) * 2005-09-15 2013-04-23 Ca, Inc. Globally distributed utility computing cloud
US8201189B2 (en) * 2005-12-30 2012-06-12 Sap Ag System and method for filtering components
US7761493B1 (en) * 2006-04-11 2010-07-20 Oracle America, Inc. Population of sparse information model hierarchies
US7640223B2 (en) * 2006-11-16 2009-12-29 University Of Tennessee Research Foundation Method of organizing and presenting data in a table using stutter peak rule
US8108855B2 (en) * 2007-01-02 2012-01-31 International Business Machines Corporation Method and apparatus for deploying a set of virtual software resource templates to a set of nodes
CN101311903B (zh) * 2007-05-22 2011-05-18 国际商业机器公司 对基于组件的软件系统中的组件进行重用的方法和装置
US7747750B1 (en) * 2007-06-27 2010-06-29 Emc Corporation Method for reserving resources in a storage area network with selective capabilities
US8650306B2 (en) * 2007-10-24 2014-02-11 Honeywell International Inc. Interoperable network programmable controller generation system
US8572033B2 (en) * 2008-03-20 2013-10-29 Microsoft Corporation Computing environment configuration
US8230269B2 (en) * 2008-06-17 2012-07-24 Microsoft Corporation Monitoring data categorization and module-based health correlations
US7596620B1 (en) * 2008-11-04 2009-09-29 Aptana, Inc. System and method for developing, deploying, managing and monitoring a web application in a single environment
JP2010092455A (ja) * 2008-09-10 2010-04-22 Ricoh Co Ltd ファイル管理システム及びプログラム
US9300532B2 (en) * 2008-10-24 2016-03-29 Microsoft Technology Licensing, Llc Automating deployment of service applications by exposing hosting environment constraints
US8645837B2 (en) * 2008-11-26 2014-02-04 Red Hat, Inc. Graphical user interface for managing services in a distributed computing system
US8615606B2 (en) * 2008-12-10 2013-12-24 At&T Intellectual Property I, L.P. Methods and apparatus to manipulate services in a distributed business intelligence computing environment
US9065874B2 (en) * 2009-01-15 2015-06-23 Social Communications Company Persistent network resource and virtual area associations for realtime collaboration
US7904540B2 (en) * 2009-03-24 2011-03-08 International Business Machines Corporation System and method for deploying virtual machines in a computing environment
WO2010127266A1 (en) * 2009-05-01 2010-11-04 Citrix Systems, Inc. Systems and methods for providing a virtual appliance in an application delivery fabric
US9047350B2 (en) * 2009-08-18 2015-06-02 Disney Enterprises, Inc. System and method for managing relationships among resources
US8316125B2 (en) * 2009-08-31 2012-11-20 Red Hat, Inc. Methods and systems for automated migration of cloud processes to external clouds
US20110126197A1 (en) * 2009-11-25 2011-05-26 Novell, Inc. System and method for controlling cloud and virtualized data centers in an intelligent workload management system
WO2011075444A1 (en) * 2009-12-14 2011-06-23 Rebecca Ansley System and method for process improvement and associated products and services
US8433802B2 (en) * 2010-01-26 2013-04-30 International Business Machines Corporation System and method for fair and economical resource partitioning using virtual hypervisor
US8301746B2 (en) * 2010-01-26 2012-10-30 International Business Machines Corporation Method and system for abstracting non-functional requirements based deployment of virtual machines
US8880700B2 (en) * 2010-05-28 2014-11-04 Red Hat, Inc. Delivery of user-controlled resources in cloud environments via a resource specification language wrapper
US8504689B2 (en) * 2010-05-28 2013-08-06 Red Hat, Inc. Methods and systems for cloud deployment analysis featuring relative cloud resource importance
US20110302003A1 (en) * 2010-06-04 2011-12-08 Deodhar Swati Shirish System And Method To Measure, Aggregate And Analyze Exact Effort And Time Productivity
US20120089951A1 (en) * 2010-06-10 2012-04-12 Cricket Communications, Inc. Method and apparatus for navigation within a multi-level application
US8924198B2 (en) * 2010-07-26 2014-12-30 Radiant Logic, Inc. Searching and browsing of contextual information
US9342368B2 (en) * 2010-08-31 2016-05-17 International Business Machines Corporation Modular cloud computing system
US9235442B2 (en) * 2010-10-05 2016-01-12 Accenture Global Services Limited System and method for cloud enterprise services
US8645529B2 (en) * 2010-10-06 2014-02-04 Infosys Limited Automated service level management of applications in cloud computing environment
US20120096389A1 (en) * 2010-10-19 2012-04-19 Ran J Flam Integrated web-based workspace with curated tree-structure database schema
US9442771B2 (en) * 2010-11-24 2016-09-13 Red Hat, Inc. Generating configurable subscription parameters
US8787367B2 (en) 2010-11-30 2014-07-22 Ringcentral, Inc. User partitioning in a communication system
US20120144364A1 (en) * 2010-12-03 2012-06-07 Intuit Inc. Application user interface for networked-computing environments
US8745233B2 (en) * 2010-12-14 2014-06-03 International Business Machines Corporation Management of service application migration in a networked computing environment
US8910172B2 (en) * 2010-12-29 2014-12-09 Symantec Corporation Application resource switchover systems and methods
US8984506B2 (en) * 2011-01-07 2015-03-17 International Business Machines Corporation Techniques for dynamically discovering and adapting resource and relationship information in virtualized computing environments
US8707111B2 (en) * 2011-02-09 2014-04-22 Ebay Inc. High-volume distributed script error handling
US8949427B2 (en) * 2011-02-25 2015-02-03 International Business Machines Corporation Administering medical digital images with intelligent analytic execution of workflows
US20130205028A1 (en) * 2012-02-07 2013-08-08 Rackspace Us, Inc. Elastic, Massively Parallel Processing Data Warehouse
US8261295B1 (en) * 2011-03-16 2012-09-04 Google Inc. High-level language for specifying configurations of cloud-based deployments
US8452786B2 (en) * 2011-05-06 2013-05-28 Sap Ag Systems and methods for business process logging
US8732665B2 (en) * 2011-06-28 2014-05-20 Microsoft Corporation Deploying environments for testing by providing instantaneous availability of prebuilt environments
US8775728B2 (en) * 2012-01-03 2014-07-08 International Business Machines Corporation Extended address volume (EAV) allocation verification
US9038065B2 (en) * 2012-01-30 2015-05-19 International Business Machines Corporation Integrated virtual infrastructure system
US9047133B2 (en) * 2012-03-02 2015-06-02 Vmware, Inc. Single, logical, multi-tier application blueprint used for deployment and management of multiple physical applications in a cloud environment
US8335851B1 (en) 2012-03-12 2012-12-18 Ringcentral, Inc. Network resource deployment for cloud-based services
US8832649B2 (en) * 2012-05-22 2014-09-09 Honeywell International Inc. Systems and methods for augmenting the functionality of a monitoring node without recompiling

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040148375A1 (en) * 2001-02-12 2004-07-29 Levett David Lawrence Presentation service which enables client device to run a network based application
CN1906600A (zh) * 2004-01-30 2007-01-31 国际商业机器公司 计算实用工具的分级资源管理
US20100042720A1 (en) * 2008-08-12 2010-02-18 Sap Ag Method and system for intelligently leveraging cloud computing resources
US20100153527A1 (en) * 2008-12-12 2010-06-17 Mci Communications Services, Inc. Method and system for automating network engineering
US20110029981A1 (en) * 2009-07-31 2011-02-03 Devendra Rajkumar Jaisinghani System and method to uniformly manage operational life cycles and service levels

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106209602A (zh) * 2016-08-04 2016-12-07 北京迅达云成科技有限公司 跨数据中心多路径高可靠性消息传输系统
CN106209602B (zh) * 2016-08-04 2019-11-22 北京迅达云成科技有限公司 跨数据中心多路径高可靠性消息传输系统
TWI710915B (zh) * 2017-02-27 2020-11-21 大陸商騰訊科技(深圳)有限公司 一種基於互聯網資料中心的資源處理方法、相關裝置以及通信系統
CN108255501A (zh) * 2017-12-29 2018-07-06 三盟科技股份有限公司 一种基于云计算环境下的应用引擎的管理方法及系统
CN109298859A (zh) * 2018-11-01 2019-02-01 郑州云海信息技术有限公司 一种处理云平台下的应用的方法及装置
CN110096284A (zh) * 2019-04-19 2019-08-06 北京金山云网络技术有限公司 一种可视化发布软件的方法、装置、电子设备及存储介质
CN110096284B (zh) * 2019-04-19 2023-06-02 北京金山云网络技术有限公司 一种可视化发布软件的方法、装置、电子设备及存储介质
CN113360164A (zh) * 2021-05-27 2021-09-07 上海信宝博通电子商务有限公司 快速部署应用的方法、装置及存储介质
CN113360164B (zh) * 2021-05-27 2022-09-23 上海信宝博通电子商务有限公司 快速部署应用的方法、装置及存储介质

Also Published As

Publication number Publication date
CA2867126A1 (en) 2013-09-19
EP2825973A4 (en) 2015-02-25
CN104272292B (zh) 2017-09-26
US20130246625A1 (en) 2013-09-19
US8452864B1 (en) 2013-05-28
US9338067B2 (en) 2016-05-10
EP2825973B1 (en) 2015-10-14
EP2825973A1 (en) 2015-01-21
US20150074281A1 (en) 2015-03-12
US8335851B1 (en) 2012-12-18
US8918513B2 (en) 2014-12-23
WO2013138091A1 (en) 2013-09-19
HK1200555A1 (zh) 2015-08-07
CA2867126C (en) 2017-01-17

Similar Documents

Publication Publication Date Title
CN104272292A (zh) 用于基于云的服务的网络资源部署
CN107515776B (zh) 业务不间断升级方法、待升级节点和可读存储介质
US20230308525A1 (en) Embedded database as a microservice for distributed container cloud platform
AU2007289177B2 (en) Dynamically configuring, allocating and deploying computing systems
CN113742031B (zh) 节点状态信息获取方法、装置、电子设备及可读存储介质
US20070198988A1 (en) Multiple application integration
CN103226493A (zh) 多操作系统业务的部署方法和系统
US11763219B2 (en) Titanium task-engine system
CN110932914A (zh) 部署方法、部署装置、混合云系统架构及计算机存储介质
CN116089011A (zh) 创建镜像仓库的方法、装置、存储介质以及电子设备
CN109995878A (zh) 资源库共享方法及分布式集群系统
CN110781441A (zh) 基于微服务化架构的新零售业务中台
CN112667711B (zh) 一种MySQL只读实例管理方法、系统及计算机可读介质
CN115037757B (zh) 一种多集群服务管理系统
CN109840094B (zh) 一种数据库的部署方法、装置及存储设备
US10176059B2 (en) Managing server processes with proxy files
CN113326052A (zh) 业务组件的升级方法、装置、计算机设备和存储介质
CN108369548B (zh) 云资源的灾难恢复
US11675627B1 (en) Method and system for integrating multiple cloud platforms with diagraming tools
CN115098259A (zh) 一种资源管理方法、装置、云平台、设备及存储介质
CN116319321A (zh) 配置定向下发方法、装置、设备及存储介质
CN115393061A (zh) 一种文件处理方法和相关装置
CN117155948A (zh) 集群管理方法、装置、电子设备及存储介质
CN115904404A (zh) 应用管理方法、装置、设备、介质及计算机程序产品
CN117973352A (zh) 一种工单的配置方法、装置及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1200555

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant