仮想マシン機能とは、Oracle Solarisの仮想化環境において、PRIMECLUSTERシステムを運用するための機能です。
仮想化環境には以下の種類があります。
Oracle VM Server for SPARC環境
Oracle Solaris ゾーン環境
注意
PRIMECLUSTERを導入する仮想マシン環境では、以下の操作を行わないでください。
ゲストドメイン、I/Oルートドメインの一時停止(suspend)
ゲストドメイン、I/Oルートドメインの一時停止状態から再開(resume)
Oracle VM Server for SPARC環境において、以下のクラスタシステム構成をサポートします。
同一物理パーティション内のゲストドメイン間クラスタ(SPARC M10の場合のみサポート)
異なる物理パーティション間のゲストドメイン間クラスタ(SPARC M10の場合のみサポート)
制御ドメイン間クラスタ
各クラスタシステムの異常監視と留意事項は以下の通りです。
クラスタシステム構成 | クラスタ構築の有無 | 異常監視 | 留意事項 | ||
---|---|---|---|---|---|
ゲスト ドメイン | 制御 ドメイン | ||||
ゲストドメイン間クラスタ | 同一物理パーティション内 | ○ | × | ・ゲストドメインまたは、I/Oルートドメインのクラスタアプリケーションの異常 ・ゲストドメインまたは、I/OルートドメインのOS異常 | 1つの物理パーティション構成のため、その物理パーティションが故障した場合は、すべてのクラスタノードが停止し、業務停止となります。そのため、業務の運用には適しません。 |
異なる物理パーティション間 | ○ | ○ | ・クラスタアプリケーションの異常 ・制御ドメイン、ゲストドメインまたは、I/OルートドメインのOS異常 ・ハードウェア(ネットワーク、共用ディスクとその経路)の故障 ・物理パーティションの異常 | 筐体間でクラスタシステムを構築する必要があります。 | |
制御ドメイン間クラスタ | × | ○ | ・制御ドメインのクラスタアプリケーションの異常 ・制御ドメインのOS異常 ・制御ドメインのハードウェア(ネットワーク、共用ディスクとその経路)の故障 ・ゲストドメインの状態(ldm list-domainで表示される状態)の異常 | PRIMECLUSTER は、ゲストドメインのOSの状態や業務アプリケーションの状態を監視しません。 |
注意
タグVLANインターフェース は、クラスタインタコネクトに使用できません。
本構成では、1つの物理パーティション内のゲストドメインまたは、I/Oルートドメイン間でクラスタシステムを動作させることができます。PRIMECLUSTER上で動作するクラスタアプリケーションの動作検証を行う場合に有効です。本構成では、下記の異常監視を行います。本構成は、SPARC M10の場合のみサポートします。
ゲストドメインまたは、I/Oルートドメインのクラスタアプリケーションの異常
ゲストドメインまたは、I/OルートドメインのOS異常
図2.1 物理パーティション内のゲストドメイン間クラスタ
注意
1つの物理パーティション構成のため、その物理パーティションが故障した場合は、すべてのクラスタノードが停止し、業務停止となります。そのため、業務の運用には適しません。
クラスタを構成するドメインの種別はドメイン間で統一してください。例えば、ゲストドメインとI/Oルートドメイン間、または、制御ドメインとI/Oルートドメイン間のように、異なる種別のドメイン間でクラスタを構成することはできません。
PRIMECLUSTERのゲストドメイン間クラスタの共用ディスクとして仮想ディスクを使用する場合、仮想ディスクのtimeoutオプションの設定が必要です。
timeoutオプションを省略、または0を設定した場合、サービスドメインが停止してもI/Oエラーにならず、サービスドメインの復旧を待ちます。
timeoutオプションに0より大きい値を設定した場合、設定した値経過後にI/Oエラーになります。
timeoutオプションの設定方法は以下のとおりです。
例1) 仮想ディスクの割り当て時、timeoutに15を設定する場合
# ldm add-vdisk timeout=15 vdisk0 disk0@primary-vds0 guest0
例2) 割当て済みの仮想ディスクに対し、timeoutに15を設定する場合
# ldm set-vdisk timeout=15 vdisk0 guest0
timeoutオプションの詳細は、Oracle VMの管理ガイドを参照してください。
異なる物理パーティション間のゲストドメインまたは、I/Oルートドメイン(I/Oドメイン含む)間でクラスタシステムを動作させることができます。ゲストドメインまたは、I/Oルートドメイン間のみのクラスタシステムでは、物理パーティションに異常が発生すると、クラスタを構成するノードが、LEFTCLUSTER状態になる場合があります。そこで、制御ドメインにもPRIMECLUSTERを導入することで、物理パーティションに異常が発生した場合も、ゲストドメインまたは、I/Oルートドメイン上のクラスタアプリケーションを自動で切替えることができます。本構成では、下記の異常監視を行います。本構成は、SPARC M10の場合のみサポートします。
制御ドメイン、ゲストドメインまたは、I/Oルートドメインのクラスタアプリケーションの異常
制御ドメイン、ゲストドメインまたは、I/OルートドメインのOS異常
ハードウェア(ネットワーク、共用ディスクとその経路)の故障
物理パーティションの異常
ただし、本機能の利用によりRMSの優先度設定が使用できなくなる等、運用上の注意がありますので、設計時に考慮の上、使用してください。
注意
1つの筐体内の複数の物理パーティション上でクラスタシステムを構築すると、筐体故障時には業務停止となります。そのため、筐体間でクラスタシステムを構築する必要があります。
制御ドメイン、ゲストドメインまたは、I/Oルートドメインのクラスタアプリケーションの作成で、RMSの優先度(ShutdownPriority)属性は設定しないでください。
ゲストドメインまたは、I/Oルートドメインの生存優先度は、制御ドメインの生存優先度と順序関係が同じになるように設定してください。
制御ドメインの異常(クラスタアプリケーション異常を含む)を検出し、その制御ドメインの強制停止に失敗すると、その物理パーティションを強制停止するため、異常が発生した物理パーティション内のゲストドメインまたは、I/Oルートドメインはクラスタの有無にかかわらず、すべて停止します。
制御ドメインで仮想I/Oを設定する場合、異常が発生した物理パーティション内のゲストドメインはクラスタの有無に関わらず、停止する場合があります。
クラスタを構成するドメインの種別はドメイン間で統一してください。例えば、ゲストドメインとI/Oルートドメイン間、または、制御ドメインとI/Oルートドメイン間のように、異なる種別のドメイン間でクラスタを構成することはできません。
PRIMECLUSTERのゲストドメイン間クラスタの共用ディスクとして仮想ディスクを使用する場合、仮想ディスクのtimeoutオプションの設定が必要です。
timeoutオプションを省略、または0を設定した場合、サービスドメインが停止してもI/Oエラーにならず、サービスドメインの復旧を待ちます。
timeoutオプションに0より大きい値を設定した場合、設定した値経過後にI/Oエラーになります。
timeoutオプションの設定方法は以下のとおりです。
例1) 仮想ディスクの割り当て時、timeoutに15を設定する場合
# ldm add-vdisk timeout=15 vdisk0 disk0@primary-vds0 guest0
例2) 割当て済みの仮想ディスクに対し、timeoutに15を設定する場合
# ldm set-vdisk timeout=15 vdisk0 guest0
timeoutオプションの詳細は、Oracle VMの管理ガイドを参照してください。
図2.2 異なる物理パーティション間のゲストドメイン間クラスタ
図2.3 物理パーティション異常時の切替えイメージ
本構成は、ゲストドメインが構築されている環境において、制御ドメインにPRIMECLUSTERを適用し、ゲストドメインの状態を制御ドメイン上のクラスタで監視する構成のことです。
本構成では、ハードウェア(ネットワークやディスク)が故障しても、制御ドメインのフェイルオーバにより、他の制御ドメイン上のゲストドメインを起動させ、業務を継続することができます。制御ドメインにPRIMECLUSTERを適用することで、ゲストドメイン上のアプリケーションが動作できなくなる下記の異常監視を行います。
制御ドメインのクラスタアプリケーションの異常
制御ドメインのOS異常
制御ドメインのハードウェア(ネットワーク、共用ディスクとその経路)の故障
ゲストドメインの状態(ldm list-domainで表示される状態)の異常
異常発生時には待機系でゲストドメインを起動し、信頼性の高いゲストドメイン環境を実現します。
図2.4 制御ドメイン間クラスタ
注意
PRIMECLUSTER は、ゲストドメインのOSの状態や業務アプリケーションの状態を監視しません。
制御ドメイン間クラスタ形式を使用する場合にGLSがサポートする二重化方式は、NIC切替方式のみです。
注意
GLSは制御ドメインとゲストドメインの両方にインストールが必要です。
ゲストドメインへのI/Oの割り当ては、制御ドメインが提供する仮想I/Oでのみ構成してください。
複数のゲストドメインを使用する場合、それぞれのゲストドメイン用に別の共用クラスを作成してください。
制御ドメイン上にクラスタアプリケーションを構築する場合、制御ドメイン上のクラスタアプリケーションの異常による切替のための制御ドメインの強制停止に失敗すると、その物理パーティションを強制停止するため、異常が発生した物理パーティション内のゲストドメインまたは、I/Oルートドメインはクラスタの有無にかかわらず、すべて停止します。
制御ドメインで仮想I/Oを設定する場合、異常が発生した物理パーティション内のゲストドメインはクラスタの有無に関わらず、停止する場合があります。
クラスタシステムで利用できるOracle VM Server for SPARCのマイグレーション機能には、以下の2種類の方式があります。
ライブマイグレーション
稼働中のゲストドメインを移動させます。
コールドマイグレーション
停止中のゲストドメインを移動させます。
(PRIMECLUSTERのパッチ(T007881SP-02以降(Solaris 10)/T007882SP-02以降(Solaris 11))の適用が必要です。)
本機能は ServerView Resource Orchestrator Cloud Edition と組み合わせて使用することも可能です。(PRIMECLUSTERのパッチ(T007881SP-02以降(Solaris 10)/T007882SP-02以降(Solaris 11))の適用が必要です。)
Oracle VM Server for SPARCのマイグレーション機能は、以下のクラスタ構成で利用できます。
異なる物理パーティション間のゲストドメイン間クラスタ(SPARC M10の場合のみサポート)
クラスタシステムでOracle VM Server for SPARCのマイグレーション機能を利用することで、運用・待機の冗長構成を維持したまま、サーバの保守を実施できます。
図2.5 クラスタシステムにおけるライブマイグレーション
また、運用・待機以外の予備サーバも含めて制御ドメインでクラスタシステムを構成することで、異なる物理パーティション間で運用・待機の冗長構成を維持したまま、サーバの保守を実施できます。
図2.6 予備サーバへのライブマイグレーション
また、停止中のゲストドメインをコールドマイグレーションすることで、予備サーバでゲストドメインを起動し、運用・待機の冗長構成を維持したまま、待機サーバの保守を実施できます。
図2.7 予備サーバへのコールドマイグレーション(実行前)
図2.8 予備サーバへのコールドマイグレーション(実行中)
図2.9 予備サーバへのコールドマイグレーション(実行後)
クラスタシステムでOracle VM Server for SPARCのマイグレーション機能を利用する場合、事前設定が必要です。詳細は“第14章 Oracle VM Server for SPARC環境でマイグレーション機能を使用する場合”を参照してください。
注意
マイグレーション実施中は、クラスタシステムの切替えは行われません。
クラスタシステムの切替え中には、マイグレーション操作を行わないでください。
物理環境において、PRIMECLUSTER 4.2A00以降を使用したクラスタシステムを、Oracle VM Server for SPARC環境のゲストドメイン(または、I/Oルートドメイン)に移行(Physical to Virtual:以降P2V)することができます。(SPARC M10の場合のみサポート)
参照
P2Vでの移行手順については、“第15章 Oracle VM Server for SPARC P2Vツールを使用してクラスタシステムを移行する場合”を参照してください。
移行後のPRIMECLUSTERの仕様変更点は、以下のマニュアルを参照してください。
“PRIMECLUSTER Global Link Services 説明書 4.3 (伝送路二重化機能編)”
“PRIMECLUSTER Global Disk Services 説明書 4.3”
移行可能なシステム要件や移行時の注意については、“Oracle VM Server for SPARC 管理ガイド”を参照してください。
図2.10 移行前のクラスタシステム
図2.11 移行後のクラスタシステム
PRIMECLUSTERのバージョン
PRIMECLUSTER 4.2A00以降
サポートOS
Solaris 10
GLSの二重化方式
NIC切替方式、GS/SURE連携方式
共用ディスク内のファイルシステム
UFS、ZFS、GFS(Solaris 10のみ)
注意
移行元と移行先の共用ディスクのGDSボリュームのディスクサイズは、すべて同じサイズにしてください。
ETERNUSのストレージマイグレーションやREC機能などのLUN to LUNにより、ユーザデータはあらかじめ移行しておいてください。
移行後は、ゲストドメイン上のクラスタシステムでGDS、GLSの機能を使用してください。
移行後は、移行元の設定をそのまま使用してください。
参照
クラスタシステムの移行完了後、設定変更がある場合は、以下のマニュアルを参照して設定を変更してください。
“システム構成変更編”
“PRIMECLUSTER Global Link Services 説明書 4.3 (伝送路二重化機能編)”
“PRIMECLUSTER Global Disk Services 説明書 4.3”
“PRIMECLUSTER Global File Services 説明書 4.3”
注意
Oracle VM Server for SPARC環境でクラスタシステムを運用する場合、いくつかの注意点があります。詳しくは、“12.2 Oracle VM Server for SPARC環境でクラスタシステムを使用する場合の注意事項”を参照してください。
Oracle Solaris ゾーン環境において、グローバルゾーンやノングローバルゾーンに異常が発生すると、ノングローバルゾーン上のアプリケーションが動作できない状態となります。
グローバルゾーンとノングローバルゾーンにPRIMECLUSTERを適用することで、状態監視・切替え機能を提供します。これにより、異常発生時には待機系に切替えが可能となり、ノングローバルゾーンの高信頼化を実現します。
Oracle Solaris ゾーン環境は物理サーバ環境上に構築するだけでなく、Oracle VM Server for SPARC環境のゲストドメイン上(SPARC M10の場合のみ)にも構築できます。
また、グローバルゾーンがSolaris 10の場合、Oracle Solaris Legacy Containers(OSLC)機能を利用し、Solaris 8やSolaris 9上で動作していた既存システムの業務をノングローバルゾーン内に移行させることで、Solaris 10上でも既存システムの業務を動作させることが可能です。(※1)
PRIMECLUSTERは、Solaris 8やSolaris 9として動作するノングローバルゾーンの状態監視・切替え機能を提供します。これにより、異常発生時には待機系に切替えが可能となり、Solaris 8やSolaris 9で動作するノングローバルゾーンの高信頼化を実現します。
(※1) ご使用のミドルウェアが、OSLCの機能を利用したノングローバルゾーン内で動作可能かは、各ミドルウェアのマニュアルを参照してください。
グローバルゾーンの状態監視・切替え
以下の状態を監視します。
グロ-バルゾーンのOS異常
グローバルゾーンのハードウェア(ネットワーク、共用ディスクとその経路)の故障
グローバルゾーンのOS異常を検出した場合には、そのグローバルゾーンで動作していたすべてのノングローバルゾーンを待機系へ切り替えます。
ノングローバルゾーンの状態監視・切替え
以下の状態を監視します。
ノングローバルゾーンの状態
ノングローバルゾーンのOS異常
ノングローバルゾーン上で動作するアプリケーションの状態
異常を検出した場合、対象のノングローバルゾーンを待機系へ切り替えます。
図2.12 グローバルゾーンOS異常時の切替え
図2.13 ノングローバルゾーン上のアプリケーション異常時の切替え
3ノード以上から構成されるクラスタシステムの場合、複数の運用サーバに対して1台の待機サーバを用意することにより、待機サーバの集約が可能になります。以下に例を示します。
図2.14 3ノード構成ゾーン環境のグローバルゾーンOS異常時の切替え
1ノードから構成されるシングルノードクラスタの場合、ノングローバルゾーン上のOSおよびアプリケーションの状態を監視します。異常を検出した場合、ノングローバルゾーンまたはノングローバルゾーン上のアプリケーションを自動的に再起動し、復旧を試みることで、可用性を向上させることができます。以下に例を示します。
図2.15 シングルノードクラスタ運用ゾーン環境のノングローバルゾーンOS異常時の動作
注意
ノングローバルゾーンでは「クラスタ名」および「CFノード名」を変更できません。
ノングローバルゾーンでは、以下の機能/コマンドは使用できません。
自動構成
共用ディスク装置接続確認
オペレータ介入
故障リソース特定
パトロール診断
clsyncfile(クラスタノード間でファイル配布を行う機能)
同一のグローバルゾーンで動作するノングローバルゾーンの間では、業務を引き継ぐことはできません。