信息服务。由于网格资源管理器在指派资源之前要经过综合全面的考虑,因此它需要知道哪些网格资源是可用的,以及这些资源的容量与当前使用的情况。这些有关网格资源的知识是通过网格信息服务(Grid Information Service,GIS)维护和提供的,又称为监视与发现服务(Monitoring and Discovery Service,MDS)。
单点登录。跨系统的 ID 映射。如上所述,GSI 提供了认证、授权以及安全的通信。然而,您需要对安全性管理及其含义有深刻完整的理解。比如说:您是否可以将多个用户映射到目标系统中的同一个用户 ID 上?是否需要特定的审计机制来确定实际发起应用程序的是哪一个用户?应用程序不应该要求在使用网格上的不同资源时使用不同的用户 ID 映射机制。
多种平台。尽管 GSI 基于开放的标准化软件,可以在多种平台上运行,然而各种不同的平台其底层的安全机制并不总是一致。比如说,在传统的 UNIX 或基于 Linux 的系统上,读、写、执行等操作的安全机制就与微软的 Windows 环境不同。您应该考虑应用程序可能运行的平台。
当您在构建网格的时候,网格中最重要的资产就是您的数据。在您的设计当中,您将必须确定您对数据的需求,以及如何在整个基础设施中移动数据,要么就是如何用一种安全有效的方式访问所需的数据。您可以通过一组标准化的网格协议与您设计的任何数据资源进行通信。您也可以选择构建一个联邦数据库,创建一个虚拟的数据存储。还有其他一些选择,如存储区域网(Srorage Area Network)、网络文件系统,以及专用的存储服务器等。
Globus 为网格环境提供了 GridFTP 和 Global Access to Secondary Storage(GASS)两种数据传输机制。此外,它还提供了一种复制管理机制,可以帮助您管理和访问数据集的副本。在应用程序中启用网格时的考虑:数据管理。数据管理问题源自如何最大化地使用有限的存储空间、网络带宽、计算资源等。下面列出一些在应用程序设计和实现中需要考虑的数据管理问题:
在广域网上进行数据传输。当您要在 Internet 或者其他的 WAN 上移动数据时,必须考虑安全性、可靠性以及性能等问题。您必须构建一些必要的逻辑来处理数据访问速度慢,甚至被阻断的情况。数据传输的调度。下面两种情况至少要考虑一种:第一个是数据传输的调度,这样当需要某项数据的时候数据就在它适当的位置上了。比如说,如果数据传输需要进行一个小时,而使用这项数据的任务必须在凌晨两点钟开始运行,那么您就应该提前对数据传输进行调度,这样,当需要它的任务运行的时候,数据就是可用的了。第二个是了解进出任何一项资源的任何并发文件传输的数量与规模。
选择数据副本。如果您使用 Globus Data Replication 服务,也许想向应用程序中增加一段选择适当副本的逻辑,也就是说,您想要选择一个包含所需数据的副本,同时还要满足您对性能的要求。 调度器
应用程序的跨平台可用性(可移植性)。应用程序的可执行性是与特定的平台有关的。比如说,用 C 或 C++ 语言编写的应用程序需要在目标平台上进行重新编译,然后才能运行。您可以为每一种平台重新编译一次应用程序,得到的可执行程序就标记为目标平台上的。这种做法能够增加应用程序能够运行的网格主机数目。它的局限性在于将应用程序移植到其他平台上时所花费的成本。
了解 OS 环境。网格是一组异质计算资源。如果应用程序依赖于某种特定的操作系统。那么该应用程序就需要验证网格中是否具有正确的环境,并处理环境不同所带来的问题。
输出文件格式。当一台网格主机上运行的应用程序的输出信息被另一台网格主机上运行的应用程序所访问的时候,了解输出文件的格式就显得十分必要了。这两台网格主机可能具有不同的平台环境。您可以考虑用 XML 作为数据交换的格式。XML 现在已经十分流行,它不仅仅是一种用于数据交换的标记语言,还是一种用于存储半结构化的数据格式。