CN103109263A - 部署软件应用的方法、装置和制品 - Google Patents

部署软件应用的方法、装置和制品 Download PDF

Info

Publication number
CN103109263A
CN103109263A CN2010800684082A CN201080068408A CN103109263A CN 103109263 A CN103109263 A CN 103109263A CN 2010800684082 A CN2010800684082 A CN 2010800684082A CN 201080068408 A CN201080068408 A CN 201080068408A CN 103109263 A CN103109263 A CN 103109263A
Authority
CN
China
Prior art keywords
software
computer hardware
software application
group
demand
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
CN2010800684082A
Other languages
English (en)
Inventor
Y.塔拉金
A.奥伦
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of CN103109263A publication Critical patent/CN103109263A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • 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/3442Recording 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 planning or managing the needed capacity
    • 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
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • 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
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/328Computer systems status display
    • 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
    • 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/3447Performance evaluation by modeling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software
    • 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/5061Partitioning or combining of resources
    • G06F9/5072Grid computing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了部署软件应用的方法、装置和制品。公开的示例包括:询问用户指示软件系统所需要的容量水平的第一参数和指示要为软件系统安装的一组软件应用的第二参数;基于该第一参数和第二参数确定要在计算机系统上安装的软件系统的一群部件;基于该组软件应用确定计算机硬件需求;将所确定的计算机硬件需求与计算机硬件配置进行比较;当计算机硬件配置至少满足所确定的计算机硬件需求时指示计算机硬件配置是足够的;以及当计算机硬件配置是足够的时,通过安装所确定的该组软件应用的该群部件来配置该组软件应用。

Description

部署软件应用的方法、装置和制品
背景技术
业务服务管理(BSM)是用于从业务的角度来监视和测量信息技术服务的一套产品。BSM给予用户从与信息技术基础设施相关联的各式各样的数据收集器收集数据(性能度量和事件两者)的能力。这些数据收集器的范围从监视低水平硬件性能(诸如处理器使用)的收集器到可以对跨越多个机器和处理的业务交易(诸如订单执行)进行监视的较高水平收集器。BSM包含对从监视获得的数据进行分析和管理的各种方式。另外,BSM的实现可以包含许多应用,这些应用的范围从显示各种业务处理的实时状态的仪表板到允许用户就他们的业务应用或硬件性能创建服务水平协议的应用。
BSM的实现旨在满足不同客户群的需要。并非全部的客户都想要运行相同的数据收集器或者使用同一组应用来就他们的数据进行分析并提出报告。另外,容量水平也可以变化。例如,一个客户可能需要监视100个服务器的性能并且具有10个在BSM系统上的并发用户,而另一个客户将监视10,000个主机并且具有75个在该BSM系统上的并发用户。
附图说明
图1图示了包括BSM部署的示例系统,该BSM部署对包括连接到网络的一个或更多计算设备的计算机基础设施进行管理。
图2是图1的服务器部署工具的示例实现的框图。
图3是表示实现软件部署工具的示例机器可读指令的流程图。
图4是表示实现图2的容量监视器的示例机器可读指令的流程图。
图5图示了与图1的示例软件部署工具相关联的示例图形用户界面,其使用户能输入业务需要和软件选择信息并且能接收关于基于那些业务需要和软件选择信息输入的硬件需求的信息。
图6图示了可以提供针对软件部件的硬件需求信息的信息的示例表格。
图7图示了可以被用于确定软件部件的容量水平的信息的示例表格。
图8图示了可以被用于配置和/或部署图1的BSM部署的示例图形用户。
图9是示例处理器平台的示意图示,该处理器平台可以被使用和/或被编程来执行图3-4的示例交互、示例处理和/或示例机器可访问指令以实现在此描述的示例方法、装置和/或制品中的任何或者全部。
具体实施方式
公开了部署软件应用的方法、装置和制品。在公开的示例中,部署管理工具从用户接收关于业务需要和期望的用于安装的软件的信息。该示例部署管理工具基于业务需要确定与软件应用相关联的软件部件。另外,该示例部署管理工具确定软件部件中的每一个的硬件需求并且添加该硬件需求来确定针对BSM的计划安装的硬件简档。基于该硬件简档和可用硬件资源,示例部署工具安装并配置BSM。该部署工具然后监视BSM部署以确定BSM部署的操作是否超过了所配置的容量水平并且确定BSM部署的实际容量水平的硬件需求是否超过了在其上安装有BSM的(一个或多个)计算机系统的可用硬件资源。当BSM部署的操作超过了所配置的容量水平和/或硬件需求超过了硬件资源时,该部署工具向用户提供警报。
图1图示了包括BSM部署102的示例系统100,该BSM部署102对包括连接到网络104的一个或更多计算设备的计算机基础设施106进行管理。根据图示的示例,该BSM部署102包括服务器部署工具108。
图示的示例的BSM部署102使该BSM部署102的用户(例如,系统管理员)能监视并管理计算机基础设施106的计算设备。例如,该BSM部署102可以实现对计算设备上执行的软件应用的性能进行监视、在计算设备上配置和/或安装软件应用、针对硬件或软件错误监视计算设备、监视计算机设备中的变化等。示例BSM部署102是安装在服务器计算机上的软件应用。可替换地,该BSM部署102可以通过安装在一个或更多计算机上的一个或更多软件应用来实现。
该示例BSM部署102包括服务器部署工具108。该服务器部署工具108获得关于该BSM部署102的操作的用户输入并且基于该用户输入,安装、配置和/或调谐该BSM部署102的安装。该服务器部署工具108可以是独立的系统(例如,软件应用)或者可以结合该BSM部署102的系统进行操作(例如,针对该BSM部署102的安装器)。因此,如在此更详细地描述的那样,服务器部署工具108的一些实现使用户能定制该BSM部署102的部署以符合他们的需要,而无需用户提供或确定硬件需求。例如,用户可以指定他们期望的BSM部署102的应用部件组和指定反映它们的使用的容量水平,并且服务器部署工具将确定系统的硬件简档并相应地配置BSM部署102。示例服务器部署工具108在操作期间另外监视BSM部署102以当它们的使用或配置超过了可用硬件资源和/或配置时通知用户。
尽管在此描述的示例提及该BSM部署102,但是在此描述的方法、装置和制品可用于其它类型的系统。例如,服务器部署工具108可以被用于安装、配置和/或调谐任何类型的软件/硬件系统。贯穿本专利的对BSM部署102的提及旨在为示例并且本公开的覆盖范围不限于使用和/或包括BSM产品的实现。
图示的示例的网络104通信地将计算机基础设施106的一个或更多计算设备和BSM部署102耦合。该网络104可以是任何类型的一个或更多网络,诸如,例如有线网络、无线网络、局域网、广域网、互联网等的任何组合。
图示的示例的计算机基础设施106包括一个或更多计算设备。该一个或更多计算设备可以是任何类型的计算设备,诸如,例如(一个或多个)个人计算机、(一个或多个)服务器、(一个或多个)台式计算机、(一个或多个)膝上型计算机、(一个或多个)路由器、(一个或多个)交换机、(一个或多个)集线器、(一个或多个)网关、(一个或多个)防火墙、(一个或多个)控制系统、(一个或多个)移动计算设备等。例如,计算机基础设施106可以与业务相关联并且可以包括此业务的计算设备中的任何或全部。该计算机基础设施106的计算设备可以定位在一个物理位置处或者可以遍及几个物理位置地分布。根据图示的示例,该BSM部署102监视、管理和/或配置计算机基础设施106的计算设备。
尽管已经在图1中图示了示例系统100,但是可以以任何方式将图1中图示出的BSM部署102、软件部署工具108和/或设备中的一个或更多进行组合、分开、重新布置、省略、除去和/或实现。此外,该示例系统100可以通过硬件、软件、固件和/或硬件、软件和/或固件的任何组合实现。示例硬件包括,但不限于,示例处理器平台P100和/或任何数量和/或(一个或多个)类型的(一个或多个)电路、(一个或多个)可编程处理器、(一个或多个)专用集成电路(ASIC)、(一个或多个)可编程逻辑器件(PLD)、(一个或多个)现场可编程逻辑器件(FPLD)和/或(一个或多个)现场可编程门阵列(FPGA)等。
图2是图1的服务器部署工具108的示例实现的框图。该示例服务器部署工具108包括业务需要接收器202、软件选择接收器204、软件部件选择器206、软件部件资源索引208、需求处理器210、软件安装器/配置器212、以及容量监视器214。
图示的示例的业务需要接收器202接收关于该BSM部署102的实现的业务需要的信息。例如,业务需要接收器202可以经由用户界面从用户、从输入文件等接收业务需要。图示的示例的业务需要接收器202不针对计算机硬件需求向用户进行询问。例如,图5图示了可以被提供给用户来接收业务需要信息的示例图形用户界面。由业务需要接收器202接收的业务需要可以包括任何类型的关于在其中BSM部署102将进行操作的环境的信息。例如,业务需要信息可以包括任何类型的容量信息,诸如,例如BSM部署102的用户的数量、要被BSM部署102监视的计算设备的数量、要被BSM部署102监视的应用的数量、要被BSM部署102监视的交易的数量、要被BSM部署102监视的计算设备的用户的数量、要被监视的主机的数量等。尽管业务需要接收器202已经被描述为接收与业务需要相关联的数据,但是业务需要接收器202可以接收任何类型的与BSM部署102的容量和使用相关联的信息,诸如,例如人的需要、几个业务所需要的容量等。业务需要接收器202将接收到的信息发送给软件部件选择器206。
图示的示例的软件选择接收器204接收关于被选择为包括在BSM部署102中的软件的信息。例如,软件选择接收器204可以经由用户界面从用户、从输入文件等接收对要包括在BSM部署102的安装中的软件应用的选择。例如,图5图示了可以被提供给用户来接收软件选择信息的示例图形用户界面。由软件选择接收器204接收到的软件选择可以是任何类型的关于要被包括的软件应用的信息。例如,软件选择信息可以是特定软件应用的选择,可以是关于由用户选择的BSM部署102的特征或能力的信息等,这些特征或能力被软件选择接收器204解释以识别提供所述特征或能力所需要的软件应用。该软件选择接收器204将接收到的信息发送到软件部件选择器206。
图示的示例的软件部件选择器206从业务需要接收器202接收业务需要信息并且从软件选择接收器204接收软件选择信息并且确定要安装的软件部件。示例软件部件选择器206访问软件部件资源索引208以基于业务需要信息和软件选择信息来确定要安装的部件。例如,软件部件选择器206可以确定对应于所选择的软件应用的一组部件,并且然后可以基于识别出的业务需要在这些部件中进行选择(例如,选择提供由业务需要指定的容量水平所需要的部件)。软件部件选择器206将识别出的部件发送到需求处理器210。
软件部件资源索引208可以是任何类型的结构化数据、平面文件、或其它提供关于可用软件部件的信息的数据储存器。例如,软件部件资源索引208可以通过可扩展标记语言(XML)文件、电子表格、一个或更多数据库表格等来实现。示例软件部件资源索引208存储可用软件部件(例如,可以选择性地安装的软件应用的部件部分)的列表。另外,示例软件部件资源索引208对利用每一个软件部件的硬件需求(例如,存储器需求、处理器需求、存储空间需求等)的标识进行存储。软件部件资源索引208可以将全部信息存储在一个数据储存器中或者可以通过多个数据储存库来实现。
需求处理器210接收识别出的软件部件并且利用软件部件资源索引208中的信息来确定用于安装和/或执行识别出的软件部件的硬件需求。例如,需求处理器210可以分析每一个软件部件来确定相关联的硬件需求并且然后可以将单独的硬件需求进行组合(例如,求和或相加)来确定针对识别出的软件部件组的总硬件简档。硬件需求可以是与软件部件相关联的任何硬件简档。例如,硬件需求可以是使软件部件能执行的阈值硬件能力,可以是使软件部件能被安装的阈值硬件能力、使软件能被执行和使用的阈值硬件能力、用于使用软件部件的推荐硬件能力等。需求处理器210将识别出的软件部件和硬件需求发送到软件安装器/配置器212。另外,需求处理器210可以向用户提供硬件需求以供审阅。此外,需求处理器210可以分析可用于与BSM部署102一起使用的硬件资源来确定是否有足够的硬件资源可用并且如果由于硬件资源的短缺导致不能对被选择的业务需要和软件选择进行配置的话警告用户。尽管在此描述了硬件需求的分析,但是需求处理器210可以分析任何其它与软件部件相关联的能力,诸如,例如操作系统需求,系统配置设置等。
示例软件安装器/配置器212接收识别出的软件部件和硬件需求并且基于该软件部件和硬件需求安装和/或配置BSM部署102。例如,软件安装器/配置器212可以安装和/或激活识别出的软件部件,可以基于识别出的软件部件和硬件需求将部件配置为运行和/或不运行,可以调谐部件的存储器使用等。由软件安装器/配置器212执行的特定处理可以基于特定BSM部署102或其它正安装的软件系统。
在软件部件被安装和/或被配置之后,示例容量监视器214连续地、周期地、非周期地和/或依据请求地将BSM部署102的操作与所配置的容量水平进行比较并且将BSM部署102的当前的硬件需求与可用硬件资源进行比较来确定硬件资源对于操作容量水平是否足够。当硬件资源不足够时,容量监视器214向用户(例如,系统管理员)显示警报和/或基于操作容量水平调整软件系统的配置以在由硬件资源给出的约束内运行。例如,如果基于10个用户的预期容量实现了系统并且容量监视器214确定100个用户正在访问该系统,则容量监视器214可能警告用户。另外,容量监视器可以确定100个用户的硬件需求,可以确定当前的可用硬件资源是不足够的,并且可以显示请求用户注意的警报。容量监视器214可以在BSM部署102的操作期间、在BSM部署102的空闲时间期间和/或在任何其它时间运行。
尽管图2包括以特定方式分离和耦合的块202-214,但是可以进行改变。例如,可以将块202-214重新布置。另外,两个或更多分开的块可以进行组合并且通过单个部件实现和/或单独块可以被分开并且通过几个部件实现。
图3-4描绘了表示示例处理的流程图,该示例处理可以使用例如计算机可读指令来实现,该计算机可读指令可以被用于部署软件应用(诸如BSM部署102)。图3-4的示例处理可以使用处理器、控制器和/或任何其它合适的处理设备来执行。例如,图3-4的示例处理可以使用在有形计算机可读介质(诸如闪速存储器、只读存储器(ROM)、和/或随机存取存储器(RAM))上存储的编码指令(例如,计算机可读指令)来实现。如在此所使用的那样,术语有形计算机可读介质清楚地被定义为包括任何类型的计算机可读储存器并且把传播信号排除在外。另外或可替换地,图3-4的示例处理可以使用在非暂时计算机可读介质上存储的编码指令(例如,计算机可读指令)来实现,该非暂时计算机可读介质诸如是闪速存储器、只读存储器(ROM)、随机存取存储器(RAM)、高速缓冲存储器、或任何其它在其中存储信息达任何持续时间(例如,达扩展的时间周期、永久地、简短的阶段、用于临时缓冲、和/或用于信息的缓存)的存储介质。如在此所使用的那样,术语非暂时计算机可读介质清楚地被定义为包括任何类型的计算机可读介质并且把传播信号排除在外。
可替换地,图3-4的示例处理中的一些或全部可以使用(一个或多个)专用集成电路(ASIC)、(一个或多个)可编程逻辑器件(PLD)、(一个或多个)现场可编程逻辑器件(FPLD)、分立逻辑、硬件、固件等的任何组合来实现。此外,图3-4的示例处理中的一些或全部可以手动地实现或实现为上述技术中的任何技术的任何组合(例如,固件、软件、分立逻辑和/或硬件的任何组合)。此外,虽然参考图3-4的流程图描述了图3-4的示例处理,但是也可以采用实现图3-4的处理的其它方法。例如,可以改变块执行顺序和/或可以改变、除去、细分或组合所描述的块中的一些。另外,图3-4的示例处理中的任何或全部可以通过例如单独处理线程、处理器、设备、分立逻辑、电路等顺序地和/或并行地执行。
图3是表示实现软件部署工具108的示例机器可读指令的流程图。图3的图示的示例当业务需要接收器202询问软件部署工具200的用户(例如,系统管理员)业务需要信息时开始(块302)。作为响应,业务需要接收器202从用户接收BSM部署102的业务需要信息(块304)。在图示的示例中,软件选择接收器204然后询问用户将要为BSM部署102安装的一个或更多软件应用(块306)。作为响应,软件选择接收器204接收将要安装的(一个或多个)软件应用的指示(块308)。
接着,软件部件选择器206基于业务需要信息和要安装的(一个或多个)软件应用的指示确定软件应用的一组部件(块310)。使用确定的部件组,需求处理器210确定业务需要信息和软件应用的识别出的部件中的每一个的硬件需求(块312)。然后,需求处理器210确定软件部件组的总硬件需求(块314)。例如,需求处理器210可以将软件部件中的每一个的需求进行相加来确定总硬件需求。接着,需求处理器210确定总的可用硬件资源(块316)。例如,需求处理器210可以分析可用于BSM部署102的安装的一个或更多计算机系统中的每一个以确定总的可用硬件资源。需求处理器确定总硬件需求是否超过了总的可用硬件资源(块318)。当总硬件需求超过了总的可用硬件资源时,需求处理器210提供指示可用硬件资源对于被选择的业务需要和软件选择而言是不足够的容量警报。图3的处理然后停止和/或控制返回至块302。用户可以重新开始并提供(一个或多个)业务需要和/或(一个或多个)软件选择的不同的信息或者可以获得另外的硬件以满足需求。
如果总硬件需求未超过总的可用硬件资源(块318),软件安装器/配置器212对识别出的软件部件进行安装(块322)。例如,软件安装器/配置器212可以向用于与BSM部署102一起使用的该一个或更多计算机系统复制部件,可以指示BSM部署102的安装器向该一个或更多计算机系统复制部件,可以基于识别出的软件部件使软件部件去激活或激活等。软件安装器/配置器212然后调谐和/或配置软件部件(块324)。例如,软件安装器/配置器212可以配置用于软件部件中的一个或更多的存储器分配。图3的处理然后停止和/或控制返回块302。
图4是表示实现图2的容量监视器214的示例机器可读指令的流程图。示例处理当容量监视器214确定应用容量水平时开始(块402)。例如,容量监视器214可以分析BSM部署102的操作来确定操作容量(例如,BSM部署102的用户的数量、由BSM部署102监视的交易的数量等)。容量监视器然后确定操作容量水平的硬件需求(块404)。例如,容量监视器214可以分析安装的软件部件并使用基于容量的相关联的需求的列表(例如,软件部件资源索引208)来确定容量水平的硬件需求。接着,容量监视器214确定BSM部署102在其上运行的一个或更多计算机的总的可用硬件资源(块406)。容量监视器确定总硬件需求是否超过了总的可用硬件资源(块408)。当总硬件需求未超过总的可用硬件资源时,控制返回至块402来执行另一轮监视。当总硬件需求超过了总的可用硬件资源时,容量监视器214提供容量警报和/或用于调谐容量的指令(块410)。例如,容量监视器214可以指示用户需要增加硬件资源、减少BSM部署102的容量水平、和/或移除软件部件中的一些。控制然后返回至块402来执行另一轮监视。
尽管由图4图示的示例处理是循环,但是也可以使用任何类型的实现。例如,图4的处理可以在被例如检测出容量水平超过了系统可以维持的负载的熔断器触发之后执行一次。在另一个实现中,图4的处理可以基于时间表而被安排为在特定时间执行。
图5图示了与图1的示例软件部署工具108相关联的示例图形用户界面500,该示例图形用户界面500使用户能输入业务需要和软件选择信息并且能接收关于基于那些业务需要和软件选择信息输入的硬件需求的信息。示例图形用户界面500包括用户输入部分504、软件部件信息部分506、以及硬件需求部分508。
图示的示例的用户输入部分504提供在其中用户(例如,系统管理员)可以输入业务需要信息和软件选择信息的几个字段。例如,用户输入部分504使用户能输入用于操作管理器(OMI)510的主机的数量、要由最终用户管理系统(EUM)512监视的应用的数量、要由业务交易管理系统(BTM)监视的队列的数量、用于系统可用性管理系统(SAM)516的主机的数量、应当启用还是禁用特定软件部件等。尽管示例用户输入部分504提供用于用户输入的表格,但是也可以使用任何类型的用户输入元素,诸如,例如几页的字段、下拉框、复选框、单选按钮、文本字段等。另外,可以包括任何类型的业务需要信息或与要由软件部署工具108部署的软件的容量相关联的其它信息。在图示的示例中,在用户输入用户输入时处理这些用户输入。然而,任何其它类型的触发可以引发对数据的处理,这些其它类型的触发诸如例如提交按钮、已经完成全部字段的确定等。软件部署工具108使用输入到用户输入部分504中的数据来确定容量水平,并且由此确定用于要由软件部署工具108部署的软件的软件安装和配置。
软件部件信息部分506基于来自用户的业务需要信息指示关于要安装的软件部件和它们的容量水平的信息。例如,软件部件信息部分506可以包括针对每一个软件部件的字段,该每一个软件部件是要由软件部署工具108部署的软件的一部分。在图示的示例中,针对每一个软件部件的字段基于从用户提供的业务需要信息和软件选择信息指示是否将安装该软件部件。另外,示例软件部件信息部分506指示软件部件的容量水平。例如,软件部件信息部分506可以指示小、中等、大、超大等的容量水平。可替换地,容量水平可以是要由软件部署工具108部署的软件的容量的任何其它指示(例如,监视计算设备和/或用户的容量)。
硬件需求部分508显示对基于在用户输入部分504中识别出的业务需要在软件部件信息部分中识别出的软件部件计算的硬件需求的指示。示例硬件需求部分508包括以千兆字节(GB)为单位的存储器需求518和以需要的CPU核的数量计的处理器需求520。示例硬件需求部分508提供针对几个不同系统部署类型522(诸如单个服务器实现、两个服务器实现等)的硬件需求。硬件需求部分508为用户提供理解部署特定软件系统所需要的硬件的信息。
当部署软件系统时,可以由软件部署工具108使用软件部件信息部分506和/或硬件需求部分508。例如,如在软件部件信息部分506中所示出的那样可以通过软件安装器/配置器212配置软件部件。需求处理器210可以确定可用硬件资源是否足够满足在硬件需求部分508中识别出的硬件需求。在软件部件信息部分506和/或硬件需求部分508中识别出的数据可以由用户从图形用户界面500传输至软件部署工具108,可以是显示软件部署工具108的数据的界面等。
尽管图形用户界面500包括在单个用户界面上的用户输入部分504、软件部件信息部分506、以及硬件需求部分508,但是这些部分可以可替换地被提供在分开的用户界面上。可以将图形用户界面500与任何其它可用界面集成。另外,可以使用任何类型的用户界面部件来实现这些部分中的任何部分,和/或可以通过输出到文件来实现这些部分中的任何部分。
图6图示了可以提供软件部件的硬件需求信息的示例信息表格602。示例信息表格602可以被存储在软件部件资源索引208中并且可以被软件部件选择器206和/或需求处理器210访问。示例信息表格602包括识别处理或软件部件的列606、识别监视应用的名称的列608、软件应用的名称的列610、容量水平基于什么参数的指示612、识别在其上软件应用和/或处理进行操作的计算设备的列614、识别当使处理或软件部件去激活时所需要的硬件的(一个或多个)列616、识别当使处理或软件部件激活时所需要的硬件的(一个或多个)列618、识别处理或软件部件的最小硬件需求的(一个或多个)列620、识别当处理或软件部件被设置成小容量水平时的硬件需求的(一个或多个)列622、以及识别当处理或软件部件被设置成大容量水平时所需要的硬件的(一个或多个)列624。可以在其它实现中使用另外的列或配置。当确定对应于要由软件部署工具108部署的软件部件的硬件需求时,可以将示例信息表格602用作查找表。
图7图示了可以被用于确定软件部件的容量水平的示例信息表格702。示例信息表格702提供可以由软件部署工具108使用以基于由用户识别出的(一个或多个)业务需要来确定软件部件的适当的容量水平的信息。示例信息表格702包括识别(一个或多个)业务需要的类别的列708、可以由用户输入的(一个或多个)度量的列710、识别相应的软件应用的列712、识别对应于软件应用的去激活的度量的容量参数的列714、识别对应于软件应用的小容量水平的度量的容量参数的列716、以及识别对应于软件应用的大容量水平的度量的容量参数的列716。
图8图示了可以被用于配置和/或部署图1的BSM部署102的示例图形用户界面802。示例图形用户界面802包括使用户能输入硬件和软件简档的文件输入用户界面元件804,诸如例如,由图形用户界面500识别出的硬件和软件简档可以存储在文件中并使用该文件输入用户界面元件804进行输入。图形用户界面802另外包括使用户能调整(一个或多个)度量的(一个或多个)容量水平的度量容量水平用户界面元件808。图形用户界面802还包括要激活的(一个或多个)软件部件的指示和相关联的(一个或多个)容量水平810。此外,图形用户界面802包括在其上将由软件部署工具108部署软件系统的(一个或多个)计算设备(机器)的指示,其包括计算设备的相关联的硬件资源。
图9是示例处理器平台P100的示意图,该示例处理器平台P100可以被使用和/或被编程来执行图3-4的交互和/或示例机器可读指令以实现图1的软件部署工具108和/或图2的业务需要接收器202、软件选择接收器204、软件部件选择器206、需求处理器210、软件安装器/配置器212、和/或容量监视器214。一个或更多通用处理器、处理器核、微控制器等可以被用于实现处理器平台P100。
图9的处理器平台P100包括至少一个可编程处理器P105。处理器P105可以实现例如BSM部署102、软件部署工具108、业务需要接收器202、软件选择接收器204、软件部件选择器206、需求处理器210、软件安装器/配置器212、和/或容量监视器214。处理器P105执行在处理器P105的主存储器(即,计算机可读存储介质)中(例如,在RAM P115和/或ROM P120内)存在和/或在有形计算机可读存储介质P150中存储的编码指令P110和/或P112。处理器P105可以是任何类型的处理单元,诸如处理器核、处理器和/或微处理器。如在此所描述的那样,处理器P105可以尤其执行图3-4的示例交互和/或示例机器可访问指令来部署BSM部署102。因此,编码指令P110、P112可以包括图3-4的指令。
处理器P105经由总线P125与主存储器(包括ROM P120和/或RAM P115)进行通信。RAM P115可以通过动态随机存取存储器(DRAM)、同步动态随机存取存储器(SDRAM)和/或任何其它类型的RAM器件来实现,并且ROM可以通过闪速存储器和/或任何其它期望类型的存储器件来实现。有形计算机可读存储器P150可以是任何类型的有形计算机可读介质,诸如,例如紧致盘(CD)、CD-ROM、软盘、硬盘驱动器、数字通用盘(DVD)和/或与处理器P115相关联的存储器。可以由存储器控制器控制对存储器P115、存储器P120和/或有形计算机介质P150的访问。
处理器平台P100还包括接口电路P130。任何类型的接口标准(诸如外部存储器接口、串行端口、通用输入/输出等)可以实现接口电路P130。一个或更多输入设备P135和一个或更多输出设备P140连接到接口电路P130。
虽然在此已经描述了特定示例方法、装置和制品,但是本公开的覆盖范围不限于此。相反地,本专利覆盖在字面上或在等同原则下完全落入本专利的权利要求的范围内的全部方法、装置和制品。

Claims (15)

1.一种存储机器可读指令的有形制品,当该机器可读指令被执行时,使机器:
询问用户指示软件系统所需要的容量水平的第一参数和指示要为该软件系统安装的一组软件应用的第二参数;
基于该第一参数和第二参数确定要在计算机系统上安装的软件系统的一群部件;
基于该组软件应用确定计算机硬件需求;
将所确定的计算机硬件需求与计算机硬件配置进行比较;
当计算机硬件配置至少满足所确定的计算机硬件需求时指示计算机硬件配置是足够的;以及
当计算机硬件配置是足够的时,通过安装该组软件应用的所确定的该群部件来配置该组软件应用。
2.如权利要求1中所述的有形制品,其中软件系统是业务服务管理系统。
3.如权利要求1中所述的有形制品,其中机器可读指令还使机器:
在安装该组软件应用的所确定的该群部件之后,监视软件系统的操作和计算机硬件配置;
基于软件系统的操作,确定计算机系统的当前硬件需求;以及
当所述当前硬件需求超过了计算机硬件配置时,向用户提供警报。
4.一种部署软件应用的方法,该方法包括:
询问用户指示用于要监视的计算机系统的主机的数量、要监视的该计算机系统的应用的数量、要监视的计算机系统的交易的数量、或要监视的计算机系统的用户的数量中的至少一个的参数,而不用询问用户计算机硬件需求;
基于该参数确定要在计算机系统上安装的一组软件应用的一群部件;
自动地基于该该组软件应用的该群部件确定计算机硬件需求;
将所确定的计算机硬件需求与计算机硬件配置进行比较;
当计算机硬件配置至少满足所确定的计算机硬件需求时指示计算机硬件配置是足够的;以及
当计算机硬件配置是足够的时,通过安装该组软件应用的所确定的该群部件来配置该组软件应用。
5.如权利要求4中所述的方法,其中软件应用与监视计算机基础设施的业务服务管理系统相关联。
6.如权利要求4中所述的方法,其中基于该组软件应用的该群部件来确定计算机硬件需求包括:使用该群部件来访问查找表格以识别该群部件的硬件需求。
7.如权利要求6中所述的方法,还包括:将用于该群部件的硬件需求相加来确定计算机硬件需求。
8.如权利要求4中所述的方法,还包括:当计算机硬件配置未满足所确定的计算机硬件需求时,指示计算机硬件配置是不足够的。
9.如权利要求4中所述的方法,其中通过安装该组软件应用的所确定的该群部件来配置该组软件应用包括:基于该参数,向软件应用分配存储器。
10.一种部署软件应用的装置,该装置包括:
软件选择接收器,用于询问用户要被激活的软件应用;
业务需要接收器,用于接收指示用于要监视的软件应用的主机的数量、要监视的软件应用的应用的数量、要监视的软件应用的交易的数量、或软件应用的用户的数量中的至少一个的参数,
软件部件选择器,用于基于该参数确定要在计算机系统上安装的软件应用的一群部件;
需求处理器,用于基于该软件应用的该群部件确定计算机硬件需求,将所确定的计算机硬件需求与计算机硬件配置进行比较,并且当计算机硬件配置至少满足所确定的计算机硬件需求时指示计算机硬件配置是足够的;以及
软件安装器,用于当计算机硬件配置是足够的时,通过安装该组软件应用的所确定的该群部件来配置软件应用。
11.如权利要求10中所述的装置,其中软件应用与业务服务管理系统相关联。
12.如权利要求10中所述的装置,其中需求处理器通过使用该群部件来访问查找表格以识别该群部件的硬件需求,从而确定计算机硬件需求。
13.如权利要求12中所述的装置,还包括:存储查找表格的数据库。
14.如权利要求10中所述的装置,其中需求处理器还用于在计算机硬件配置未满足所确定的计算机硬件需求时,指示计算机硬件配置是不足够的。
15.如权利要求10中所述的装置,其中软件安装器通过基于该参数向软件应用分配存储器来配置软件应用。
CN2010800684082A 2010-06-01 2010-06-01 部署软件应用的方法、装置和制品 Pending CN103109263A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2010/036971 WO2011152822A1 (en) 2010-06-01 2010-06-01 Methods, apparatus, and articles of manufacture to deploy software applications

Publications (1)

Publication Number Publication Date
CN103109263A true CN103109263A (zh) 2013-05-15

Family

ID=45066997

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010800684082A Pending CN103109263A (zh) 2010-06-01 2010-06-01 部署软件应用的方法、装置和制品

Country Status (4)

Country Link
US (1) US9727322B2 (zh)
EP (1) EP2577451A4 (zh)
CN (1) CN103109263A (zh)
WO (1) WO2011152822A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107463364A (zh) * 2016-06-03 2017-12-12 宏碁股份有限公司 应用程序推荐方法及应用其的电子装置

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101097372B1 (ko) * 2010-11-04 2011-12-23 전자부품연구원 홈 네트워크 시스템에서 어플리케이션 서비스 방법 및 서버
US9015710B2 (en) * 2011-04-12 2015-04-21 Pivotal Software, Inc. Deployment system for multi-node applications
CN102779065B (zh) * 2012-03-26 2015-09-23 联想(北京)有限公司 一种数据处理方法及电子设备
CN102779054B (zh) * 2012-06-15 2015-09-23 北京奇虎科技有限公司 应用程序的安装处理方法和装置、以及服务器
US9317269B2 (en) 2012-09-28 2016-04-19 Wal-Mart Stores, Inc. Systems and methods for installing, managing, and provisioning applications
US8949824B2 (en) * 2012-09-28 2015-02-03 Wal-Mart Stores, Inc. Systems and methods for installing, managing, and provisioning applications
US9235491B2 (en) 2012-09-28 2016-01-12 Wal-Mart Stores, Inc. Systems and methods for installing, managing, and provisioning applications
RU2541935C2 (ru) 2012-12-25 2015-02-20 Закрытое акционерное общество "Лаборатория Касперского" Система и способ развертывания предварительно сконфигурированного программного обеспечения
RU2523113C1 (ru) 2012-12-25 2014-07-20 Закрытое акционерное общество "Лаборатория Касперского" Система и способ целевой установки сконфигурированного программного обеспечения
US8805972B1 (en) * 2013-06-26 2014-08-12 Kaspersky Lab Zao Multi-platform operational objective configurator for computing devices
US9426254B2 (en) 2013-11-22 2016-08-23 Sap Se Methods and systems for building a software appliance
US9348571B2 (en) * 2014-08-25 2016-05-24 General Electric Company Method, device, and program storage device for autonomous software life cycle management
US9626271B2 (en) * 2014-09-26 2017-04-18 Oracle International Corporation Multivariate metadata based cloud deployment monitoring for lifecycle operations
CN105117464B (zh) * 2015-08-25 2019-02-15 北京金山安全软件有限公司 一种应用推送方法、装置及服务设备
US20170264491A1 (en) * 2016-03-12 2017-09-14 Denis DeRuijter Intent based controller for provisioning a network
US10216498B2 (en) * 2016-05-13 2019-02-26 Tibco Software Inc. Custom-built process engine with minimal memory and disk resource consumption

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1662901A (zh) * 2002-06-25 2005-08-31 国际商业机器公司 用于在分布式环境中监视应用性能的方法和系统
US20070220509A1 (en) * 2006-02-24 2007-09-20 International Business Machines Corporation System and method for deploying software based on matching provisioning requirements and capabilities
CN101334741A (zh) * 2007-06-27 2008-12-31 国际商业机器公司 对应用进行建模的方法及对应用进行部署的系统
US20100050179A1 (en) * 2008-08-22 2010-02-25 Ajay Mohindra Layered capacity driven provisioning in distributed environments

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5761380A (en) * 1996-02-12 1998-06-02 International Business Machines Corporation Coordinating installation of distributed software components
US5848270A (en) 1996-08-02 1998-12-08 Oracle Corporation Method and system for determining the performance characteristics of a computer system
US6496979B1 (en) 1997-10-24 2002-12-17 Microsoft Corporation System and method for managing application installation for a mobile device
US6263382B1 (en) 1998-07-29 2001-07-17 Compaq Computer Corporation Sizer for interactive computer system configuration
US6405309B1 (en) * 1999-06-18 2002-06-11 Phoenix Technologies Ltd. Method and apparatus for creating and deploying smaller Microsoft Windows applications for automatic configuration of a computing device
US6789215B1 (en) * 2000-04-21 2004-09-07 Sprint Communications Company, L.P. System and method for remediating a computer
US6768901B1 (en) 2000-06-02 2004-07-27 General Dynamics Decision Systems, Inc. Dynamic hardware resource manager for software-defined communications system
US7065637B1 (en) 2000-08-24 2006-06-20 Veritas Operating Corporating System for configuration of dynamic computing environments using a visual interface
US7251812B1 (en) * 2001-10-31 2007-07-31 Microsoft Corporation Dynamic software update
US20030225563A1 (en) 2002-05-30 2003-12-04 Gonos Dan G. Capacity planning
WO2005050437A2 (de) 2003-11-21 2005-06-02 Peter Neswal Verfahren zur installation und konfiguration von softwarekomponenten
US20050144070A1 (en) 2003-12-23 2005-06-30 Cheshire Stuart D. Method and apparatus for advertising a user interface for configuring, controlling and/or monitoring a service
US20050193389A1 (en) * 2004-02-26 2005-09-01 Murphy Robert J. System and method for a user-configurable, removable media-based, multi-package installer
US8387037B2 (en) * 2005-01-28 2013-02-26 Ca, Inc. Updating software images associated with a distributed computing system
US20110016214A1 (en) * 2009-07-15 2011-01-20 Cluster Resources, Inc. System and method of brokering cloud computing resources
JP4596945B2 (ja) * 2005-03-24 2010-12-15 富士通株式会社 データセンタの需要予測システム、需要予測方法および需要予測プログラム
US7793284B2 (en) * 2005-03-25 2010-09-07 Microsoft Corporation Role based server installation and configuration
US20060253472A1 (en) * 2005-05-03 2006-11-09 Wasserman Theodore J System, method, and service for automatically determining an initial sizing of a hardware configuration for a database system running a business intelligence workload
US7386698B2 (en) 2005-05-12 2008-06-10 International Business Machines Corporation Apparatus and method for automatically defining, deploying and managing hardware and software resources in a logically-partitioned computer system
US7676563B2 (en) 2005-08-12 2010-03-09 Microsoft Corporation Task-oriented management of server configuration settings
WO2008025514A1 (en) 2006-08-29 2008-03-06 Sap Ag Systems and methods for rapid application configuration and deployment
US7802082B2 (en) 2006-08-31 2010-09-21 Intel Corporation Methods and systems to dynamically configure computing apparatuses
US8250525B2 (en) * 2007-03-02 2012-08-21 Pegasystems Inc. Proactive performance management for multi-user enterprise software systems
US8584131B2 (en) 2007-03-30 2013-11-12 International Business Machines Corporation Method and system for modeling and analyzing computing resource requirements of software applications in a shared and distributed computing environment
US20080244047A1 (en) * 2007-04-02 2008-10-02 Inventec Corporation Method for implementing management software, hardware with pre-configured software and implementing method thereof
EP2093964A1 (en) 2008-02-21 2009-08-26 Siemens Aktiengesellschaft Method for dynamic configuration of application components
US8458658B2 (en) * 2008-02-29 2013-06-04 Red Hat, Inc. Methods and systems for dynamically building a software appliance
US20090248186A1 (en) 2008-03-31 2009-10-01 Daniel Thomas Hamling Methods and Systems for Matching Configurable Manufacturing Capacity Requirements and Availability
US20090265707A1 (en) * 2008-04-21 2009-10-22 Microsoft Corporation Optimizing application performance on virtual machines automatically with end-user preferences
US8291378B2 (en) * 2008-07-29 2012-10-16 International Business Machines Corporation Simplified deployment modeling
US8402139B2 (en) * 2010-02-26 2013-03-19 Red Hat, Inc. Methods and systems for matching resource requests with cloud computing environments
US8909783B2 (en) * 2010-05-28 2014-12-09 Red Hat, Inc. Managing multi-level service level agreements in cloud-based network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1662901A (zh) * 2002-06-25 2005-08-31 国际商业机器公司 用于在分布式环境中监视应用性能的方法和系统
US20070220509A1 (en) * 2006-02-24 2007-09-20 International Business Machines Corporation System and method for deploying software based on matching provisioning requirements and capabilities
CN101334741A (zh) * 2007-06-27 2008-12-31 国际商业机器公司 对应用进行建模的方法及对应用进行部署的系统
US20100050179A1 (en) * 2008-08-22 2010-02-25 Ajay Mohindra Layered capacity driven provisioning in distributed environments

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107463364A (zh) * 2016-06-03 2017-12-12 宏碁股份有限公司 应用程序推荐方法及应用其的电子装置
TWI609315B (zh) * 2016-06-03 2017-12-21 宏碁股份有限公司 應用程式推薦方法及應用其的電子裝置

Also Published As

Publication number Publication date
US9727322B2 (en) 2017-08-08
US20130067461A1 (en) 2013-03-14
EP2577451A4 (en) 2014-06-18
WO2011152822A1 (en) 2011-12-08
EP2577451A1 (en) 2013-04-10

Similar Documents

Publication Publication Date Title
CN103109263A (zh) 部署软件应用的方法、装置和制品
Venticinque et al. A methodology for deployment of IoT application in fog
CN110519365B (zh) 一种变更设备业务的方法和业务变更系统
US8438286B2 (en) Methods and apparatus to allocate resources associated with a distributive computing network
CN113726846B (zh) 边缘云系统、资源调度方法、设备及存储介质
US10721312B2 (en) Orchestration and management of services to deployed devices
US9122685B2 (en) Operating cloud computing and cloud computing information system
EP2656215B1 (en) Scheduling and management in a personal datacenter
US20070130330A1 (en) System for inventing computer systems and alerting users of faults to systems for monitoring
CN107491371B (zh) 一种监控部署的方法以及装置
AU2011314183A1 (en) Virtual resource cost tracking with dedicated implementation resources
AU2005301385A1 (en) Network management appliance
US20100271956A1 (en) System and Method for Identifying and Managing Service Disruptions Using Network and Systems Data
CN115033657B (zh) 基于知识图谱的查询方法、装置、设备及存储介质
US20170078221A1 (en) Computer-implemented system for modeling an allocated resource
CN102045197A (zh) 一种告警数据的同步方法及网管系统
CN113138900B (zh) 一种数据采集处理方法、装置和电子设备
CN117751567A (zh) 公用设施通信网络的动态处理分发
CN106100868A (zh) 一种项目运维管理装置、系统及方法
Rafik et al. Towards a smart energy sharing in micro smart grid adopting SDN approach
CN113986662A (zh) 边缘集群监控方法和系统
KR101860014B1 (ko) IoT 기기 오류 예측을 위한 인시던트 룰 조정 장치 및 방법
CN114064377A (zh) 负载均衡器的监控方法、装置、设备及存储介质
US20230153165A1 (en) Multi-layer forecasting of computational workloads
WO2023229735A1 (en) Collecting and visualizing health profile data of radio access network components

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130515

WD01 Invention patent application deemed withdrawn after publication