この節では、クラスタノードを削除する方法を説明します。次の表に、ノードを既存のクラスタから削除するときに行う作業を示します。これらの作業を正常に行うには、示された順番に従う必要があります。
OPS 構成を実行しているクラスタでは、この手順を実行してはいけません。現時点では、OPS 構成のノードを削除すると、他のノードがリブート時にパニックを起こす可能性があります。
作業 |
参照先 |
---|---|
削除するノードからすべてのリソースグループとデバイスグループを移動 -clnode(1CL) evacuate を使用 |
# clnode evacuate node |
すべてのリソースグループからノードを削除 -clresourcegroup(1CL) remove-node を使用 | |
すべてのデバイスグループからノードを削除 - cldevicegroup(1CL) remove node、 metaset(1M)、および clsetup(1CL) を使用 |
「デバイスグループからノードを削除する (Solaris ボリュームマネージャー)」 「SPARC: デバイスグループからノードを削除する (VERITAS Volume Manager)」 注意:望ましい二次ノードの数を 2 つ以上に構成する場合は、1 に減らす必要があります。 |
完全に接続された定足数デバイスをすべて削除する - clsetup を使用 |
注意:2 ノードクラスタからノードを削除している場合、定足数デバイスを削除してはなりません。 次の手順では、ストレージデバイスを削除する前に定足数デバイスを削除する必要がありますが、定足数デバイスはその直後に追加し直すことができます。 |
ノードから完全に接続されたストレージデバイスをすべて削除する - devfsadm(1M)、\cldevice(1CL) refresh を使用 |
注意:2 ノードクラスタからノードを削除している場合、定足数デバイスを削除してはなりません。「2 ノード接続より大きなクラスタでアレイと単一ノード間の接続を削除する」 |
定足数デバイスを再び追加する (クラスタに残しておきたいノードのみ) - clsetup を使用 | |
削除するノードを保守状態にする - clnode(1CL) evacuate、cluster(1CL) shutdown、および clquorum(1CL) disable を使用 | |
削除するノードからすべての論理トランスポート接続 (トランスポートケーブルとアダプタ) を削除 - clsetup を使用 | |
削除するノードに接続されているすべての定足数デバイスを削除する - cluster set、clquorum remove を使用 | |
クラスタソフトウェア構成からノードを削除 - clnode remove を使用 | |
(省略可能) Sun Cluster ソフトウェアをクラスタノードからアンインストールする |
この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短形式もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短形式については、付録 A 「Sun Cluster オブジェクト指向コマンド」を参照してください。
「クラスタノードの削除」の「作業マップ: クラスタノードの削除」に記載されている必要不可欠な作業をすべて正しく完了していることを確認します。
この手順を実行する前に、ノードをすべてのリソースグループ、デバイスグループ、および定足数デバイスの構成から削除していること、および、このノードを保守状態にしていることを確認します。
削除するノードで、スーパーユーザーになるか、RBAC の承認 solaris.cluster.modify を提供する役割になります。
削除するノードを非クラスタモードで起動します。
SPARC ベースのシステム上で、以下のコマンドを実行します。
ok boot -x |
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 のシステム管理 (基本編)』の第 11 章「GRUB ベースのブート (手順)」を参照してください。
ブートパラメータの画面で、矢印キーを使用してカーネルエントリを選択し、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. |
コマンドに -x を追加して、システムを非クラスタモードで起動することを指定します。
[ 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 -x |
Enter キーを押して変更を受け入れ、ブートパラメータの画面に戻ります。
画面には編集されたコマンドが表示されます。
GNU GRUB version 0.95 (615K lower / 2095552K upper memory) +----------------------------------------------------------------------+ | root (hd0,0,a) | | kernel /platform/i86pc/multiboot -x | | 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 を入力してノードを非クラスタモードで起動します。
カーネル起動パラメータコマンドへのこの変更は、システムを起動すると無効になります。次にノードを再起動する際には、ノードはクラスタモードで起動します。クラスタモードではなく、非クラスタモードで起動するには、これらの手順を再度実行して、カーネル起動パラメータコマンドに -x オプションを追加します。
クラスタからノードを削除します。
# clnode remove nodename |
別のクラスタノードから、scstat(1M) を使用して、ノードが削除されていることを確認します。
# clnode status nodename |
削除するノードから Sun Cluster ソフトウェアをアンインストールする場合は、「Sun Cluster ソフトウェアをクラスタノードからアンインストールする」 に進んでください。削除するノードから Sun Cluster ソフトウェアをアンインストールしない場合は、『Sun Cluster 3.1 - 3.2 Hardware Administration Manual for Solaris OS 』 で説明されているように、ハードウェア接続を削除することにより、クラスタからノードを物理的に削除できます。
次に、ノード phys-schost-2 をクラスタから削除する例を示します。clnode remove コマンドは、クラスタから削除するノードで実行します ( phys-schost-1)。
[Remove the node from the cluster:] phys-schost-1# clnode remove phys-schost-2 [Verify node removal:] phys-schost-1# clnode status phys-schost-2 -- Cluster Nodes -- Node name Status --------- ------ Cluster node: phys-schost-1 Online |
削除するノードから Sun Cluster ソフトウェアをアンインストールする方法については、「Sun Cluster ソフトウェアをクラスタノードからアンインストールする」を参照してください。
ハードウェア手順については、『Sun Cluster 3.1 - 3.2 Hardware Administration Manual for Solaris OS 』を参照してください。
クラスタノードを削除する作業の概要については、表 8–3を参照してください。
ノードを既存のクラスタに追加する方法については、「ノードを認証ノードリストに追加する」を参照してください。
3 ノードまたは 4 ノード接続のクラスタでストレージアレイを単一クラスタノードから取り外すには、次の手順を使用します。
この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短形式もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短形式については、付録 A 「Sun Cluster オブジェクト指向コマンド」を参照してください。
取り外す予定のストレージアレイに関連付けられているすべてのデータベーステーブル、データサービス、ボリュームのバックアップを作成します。
切断する予定のノードで動作しているリソースグループとデバイスグループを判別します。
# clresourcegroup status # cldevicegroup status |
必要であれば、切断する予定のノードからすべてのリソースグループとデバイスグループを移動します。
Oracle Parallel Server/Oracle RAC ソフトウェアをクラスタで実行している場合、グループをノードから移動する前に、動作している Oracle Parallel Server/Oracle RAC データベースのインスタンスを停止します。手順については、『Oracle Database Administration Guide』を参照してください。
# clnode evacuate node |
clnode evacuate コマンドは、すべてのデバイスグループを、指定ノードから次に優先されるノードに切り替えます。またこのコマンドは、指定のノード上の大域または非大域ゾーンから、ほかのノード上の次に優先される大域または非大域ゾーンへ、すべてのリソースグループを切り替えます。
デバイスグループを保守状態にします。
Veritas 共有ディスクグループへの入出力活動を休止させる手順については、VxVM のマニュアルを参照してください。
デバイスグループを保守状態にする手順については、第 8 章「クラスタの管理」を参照してください。
デバイスグループからノードを削除します。
VxVM または raw ディスクを使用している場合は、cldevicegroup(1CL) コマンドを使用して、デバイスグループを削除します。
Solstice DiskSuite を使用している場合は、metaset コマンドを使用して、デバイスグループを削除します。
HAStoragePlus リソースが含まれる各リソースグループで、リソースグループのノードリストからノードを削除します。
# clresourcegroup remove-node -z zone -n node + | resourcegroup |
ノードの名前。
リソースグループをマスターできる、node 上の非大域ゾーンの名前。リソースグループを作成した際に非大域ゾーンを指定した場合にのみ、zone を指定します。
リソースグループのノードリストを変更する方法についての詳細は、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』を参照してください。
clresourcegroup を実行するときには、リソースタイプ、リソースグループ、およびリソースのプロパティー名には大文字と小文字の区別があります。
削除する予定のストレージアレイがノードに接続されている最後のストレージアレイである場合、当該ストレージアレイに接続されているハブまたはスイッチとノードの間にある光ケーブルを取り外します (そうでない場合、この手順を飛ばします)。
切断するノードからホストアダプタを削除する場合、ノードを停止し電源を切ります。切断するノードからホストアダプタを削除する場合、Step 11 に移動します。
ノードからホストアダプタを削除します。
ホストアダプタを削除する手順については、ノードに付属しているマニュアルを参照してください。
起動が行われないようにして、ノードに電源を入れます。
SPARC:Oracle Parallel Server/Oracle RAC ソフトウェアがインストールされている場合、切断する予定のノードからそのパッケージを削除します。
# pkgrm SUNWscucm |
切断したノードから Oracle Parallel Server/Oracle RAC ソフトウェアを削除しなければ、そのノードをクラスタに導入し直したときに、ノードにパニックが発生して、データの可用性が失われる可能性があります。
クラスタモードでノードを起動します。
SPARC ベースのシステムでは、次の操作を実行します。
ok boot |
x86 ベースのシステムでは、次の操作を実行します。
GRUB メニューが表示された時点で、適切な Solaris エントリを選択し Enter キーを押します。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. |
ノードの /devices と /dev エントリを更新して、デバイスの名前空間を更新します。
# devfsadm -C # cldevice refresh |
デバイスグループをオンラインに戻します。
VERITAS 共有ディスクグループをオンラインにする手順については、VERITAS Volume Manager のマニュアルを参照してください。
デバイスグループをオンラインにする手順については、「デバイスグループを保守状態にする」の手順を参照してください。
完全に確立されたクラスタ構成からクラスタノードを切り離す前に、クラスタノードから Sun Cluster ソフトウェアをアンインストールするには、この手順を使用します。この手順では、クラスタに存在する最後のノードからソフトウェアをアンインストールできます。
クラスタにまだ結合されていない、あるいはまだインストールモードであるノードから Sun Cluster ソフトウェアをアンインストールする場合、この手順を使用してはいけません。その代わりに、『Sun Cluster ソフトウェアのインストール (Solaris OS 版)』の「Sun Cluster ソフトウェアをアンインストールしてインストール問題を解決する」に進みます。
この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短形式もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短形式については、付録 A 「Sun Cluster オブジェクト指向コマンド」を参照してください。
クラスタノードの削除に必要なすべての前提条件 (作業マップを参照) が完了しているか確認します。
表 8–3 を参照してください。
この手順を続ける前に、clnode remove を使用してクラスタ構成からノードを削除します。
アンインストールを行なうノードではなく、それ以外のアクティブなクラスタメンバー上で、スーパーユーザーになります。
アクティブなクラスタメンバーから、アンインストールを行うノードをクラスタ のノード認証リストに追加します。
# claccess allow -h hostname |
ノードの認証リストに追加するノードの名前を指定します。
または、clsetup(1CL) ユーティリティーを使用できます。手順については、「ノードを認証ノードリストに追加する」を参照してください。
アンインストールするノードでスーパーユーザーになります。
ノードを非クラスタモードで再起動します。
SPARC:次のように入力します。
# shutdown -g0 -y -i0ok boot -x |
x86: 次のように入力します。
# shutdown -g0 -y -i0 ... <<< Current Boot Parameters >>> Boot path: /pci@0,0/pci8086,2545@3/pci8086,1460@1d/pci8086,341a@7,1/ sd@0,0:a Boot args: Type b [file-name] [boot-flags] <ENTER> to boot with options or i <ENTER> to enter boot interpreter or <ENTER> to boot with defaults <<< timeout in 5 seconds >>> Select (b)oot or (i)nterpreter: b -x |
/etc/vfstab ファイルから、グローバルにマウントされるすべてのファイルシステムエントリを削除します。ただし、/global/.devices グローバルマウントを除きます。
このノード上で Sun Cluster ソフトウェアを再インストールする場合は、Sun Java Enterprise System (Java ES) 製品のレジストリから Sun Cluster のエントリを削除します。
Java ES 製品のレジストリに Sun Cluster ソフトウェアがインストールされたという記録が含まれていると、Java ES のインストーラは Sun Cluster のコンポーネントを灰色で表示し、再インストールを許可しません。
Java ES のアンインストーラを起動します。
次のコマンドを実行します。ver は Sun Cluster ソフトウェアのインストール元である Java ES ディストリビューションのバージョンです。
# /var/sadm/prod/SUNWentsysver/uninstall |
プロンプトに従い、アンインストールする Sun Cluster を選択します。
uninstall コマンドの使用法についての詳細は、『Sun Java Enterprise System 5 Installation Guide for UNIX』の第 8 章「Uninstalling」 を参照してください。
このクラスタ上で Sun Cluster を再インストールしない場合は、ほかのクラスタデバイスからトランスポートケーブルとトランスポートスイッチを切断します (存在する場合)。
前の節のエラーメッセージを修正するには、次の手順を実行します。
ノードのクラスタへの再結合を試みます。
# boot |
ノードがクラスタに正常に再結合されているかどうかを確認します。
再結合されていない場合は、手順 3 に進みます。
再結合されている場合は、次の各手順を行なってノードをデバイスグループから削除します。
ノードが正常にクラスタに再結合された場合は、残っているデバイスグループからノードを削除します。
「すべてのデバイスグループからノードを削除する」 の作業を行います。
すべてのデバイスグループからノードを削除したあと、「Sun Cluster ソフトウェアをクラスタノードからアンインストールする」 に戻り、その手順を繰り返します。
ノードがクラスタに再結合されなかった場合は、ノードの /etc/cluster/ccr ファイルを他の名前に変更します (たとえば、ccr.old)。
# mv /etc/cluster/ccr /etc/cluster/ccr.old |
「Sun Cluster ソフトウェアをクラスタノードからアンインストールする」に戻り、その手順を繰り返します。
ここでは、scinstall -r コマンドを実行したときに出力される可能性があるエラーメッセージとその対処方法について説明します。
次のエラーメッセージは、削除したノードに、 vfstab ファイルから参照されているクラスタファイルシステムがまだあることを示しています。
予期せぬグローバルマウントが /etc/vfstab に残っていないことを確認しています ... 失敗しました scinstall: global-mount1 はまだグローバルマウントとして構成されています scinstall: global-mount1 はまだグローバルマウントとして構成されています scinstall: /global/dg1 はまだグローバルマウントとして構成されています scinstall: このようなエラーが出たままアンインストールするのは安全ではありません。 scinstall: 安全なアンインストール手順については、ドキュメントを参照してください。 scinstall: アンインストールが失敗しました。 |
このエラーを修正するためには、「Sun Cluster ソフトウェアをクラスタノードからアンインストールする」に戻って、その手順を繰り返す必要があります。scinstall -r を実行する前に、この手順 6 が正しく行われているか確認してください。
次のエラーメッセージは、削除したノードが依然としてデバイスグループにリストされていることを示しています。
このノードを参照しているデバイスサービスが存在しないことを確認しています ... 失敗しました scinstall: このノードはまだ、デバイスサービス「service」をホストするように構成されています scinstall: このノードはまだ、デバイスサービス「service2」をホストするように構成されています scinstall: このノードはまだ、デバイスサービス「service3」をホストするように構成されています scinstall: このノードはまだ、デバイスサービス「dg1」をホストするように構成されています scinstall: このようなエラーが出たままアンインストールするのは安全ではありません。 scinstall: 安全なアンインストールの手順については、ドキュメントを参照してください。 scinstall: アンインストールが失敗しました。 |