Sun Cluster 資料服務開發者指南 (適用於 Solaris 作業系統)

獲取特性資訊

大多數回呼方法需要獲取有關資料服務之資源與資源類型特性的資訊。API 將為此目的提供 scha_resource_get() 函數。

系統定義的特性和延伸特性均可用。系統定義的特性是預先定義的。您可以定義 RTR 檔案中的延伸特性。

當您使用 scha_resource_get() 獲取系統定義的特性值時,您可以透過 -O 選項指定特性名稱。指令將僅傳回特性的。例如,在資料服務範例中,Monitor_start 方法需要找到探測程式,這樣才能啟動該程式。探測程式位於資料服務的基底目錄中,RT_basedir 特性指向該基底目錄。Monitor_start 方法擷取 RT_basedir 的值並將其放入 RT_BASEDIR 變數,如下所示︰

RT_BASEDIR=`scha_resource_get -O RT_basedir -R $RESOURCE_NAME -G \
$RESOURCEGROUP_NAME`

對於延伸特性,您必須使用 -O 選項指定某一特性為延伸特性。您還必須提供特性名稱作為最後一個引數。對於延伸特性,指令將傳回特性的類型。例如,在資料服務範例中,探測程式擷取 Probe_timeout 延伸特性的類型和值,並使用 awk 指令將該值僅放入 PROBE_TIMEOUT shell 變數中,如下所示︰

probe_timeout_info=`scha_resource_get -O Extension \
-R $RESOURCE_NAME -G $RESOURCEGROUP_NAME Probe_timeout`
PROBE_TIMEOUT=`echo $probe_timeout_info | awk '{print $2}'`