パッチを一度にクラスタの 1 つのノードだけに適用し、パッチ処理中でもクラスタ自体は動作したままにします。この手順では、まず、ノードを停止し、パッチを適用する前に boot -sx または shutdown -g -y -i0 コマンドを使用してこのノードをシングルユーザーモードで起動する必要があります。
phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。
この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短縮形については、付録 B Sun Cluster オブジェクト指向コマンドを参照してください。
パッチを適用する前に、Sun Cluster 製品の Web サイトで、インストール前後の特別な注意事項があるかどうかを確認してください。
パッチの適用先であるノード上で、スーパーユーザーになるか、RBAC の承認 solaris.cluster.admin を提供する役割になります。
パッチを適用するノードのリソースグループおよびデバイスグループの一覧を表示します。
# clresourcegroup status -n node # cldevicegroup status -n node |
すべてのリソースグループ、リソース、デバイスグループを、パッチを適用するノードから他のクラスタメンバーに切り替えます。
# clnode evacuate -n node |
グローバルクラスタのすべての非投票ノードも含め、すべてのデバイスグループとリソースグループを退避させます。
リソースグループとデバイスグループを切り替えるノードを指定します。
ノードを停止します。
# shutdown -g0 [-y] [-i0] |
ノードを非クラスタのシングルユーザーモードで起動します。
SPARC ベースのシステム上で、次のコマンドを実行します。
ok boot -sx |
x86 ベースのシステム上で、次のコマンドを実行します。
phys-schost# shutdown -g -y -i0 Press any key to continue |
GRUB メニューで矢印キーを使用して該当する Solaris エントリを選択し、e と入力してコマンドを編集します。
GRUB メニューは次のようになっています。
GNU GRUB version 0.95 (631K lower / 2095488K upper memory) +-------------------------------------------------------------------------+ | Solaris 10 /sol_10_x86 | | Solaris failsafe | | | +-------------------------------------------------------------------------+ Use the ^ and v keys to select which entry is highlighted. Press enter to boot the selected OS, 'e' to edit the commands before booting, or 'c' for a command-line. |
GRUB ベースの起動についての詳細は、『Solaris のシステム管理 (基本編)』の「GRUB を使用して x86 システムをブートする (作業マップ)」を参照してください。
ブートパラメータの画面で、矢印キーを使用してカーネルエントリを選択し、e を入力してエントリを編集します。
GRUB ブートパラメータの画面は、次のような画面です。
GNU GRUB version 0.95 (615K lower / 2095552K upper memory) +----------------------------------------------------------------------+ | root (hd0,0,a) | | kernel /platform/i86pc/multiboot | | module /platform/i86pc/boot_archive | +----------------------------------------------------------------------+ Use the ^ and v keys to select which entry is highlighted. Press 'b' to boot, 'e' to edit the selected command in the boot sequence, 'c' for a command-line, 'o' to open a new line after ('O' for before) the selected line, 'd' to remove the selected line, or escape to go back to the main menu. |
コマンドに -sx を追加して、システムを非クラスタモードで起動することを指定します。
[ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename. ESC at any time exits. ] grub edit> kernel /platform/i86pc/multiboot -sx |
Enter キーを押して変更を受け入れ、ブートパラメータの画面に戻ります。
画面には編集されたコマンドが表示されます。
GNU GRUB version 0.95 (615K lower / 2095552K upper memory) +----------------------------------------------------------------------+ | root (hd0,0,a) | | kernel /platform/i86pc/multiboot -sx | | module /platform/i86pc/boot_archive | +----------------------------------------------------------------------+ Use the ^ and v keys to select which entry is highlighted. Press 'b' to boot, 'e' to edit the selected command in the boot sequence, 'c' for a command-line, 'o' to open a new line after ('O' for before) the selected line, 'd' to remove the selected line, or escape to go back to the main menu.- |
b と入力して、ノードを非クラスタモードで起動します。
カーネル起動パラメータコマンドへのこの変更は、システムを起動すると無効になります。次にノードを再起動する際には、ノードはクラスタモードで起動します。クラスタモードではなく、非クラスタモードで起動するには、これらの手順を再度実行して、カーネル起動パラメータコマンドに -sx オプションを追加します。
ソフトウェアパッチまたはファームウェアパッチを適用します。
# patchadd -M patch-dir patch-id |
パッチのディレクトリの場所を指定します。
特定のパッチのパッチ番号を指定します。
パッチディレクトリに、この章の手順よりも新しい注意事項がないかどうかを必ず確認してください。
パッチが正常にインストールされていることを確認します。
# showrev -p | grep patch-id |
ノードを再起動してクラスタに結合します。
# reboot |
パッチが機能しており、ノードとクラスタが正常に動作していることを確認します。
必要に応じて、リソースグループとデバイスグループを切り替えます。
すべてのノードを再起動した後、最後に再起動したノードのリソースグループとデバイスグループはオンラインになりません。
# cldevicegroup switch -n node + | devicegroup ... # clresourcegroup switch -n node[:zone][,...] + | resource-group ... |
リソースグループとデバイスグループの切り替え先のノードの名前。
リソースグループをマスターできるグローバルクラスタ非投票ノード (node) の名前。リソースグループを作成した際に非投票ノードを指定した場合にのみ、zone を指定します。
scversions コマンドを使用し、パッチソフトウェアをコミットする必要があるかどうかを確認してください。
# /usr/cluster/bin/scversions |
結果として、次に示すメッセージのどちらか一方が表示されます。
Upgrade commit is needed. Upgrade commit is NOT needed. All versions match. |
コミットが必要な場合は、パッチソフトウェアをコミットします。
# scversions -c |
scversions を実行すると、状況に応じて 1 つ以上の CMM 再構成が発生します。
次に、ノードに Sun Cluster 再起動パッチを適用する例を示します。
# clresourcegroup status -n rg1 ...Resource Group Resource -------------- -------- rg1 rs-2 rg1 rs-3 ... # cldevicegroup status -n nodedg-schost-1 ... Device Group Name: dg-schost-1 ... # clnode evacuate phys-schost-2 # shutdown -g0 -y -i0 ... |
ノードを非クラスタのシングルユーザーモードで起動します。
SPARC:次のように入力します。
ok boot -sx |
x86:ノードを非クラスタのシングルユーザーモードで起動します。続きの手順で起動ステップを確認します。
# patchadd -M /var/tmp/patches 234567-05 ... # showrev -p | grep 234567-05 ... # reboot ... # cldevicegroup switch -n phys-schost-1 dg-schost-1 # clresourcegroup switch -n phys-schost-1 schost-sa-1 # scversions Upgrade commit is needed. # scversions -c |
パッチを取り消す必要がある場合は、「Sun Cluster パッチの変更」を参照してください。