用于分布式计算环境中的发现的系统、方法技术方案

技术编号:2887561 阅读:160 留言:0更新日期:2012-04-11 18:40
一个大型分布式企业包括具有服务一组端点机的管理服务器的计算资源。一个管理基础结构包括在给定端点机上部署的运行引擎。根据位于某管理服务器的任务部署请求,发现代理程序可以被启动到计算机网络。当软件代理程序到达支持运行引擎的某端点机时,该代理程序被执行,在判定该端点是否是该特定任务部署的一个候选。(*该技术在2019年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及管理大型分布式计算机企业网络,更具体来说,涉及进行其中最好使用网络中部署的、适合在本地运行环境中执行的软件部件的发现操作。现今有许多公司都希望将它们的所有计算资源置于公司网络上。为此目的,人们将计算机连入地理位置分散的大型网络环境中,分布式地管理这种环境。有一种这类管理框架(framework)包含一个管理许多节点的服务器,每个节点有一个储存本地节点专有的对象数据的本地对象数据库。每个被管理节点通常包括一个管理框架,管理框架包含许多管理例程,并能以相对较大的数目(例如数百个)向远程机器同时进行网络连接。随着被管理节点数目的增加,系统维护的问题也增多,发生机器故障或其它故障的机会也增多。这种问题在典型的企业中随着节点数的增加而变得严重。在这些节点中,只有一小部分是文件服务器、名称服务器、数据库服务器或者其它非线端或“端点”机器的机器。大多数网络机器只是个人计算机或工作站,正常一天中少见有管理活动。系统管理员通常是通过由管理员在某个本地机器上配置、然后分配或部署到网络中的系统和网络任务来管理这类环境的。接收这种任务的机器被称作部署“目标”。然而,这种目标机器的位置和特性通常则是由管理员人工确定的。因此,例如如果要部署的任务是个数据库管理应用程序,管理员就必须指定网络中特定的数据库服务器。这个过程既繁琐又费时,特别是当网络大小增加到包括有数千个连入机器时更是如此。如果系统管理员不对所有的目标机器作出指定,系统管理任务就可能得不到正确的执行。另一方面,如果过分地指定目标的数量和位置,就会不必要地消耗网络资源。此外,网络管理员有许多理由对在这种大型管理环境中进行所谓的“发现”操作感兴趣。举例来说,管理员可能希望确定环境中当前有多少以及哪些机器支持某给定版本的软件程序。要确定特定机器是否有足够的资源(例如可用的磁盘存储空间)支持软件升级,也需要进行发现操作。进行发现操作的再另一个原因可能只是需要或要求进行系统或资源盘点,以利对将来的企业扩展作出规划。因此,发现操作的性质和类型是相当不同的。已知的分布式管理体系结构不向系统管理员提供不必人工将任务与给定机器组关联就能发出分配请求并部署任务的能力。同样,这种已知技术尚未彻底改造得适合在这种环境中进行系统管理、管理和维护所需进行的范围广泛的基本发现操作,特别是当网络增长到包括数千个连入的被管理机器时更是如此。本专利技术解决现有技术的这些和其它有关问题。因此,本专利技术的一个主要目的是,在连接和管理了有大量机器的分布式计算机企业环境中进行发现操作。本专利技术的另一个主要目的是,在分布式计算机网络中部署在本地运行环境中执行以进行这种发现操作的发现代理程序(discoveryagents)。本专利技术的另一个主要目的是,提供能随时部署到分布式被管理环境中、用于发现然后对于控制后继操作(例如任务部署)有用的给定事实(例如机器和/或资源标识、特性、状况、状态、属性等等)的软件部件。本专利技术的一个更具体的目的是,提供一种调度程序能用其标识用于接收一个任务部署的候选机器的特定机器、使得管理员或其它用户不必人工地将任务与给定机器组关联的机制。本专利技术的一个特定目的是,将一个基于JAVA的软件“发现代理程序”部署到分布式计算机网络环境中,以发现网络内要被作为接收特定任务部署的目标的特定机器或资源。本专利技术的另一个目的是,响应目的旨在标识或定位用作接收给定任务的适当目标机器或资源的给定请求而向大型分布式计算机网络中启动一组一个或多个发现代理程序。该任务可以是系统管理任务、管理任务、配置任务或者任何其它应用程序。本专利技术的一个进一步具体目的是,将网络中调度的用于发现目的的软件代理程序进行定制或裁剪成随后要部署的任务类型的一个功能。这样,软件代理程序就能更好地确定是否有候选机器能适合作为部署的潜在目标。本专利技术的另一个更一般的目的是,使大型分布式计算机网络中分配目标的发现更加自动化,籍此减少系统管理的复杂性和费用。本专利技术的另一个目的是,在大型计算机网络中初始调度为发现用于后继任务部署的分配目标可能所需的最小量的代码。本专利技术的进一步目的是,向分布式计算机网络中部署一个自我路由选择(self-routing)的软件代理程序,以发现满足给定标准的工作站。在特定的搜索期间,给定的代理程序可以在特定节点“克隆”自身,以便沿着新的网络路径继续搜索。本专利技术的另一个更一般的目的是,随着移动式发现代理程序在网络中的调度和迁移,收集关于大型计算机网络化环境中工作站的信息。本专利技术的这些和其它目的是通过本文披露的用于在大型的分布式计算环境中发现的系统、方法和程序产品而实现的。网络环境中所支持的管理基础结构包括一个最好位于某个中央位置(例如管理服务器)的调度机构和一个在网络的给定节点上所支持的运行环境。特别地,该运行环境(例如引擎)最好是在分布式企业环境的每个被管理节点上所支持的分布式框架的一部分。一个优选方法从分配请求开始。分配请求不限于任何特定类型的系统或网络管理、配置或管理任务。根据该请求,调度机构判断是否能将作为部署的目标的机器(即“目标机器”)从本地资源(例如存储以前收集或生成的配置数据的本地储存库)中标识出来。如果得不到这种数据或者由于其它原因数据没有用,调度机构就将一组一个或多个“发现代理程序”部署到网络中,发现代理程序的使命是定位并标识用于该部署的适当目标。这些一个或多个代理程序于是就“扩散”到网络中,收集信息,用于随后的任务部署。发现代理程序最好是一小段定制或改编成以后要部署的特定任务的一个功能的代码。这种定制能缩短完成整体搜索所需要的时间,因为可以“调整”代理程序,使其评估符合特定特性的候选节点。如果该特性不存在,软件代理程序就可以另寻别处去搜索(或者克隆自身,访问新的网络路径)。当特定发现代理程序到达网络中某节点时,软件代理程序最好连接到已经存在的本地运行环境中,由此来启动一个本地发现过程。由发现代理程序执行的发现例程可能发现的情况有,本地机器(或其上的某种资源或应用程序)是个合适的目标、本地机器(或其上的某种应用程序)不是个合适的目标、或者所能获取的信息不足以作出这种判断。根据在该发现过程期间所获得的信息,软件代理程序也可以标识一个或多个必须遍历以继续发现过程并由此完成搜索的新的网络路径。软件代理程序于是可以将自身启动到另一个节点,或者“克隆”自身,需要时将“克隆的”代理程序启动到新的网络路径。如果软件代理程序发现,候选机器是合适的目标,就生成某种标识数据(例如确认标志、机器标识符、状态标识符等等)。该标识数据然后被存储在与代理程序关联的一个数据存储器内(如果代理程序要返回到调度机构的话),或者,也能将这种数据传送回调度机构(如果代理程序在发现过程结束时消除自身的话)。这种传送可以用简单的报文传递技术来实现。当给定网络路径被穷尽时,发现代理程序于是就要么返回到调度机构,要么消除自身,这要视情况而定。因此,在每个节点,软件代理程序最好由以前部署在那里的运行引擎来运行。另一种可选方案是,软件代理程序作为一个独立的过程用现存的本地资源来运行。当工作站(作为目标机器)的合适性不确定时,软件代理程序会从调度机构或某个其它网络源获取其它的代码,以利其作出判断。这种其它代码可以是另一个软件代理程序。尽本文档来自技高网...

【技术保护点】
一种在具有服务一组机器的管理服务器的分布式计算机网络中进行发现的方法,包含以下步骤:在该组机器的一个子组上部署一个运行引擎的实例,以便在该分布式计算机网络中创建一个分布式运行环境;响应某给定事件,将一个发现代理程序从一个源部署到该计 算机网络中;在支持该运行引擎的实例的给定机器上,用运行引擎执行该发现代理程序以进行一个发现操作。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:M麦纳利BJ维特
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1