この章では、Sun Cluster 構成のパッチの追加および削除手順について説明します。
クラスタの性質上、クラスタを正しく動作させるには、すべてのクラスタメンバーノードが同じパッチレベルにある必要があります。Sun Cluster 固有のパッチをノードに適用するときは、パッチをインストールする前に、クラスタメンバーシップからノードを一時的に削除するか、全体のクラスタを停止しておく必要があります。この節では、これらの手順について説明します。
Sun Cluster パッチを適用する前に、まず、特別な注意事項がないかどうか、Sun Cluster の Web ページで確認してください。参照先 (URL) については、『Sun Cluster 3.0 ご使用にあたって』を参照するか、御購入先にお問い合わせください。特に注意事項がない場合は、パッチの README ファイルを確認してください。
Sun Cluster 固有のパッチを適用する場合は、この章の説明よりも新しい注意事項がないかどうか、README を参照してください。
すべてのクラスタノードにパッチをインストールする作業は、次のいずれかの状況に該当します。
再起動パッチ (ノード) - パッチを適用するには、ノードをシングルユーザーモードで起動してから、クラスタに結合するために再起動する必要があります。このようにする場合、まず、任意のリソースグループまたはディスクデバイスグループを、パッチを適用するノードから別のクラスタメンバーに切り替え、ノードをオフライン状態にする必要があります。また、クラスタ全体が停止しないように、パッチは 1 つのクラスタノードに適用します。
このようにパッチを適用する間、個々のノードが一時的に停止しても、クラスタ自体は使用できます。パッチを適用したノードは、他のノードが同じパッチレベルになくても、メンバーノードとしてクラスタに結合できます。
再起動パッチ (クラスタおよびファームウェア) - ソフトウェアまたはファームウェアパッチを適用するには、クラスタを停止し、各ノードをシングルユーザーモードで起動する必要があります。次に、ノードを再起動してクラスタに結合します。このようなパッチでは、パッチ適用中にクラスタを使用できます。
非再起動パッチ - ノードをオフライン状態にする必要はありません (引き続きリソースグループやデバイスグループのマスターとして動作可能)。また、パッチの適用時にノードを停止または再起動する必要もありません。ただし、パッチは一度に 1 つのノードに適用し、次のノードに適用する前に、パッチが動作することを確認する必要があります。
パッチの適用によって配下のクラスタプロトコルが変更されることはありません。
パッチをクラスタに適用するには patchadd コマンドを、パッチを削除するには (可能な場合) patchrm コマンドをそれぞれ使用します。
Sun Cluster パッチをより効率的に適用するために、次の点に注意してください。
パッチまたはファームウェアの更新に関連する特別な注意事項がないかどうかを、Sun Cluster のWeb サイトで確認してください。現在の URL についは、『Sun Cluster 3.0 ご使用にあたって』を参照するか、御購入先にお問い合わせください。
パッチを適用する前に、必ずパッチの README ファイルを参照してください。
クラスタを実際の環境で実行する前に、すべてのパッチ (必須および推奨) を適用します。
ハードウェアのファームウェアレベルを確認し、必要と思われる必須ファームウェアアップデートをインストールします。
クラスタメンバーとして機能するノードには、すべて同じパッチを適用する必要があります。
クラスタサブシステムパッチの状態を最新の状態に保ちます。これには、ボリューム管理、ストレージファームウェア、クラスタトランスポートなどが含まれます。
定期的に (四半期に一度など) パッチレポートを確認し、推奨パッチを Sun Cluster 構成に適用します。
御購入先が推奨するパッチを適用します。
主要なパッチを更新したらフェイルオーバーをテストします。クラスタの動作が低下または悪化した場合に備えて、パッチを取り消す準備をしておきます。
作業 |
参照箇所 |
---|---|
ノードを停止せずに、非再起動 Sun Cluster パッチを一度に 1 つのノードだけに適用します。 | |
クラスタメンバーを非クラスタモードにした後で、再起動 Sun Cluster パッチを適用します。 |
|
Sun Cluster パッチを削除します。 - 必要に応じて、パッチを取り消すことができます。 |
パッチを一度にクラスタの 1 つのノードだけに適用し、パッチ処理中でもクラスタ自体は動作したままにします。この手順では、まず、ノードを停止し、パッチを適用する前にこのノードをシングルユーザーモードで起動する必要があります。
パッチを適用する前に、Sun Cluster インストール前後の特別な注意事項があるかどうかを確認してください。
パッチを適用するノードでスーパーユーザーになります。
パッチを適用するノードのリソースグループおよびデバイスグループの一覧を表示します。
# scrgadm -pv # scstat |
すべてのリソースグループ、リソース、デバイスグループを、パッチを適用するノードから他のクラスタメンバーに切り替えます。
# scswitch -S -h node |
リソースおよびデバイスグループの切り替え先のノードを指定します。
指定したノードからすべてのデバイスサービスとリソースグループを退避します。
ノードを停止します。
# shutdown -g 0 [-y] |
停止までの待機時間を 0 に指定します。
確認プロンプトで yes と答えます。これにより、ユーザーがその都度確認を入力しなくてもコマンドを実行できます。
ノードをシングルユーザーモードで起動します。
ok boot -s |
パッチを適用します。
# patchadd patch-dir patch-id |
パッチのディレクトリの場所を指定します。
特定のパッチのパッチ番号を指定します。
ノードを再起動してクラスタに結合します。
# reboot |
パッチが正常にインストールされていることを確認します。
# showrev -p | grep patch-id |
パッチが機能しており、ノードとクラスタが正常に動作していることを確認します。
すべてのリソースグループ、リソース、デバイスグループをスイッチバックします (省略可能)。
# scswitch -S -h node |
次に、ノードに Sun Cluster 再起動パッチを適用する例を示します。
# scrgadm -pv ... RG Name: schost-sa-1 ... # scstat ... Device Group Name: dg-schost-1 ... # scswitch -z -h phys-schost-2 -D dg-schost-1 # scswitch -z -h phys-schost-2 -g schost-sa-1 # shutdown -g 0 -y ... ok boot -s ... # patchadd 10-34567 ... # reboot ... # showrev -p | grep 10-34567 # scswitch -z -h phys-schost-1 -D dg-schost-1 # scswitch -z -h phys-schost-1 -g schost-sa-1 |
パッチを取り消す必要がある場合は、「Sun Cluster パッチを削除する」を参照してください。
この手順では、パッチを適用する前に、まずクラスタを停止して各ノードをシングルユーザーモードで起動する必要があります。
パッチを適用する前に、Sun Cluster インストール前後の特別な注意事項があるかどうかを確認してください。
クラスタ内のノードでスーパーユーザーになります。
クラスタを停止します。
# scshutdown [-y] [-g grace-period] ["message"] |
確認プロンプトで yes と答えます。
停止までの待機時間を秒単位で指定します。デフォルトの猶予期間は 60 秒です。
送信する警告メッセージを指定します。message が複数の単語の場合は、引用符で囲みます。
各ノードをシングルユーザーモードで起動します。
各ノードのコンソールで、次のコマンドを実行します。
ok boot -s |
ソフトウェアパッチまたはファームウェアパッチを適用します。
一度に 1 つのノードずつ、次のコマンドを実行します。
# patchadd patch-dir patch-id |
パッチのディレクトリの場所を指定します。
特定のパッチのパッチ番号を指定します。
パッチディレクトリに、この章の手順よりも新しい注意事項がないかどうかを必ず確認してください。
パッチが各ノードに正常にインストールされていることを確認します。
# showrev -p | grep patch-id |
パッチをすべてのノードに適用したら、ノードを再起動してクラスタに結合します。
各ノードで次のコマンドを実行します。
# reboot |
パッチが機能しており、ノードとクラスタが正常に動作していることを確認します。
次に、クラスタに Sun Cluster 再起動パッチを適用する例を示します。
# scshutdown -g 0 -y ... ok boot -s ... # patchadd 10-34567 (Apply patch to other cluster nodes) ... # showrev -p | grep 10-34567 # reboot |
パッチを取り消す必要がある場合は、「Sun Cluster パッチを削除する」を参照してください。
パッチを一度にクラスタの 1 つのノードだけに適用します。非再起動パッチを適用するときは、パッチを適用するノードを停止する必要はありません。
パッチを適用する前に、Sun Cluster インストール前後の特別な注意事項があるかどうかを確認してください。
ノードにパッチを適用します。
# patchadd patch-dir patch-id |
パッチのディレクトリの場所を指定します。
特定のパッチのパッチ番号を指定します。
パッチが正常にインストールされていることを確認します。
# showrev -p | grep patch-id |
パッチが機能しており、ノードとクラスタが正常に動作してことを確認します。
# patchadd 10-34567 ... # showrev -p | grep 10-34567 |
パッチを取り消す必要がある場合は、「Sun Cluster パッチを削除する」を参照してください。
必要に応じて、Sun Cluster パッチを取り消す (削除する) ことができます。
パッチを削除するノードのスーパーユーザーになります。
パッチを削除するノードのリソースグループおよびデバイスグループの一覧を表示します。
# scrgadm -pv # scstat |
すべてのリソースグループ、リソース、デバイスグループを、パッチを削除するノードから他のクラスタメンバーに切り替えます。
# scswitch -S -h node |
リソースおよびデバイスグループの切り替え先のノードを指定します。
指定したノードからすべてのデバイスサービスとリソースグループを退避します。
ノードを停止します。
# shutdown [-y] [-g grace-period] ["message"] |
確認プロンプトで yes と答えます。
停止までの待機時間を秒単位で指定します。デフォルトの猶予期間は 60 秒です。
送信する警告メッセージを指定します。message が複数の単語の場合は、引用符で囲みます。
ノードを非クラスタモードで起動します。
ok boot -x |
パッチを削除します。
# patchrm patch-id |
特定のパッチのパッチ番号を指定します。
ノードを再起動します。
# reboot |
パッチが正常に削除されていることを確認します。
# showrev -p | grep patch-id |
ノードおよびクラスタが正常に動作することを確認します。
すべてのリソースグループ、リソース、デバイスグループをスイッチバックします。
# scswitch -S -h node |
次に、Sun Cluster パッチを削除する例を示します。
# scrgadm -pv ... RG Name: schost-sa-1 ... # scstat ... Device Group Name: dg-schost-1 ... # scswitch -S -h phys-schost-2 # shutdown -y -g 5 "Rebooting down node for maintenance" ... ok boot -x ... # patchrm 10-34567 ... # reboot ... # pkgchk -v 10-34567 ... # scswitch -S -h phys-schost-1 |