cc [flags…] –I /usr/cluster/include file –L /usr/cluster/lib –l dsdev#include <rgm/libdsdev.h> scha_err_t scds_hasp_check(scds_handle_t handle, scds_hasp_status_t *hasp_status);
scds_hasp_check()() 函数检索有关由资源使用的 SUNW.HAStoragePlus 资源的状态信息。此信息是从资源所依赖的所有 SUNW.HAStoragePlus 资源的状态(联机或其他)获得的。此状态是通过使用为资源定义的 Resource_dependencies、Resource_dependencies_weak、Resource_dependencies_restart 或 Resource_dependencies_offline_restart 系统属性获得的。
如果 SUNW.HAStoragePlus 资源的 FileSystemMountPoints 属性为 nonempty,则当且只当 FileSystemMountPoints 属性中列出的所有文件系统当前都挂载在某个给定的节点上时,scds_hasp_check()() 函数才会认为该资源在该节点上处于联机状态。全局挂载的文件系统可以挂载在其中的 SUNW.HAStoragePlus 资源处于脱机状态的节点上。所有 FileSystemMountPoints,无论是在本地挂载的还是全局挂载的,都必须挂载在一个节点上,才会认为 SUNW.HAStoragePlus 资源在该节点上处于联机状态。资源的实际状态可能为联机也可能为脱机。如果这些文件系统中有任何一个没有挂载在该节点上,则会认为该资源处于脱机状态并且其实际状态为脱机。
资源类型实现可以使用 VALIDATE 和 MONITOR_CHECK 方法回调实现中的 scds_hasp_check()() 来确定是否应该执行特定于由 SUNW.HAStoragePlus 资源管理的任何文件系统的检查。
仅在执行该函数的同一群集环境(全局群集或区域群集)中检查资源依赖性。忽略 clustername: resourcename 形式的依赖性(群集间依赖性)。例如,如果唯一的 HAStoragePlus 依赖性是群集间依赖性,则函数会返回状态代码 SCDS_HASP_NO_RESOURCE。
当函数成功时,状态代码将存储在 hasp_status 参数中。此代码可以是以下某一值:
指明该资源不依赖于 SUNW.HAStoragePlus 资源。
指明该资源所依赖的 SUNW.HAStoragePlus 资源在任何潜在主节点上均未处于联机状态。
指明该资源所依赖的至少一个 SUNW.HAStoragePlus 资源在从中调用此函数的节点上未处于联机状态,但在另一节点上处于联机状态。
指明该资源所依赖的所有 SUNW.HAStoragePlus 资源在从中调用此函数的节点上均处于联机状态。
scds_hasp_check()() 函数会忽略 FilesystemMountPoints 和 Zpools 属性都设置为空列表(默认设置)的 SUNW.HAStoragePlus 资源,即使 GlobalDevicePaths 属性为 nonempty 也是如此。
支持以下参数:
从 scds_initialize 返回的句柄。
资源使用的 SUNW.HAStoragePlus 资源的状态。
该函数成功。
此值还指明 hasp_status 参数中存储的状态代码有效。
该函数失败。
hasp_status 参数中存储的值未定义。忽略该未定义的值。
有关其他错误代码的描述,请参见 scha_calls(3HA) 手册页。
头文件
库
有关下列属性的说明,请参见 attributes(5):
|
scds_initialize(3HA)、scha_calls(3HA)、attributes(5)、SUNW.HAStoragePlus(5)