資源類型名稱的三個程式元件為在 RTR 檔案中指定為 Vendor_id、Resource_type 和 RT_version 的屬性。 scrgadm 指令將插入句點分割元與逗號分割元,以建立資源類型的名稱:
vendor_id.resource_type:rt_version |
Vendor_id 前綴用來區別兩個由不同供應商提供的相同名稱的註冊檔案。 RT_version 區別具有相同基本資源類型 的多個註冊版本 (升級)。 為了確保 Vendor_id 是唯一的,建議的方法是使用公司建立資源類型的證券代號。
如果 RT_version 字串包含空白、定位符、斜線 (/)、反斜線 (\)、星號 (*)、問號 (?)、逗號 (,)、分號 (;)、左方括號 ([) 或右方括號 (]) 字元,註冊資源類型將失敗。
RT_Version 屬性 (在 Sun Cluster 3.0 中可選用) 在 Sun Cluster 3.1 中是一個強制字串。
scha_resource_get -O Type -R resource_name -G resource_group_name |
在 Sun Cluster 3.1 之前註冊的資源類型名稱將繼續使用以下語法:
vendor_id.resource_type |
支援升級之資源類型的 RTR 檔案必須包含 #$upgrade 指令,其後不跟隨以下格式的指令,或跟隨多個:
#$upgrade_from version tunability |
upgrade_from 指令包含字串 #$upgrade_from,該字串後跟隨 RT_Version,然後是資源的可調性限制。 如果對其正在執行升級的資源類型不屬於某個版本,則會將 RT_Version 指定為一個空字串,如以下最後一個範例所示:
#$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 |
當系統管理員嘗試變更資源 Type_version 時,RGM 將實施這些針對資源的限制。 如果目前版本的資源類型未顯示在清單中,則 RGM 將強加 When_unmanaged 的可調性。
這些指令必須顯示在 RTR 檔案的資源類型屬性宣告區段與 RTR 檔案的資源宣告區段之間。 請參閱 rt_reg(4)。
每當變更 RTR 檔案中的內容時,請變更 RTR 檔案中的 RT_Version 字串。 此屬性的值必須明確指出哪一個是新版本的資源類型以及哪一個是舊版本的資源類型。 如果未對 RTR 檔案進行任何變更,則無需變更 RT_Version 字串。
Sun Cluster 3.0 中的資源類型名稱不包含版本後綴:
vendor_id.resource_name |
即使在您將叢集軟體升級為 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 中的新資源類型。