Sun Cluster 数据服务开发者指南(适用于 Solaris OS)

使用 Agent Builder 提供的 适用于 Korn Shell 的 $hostnames 变量

对于许多应用程序,尤其是支持网络的应用程序而言,必须将应用程序侦听时所在的和响应用户请求的主机的主机名通过命令行传递给应用程序。大多数情况下,必须为目标资源类型的启动、停止和探测命令指定主机名参数(在“配置”屏幕上)。但是,应用程序侦听时所在的主机的主机名是特定于群集的。主机名是在群集上运行资源时才确定的,在 Agent Builder 生成资源类型代码时,并不能确定主机名。

要解决此问题,Agent Builder 提供了您可以在启动、停止和探测命令的命令行中指定的 $hostnames 变量。


注意 –

$hostnames 变量只适用于基于 Korn shell 的服务。不支持对基于 C 和 GDS 的服务使用 $hostnames 变量。


指定 $hostnames 变量的方法就像指定实际主机名一样,例如:


% /opt/network_aware/echo_server -p port_no -l $hostnames

如果目标资源类型的资源在群集上运行,则为该资源配置的 LogicalHostnameSharedAddress 主机名(在该资源的 Network_resources_used 资源特性中)将替换 $hostnames 变量的值。

如果配置的是包含多个主机名的 Network_resources_used 特性,则 $hostnames 变量中将包含所有主机名(用逗号分开各主机名)。