資源類型名稱的三個元件是在 RTR 檔案中指定為 vendor-id、resource-type 和 rt-version 的特性。scrgadm 指令會插入句點和冒號分割符以建立資源類型名稱︰
vendor-id.resource-type:rt-version
vendor-id 前綴用來辨別不同公司提供的具有同一名稱的兩個註冊檔案。若要確保 vendor-id 唯一,請在建立資源類型時使用公司的股票代號。rt-version 用來辨別同一基本資源類型的多個註冊版本 (升級)。
# scha_resource_get -O Type -R resource-name -G resource-group-name |
在 Sun Cluster 3.1 之前的註冊資源類型名稱將繼續使用以下語法︰
vendor-id.resource-type
資源類型名稱的格式說明資源類型名稱的格式。
若要確保您正在修改的資源類型為支援升級的資源類型,請將 #$upgrade 指令納入資源類型的 RTR 檔案。對於您要支援的資源類型的每個舊版本,請在 #$upgrade 指令後面增加零個或多個 #$upgrade_from 指令。
#$upgrade 和 #$upgrade_from 指令必須顯示於 RTR 檔案中的資源類型特性宣告區段和資源宣告區段之間。請參閱 rt_reg(4) 線上手冊。
#$upgrade_from "1.1" WHEN_OFFLINE #$upgrade_from "1.2" WHEN_OFFLINE #$upgrade_from "1.3" WHEN_OFFLINE #$upgrade_from "2.0" WHEN_UNMONITORED #$upgrade_from "2.1" ANYTIME #$upgrade_from "" WHEN_UNMANAGED
#$upgrade_from 指令的格式如下所示︰
#$upgrade_from version tunability
RT_version。如果所有資源類型均沒有版本,或其版本並非您先前在 RTR 檔案中定義的版本,請指定空字串 (“”)。
叢集管理員可以升級指定的 RT_version 的條件和時間。
當對於叢集管理員升級資源的時間無限制時使用。升級期間該資源可完全處於線上狀態。
當新資源類型版本的方法如下時使用︰
Update、Stop、Monitor_check 和 Postnet_stop 方法與舊的資源類型版本的啟動方法 (Prenet_stop 和 Start) 相容
Fini 方法與舊版本的 Init 方法相容
升級之前,叢集管理員必須僅停止資源監視器程式。
當新資源類型版本的 Update、Stop、Monitor_check 或 Postnet_stop 方法符合以下情況時使用︰
與舊版本的 Init 方法相容
與舊的資源類型版本的啟動方法 (Prenet_stop 和 Start) 不相容
升級之前,叢集管理員必須先將資源離線。
類似於 WHEN_OFFLINE。然而升級之前,叢集管理員必須停用資源。
當新的資源類型版本的 Fini 方法與舊版本的 Init 方法不相容時使用。升級之前,叢集管理員必須將現有資源群組切換為未管理狀態。
如果資源類型的某一版本沒有顯示在 #$upgrade_from 指令的清單中,則依預設,RGM 會將 WHEN_UNMANAGED 的可調性強加至該版本。
用於防止現有資源升級為資源類型的新版本。叢集管理員必須刪除然後重建資源。
當 RTR 檔案的內容變更時,您僅需變更 RTR 檔案中的 RT_version 特性。為該特性選擇一個值,使其可以清晰表示此資源類型版本為最新版本。
請勿將 RT_version 字串中以下字元納入 RTR 檔案,否則,資源類型限制將失敗︰
空格鍵
Tab 鍵
斜線 (/)
反斜線 (\)
星號 (*)
問號 (?)
逗號 (,)
分號 (;)
左方括號 ([)
右方括號 (])
RT_version 特性在 Sun Cluster 3.0 中為可選擇特性,在 Sun Cluster 3.1 中則強制啟動。
Sun Cluster 3.0 中的資源類型名稱不含有版本字尾,如下所示︰
vendor-id.resource-type
即使在叢集管理員將叢集軟體升級至 Sun Cluster 3.1 或更高版本後,最初在 Sun Cluster 3.0 中註冊的資源類型將繼續具有一個遵循該語法的名稱。同樣地,如果 RTR 檔案是在執行於 Sun Cluster 3.1 及以上版本的叢集上註冊的,則其 RTR 檔案缺少 #$upgrade 指令的資源類型將獲得一個 Sun Cluster 3.0 格式名稱 (不具有版本字尾)。
叢集管理員可以透過使用 Sun Cluster 3.0 中的 #$upgrade 指令或 #$upgrade_from 指令註冊 RTR 檔案。然而,不支援將現有資源升級為 Sun Cluster 3.0 中新的資源類型。