リソースタイプ名は、RTR ファイルに指定されたプロパティ、Vendor_id、Resource_type、RT_version の 3 つで構成されます。scrgadm コマンドは、ピリオドとコロンを区切り文字として使用し、リソースタイプ名を作成します。
vendor_id.resource_type:rt_version |
Vendor_id 接頭辞では、同一名でベンダーの異なる 2 つの登録ファイルを識別できます。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、リソースの Tunable 属性の制約で構成されます。アップグレードを行う前のリソースタイプにバージョンがない場合、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 によってこれらの制約が課されます。現在のリソースタイプのバージョンがリストに表示されない場合、Tunable 属性は WHEN_UNMANAGED になります。
これらのディレクティブは、RTR ファイル内のリソースタイププロパティ宣言とリソース宣言セクションの間に指定されます。rt_reg( 4) を参照してください。
RTR ファイルの内容が変更されたときは、必ず RTR ファイル内の RT_Version 文字列を変更します。このプロパティの値は、どちらのリソースタイプが新しく、どちらが古いかをはっきりと示す必要があります。RTR ファイルに変更が加えられていなければ、RT_Version 文字列を変更する必要はありません。
Sun Cluster 3.0 のリソースタイプ名には、バージョン接尾辞がありません。
vendor_id.resource_name |
元々 Sun Cluster 3.0 で登録されたリソースタイプは、クラスタリングソフトウェアを Sun Cluster 3.1 以上にアップグレードしたあとも、この形式の名前を持ちます。RTR ファイルを Sun Cluster 3.1 またはそれ以上のソフトウェアで登録した場合でも、RTR ファイル内に #$upgrade ディレクティブの指定がないリソースタイプは、バージョン接尾辞のない Sun Cluster 3.0 の形式の名前を付与されます。
Sun Cluster 3.0 では、#$upgrade ディレクティブや #$upgrade_from ディレクティブを使った RTR ファイルの登録は可能ですが、既存のリソースの新しいリソースタイプへの移行はサポートされません。