1. はじめに¶
1.1. 対象読者と目的¶
1.2. 適用範囲¶
動作環境については 「スタートアップガイド」-「CLUSTERPRO の動作環境」を参照してください。
本書に記載した各製品・サービスのスクリーンショット等は執筆時点のものであり、それ以降に変更されている可能性があります。最新の情報はそれぞれのWebサイトやマニュアルを参照してください。
1.3. 本書の構成¶
「3. ミラーディスク型クラスター構築手順」:ミラーディスク型クラスターの構築手順について説明します。
「4. 共有ディスク型クラスター構築手順」:共有ディスク型クラスターの構築手順について説明します。
「5. エラーメッセージ一覧」:エラーメッセージと対処について説明します。
1.4. CLUSTERPRO マニュアル体系¶
CLUSTERPRO のマニュアルは、以下の 5 つに分類されます。各ガイドのタイトルと役割を以下に示します。
『CLUSTERPRO X スタートアップガイド』 (Getting Started Guide)
すべてのユーザを対象読者とし、製品概要、動作環境、アップデート情報、既知の問題などについて記載します。
『CLUSTERPRO X インストール&設定ガイド』 (Install and Configuration Guide)
CLUSTERPRO を使用したクラスタシステムの導入を行うシステムエンジニアと、クラスタシステム導入後の保守・運用を行うシステム管理者を対象読者とし、CLUSTERPRO を使用したクラスタシステム導入から運用開始前までに必須の事項について説明します。実際にクラスタシステムを導入する際の順番に則して、CLUSTERPRO を使用したクラスタシステムの設計方法、CLUSTERPRO のインストールと設定手順、設定後の確認、運用開始前の評価方法について説明します。
『CLUSTERPRO X リファレンスガイド』 (Reference Guide)
管理者、および CLUSTERPRO を使用したクラスタシステムの導入を行うシステムエンジニアを対象とし、CLUSTERPRO の運用手順、各モジュールの機能説明およびトラブルシューティング情報等を記載します。『CLUSTERPRO X インストール&設定ガイド』を補完する役割を持ちます。
『CLUSTERPRO X メンテナンスガイド』 (Maintenance Guide)
管理者、および CLUSTERPRO を使用したクラスタシステム導入後の保守・運用を行うシステム管理者を対象読者とし、CLUSTERPRO のメンテナンス関連情報を記載します。
『CLUSTERPRO X ハードウェア連携ガイド』 (Hardware Feature Guide)
管理者、および CLUSTERPRO を使用したクラスタシステムの導入を行うシステムエンジニアを対象読者とし、特定ハードウェアと連携する機能について記載します。『CLUSTERPRO X インストール&設定ガイド』を補完する役割を持ちます。
1.5. 本書の表記規則¶
本書では、注意すべき事項、重要な事項および関連情報を以下のように表記します。
注釈
この表記は、重要ではあるがデータ損失やシステムおよび機器の損傷には関連しない情報を表します。
重要
この表記は、データ損失やシステムおよび機器の損傷を回避するために必要な情報を表します。
参考
この表記は、参照先の情報の場所を表します。
また、本書では以下の表記法を使用します。
表記 |
使用方法 |
例 |
---|---|---|
[ ] 角かっこ |
コマンド名の前後
画面に表示される語 (ダイアログボックス、メニューなど) の前後
|
[スタート] をクリックします。
[プロパティ] ダイアログ ボックス
|
コマンドライン中の [ ] 角かっこ |
かっこ内の値の指定が省略可能であることを示します。 |
|
# |
Linux ユーザが、root でログインしていることを示すプロンプト |
|
モノスペースフォント |
パス名、コマンド ライン、システムからの出力 (メッセージ、プロンプトなど)、ディレクトリ、ファイル名、関数、パラメータ |
|
太字 |
ユーザが実際にコマンドラインから入力する値を示します。 |
以下を入力します。
# clpcl -s -a
|
|
ユーザが有効な値に置き換えて入力する項目 |
|
本書の図では、CLUSTERPROを表すために このアイコンを使用します。
2. 概要¶
2.1. 機能概要¶
リージョン
OCI ではリージョンと呼ばれる物理的および論理的な単位に分割されます(たとえば東京など)。1つのリージョン内にすべてのノードを構築することも可能ですが、ネットワーク障害や自然災害などによりすべてのノードがダウンし業務を継続できなくなるおそれがあります。そこで、ノードを複数のリージョンに分散させて配置することにより、可用性を高めることができます。可用性ドメイン
OCI では、可用性ドメインと呼ばれる論理的なグループに各ノードを配置できます。異なる可用性ドメインに各ノードを配置することで、OCI の計画済みメンテナンスや物理ハードウェアの障害などの計画外メンテナンスによる影響を最小限に抑えることが可能です。
2.2. 基本構成¶
用途 |
選択する CLUSTERPRO のリソース |
必要な OCI のサービス |
---|---|---|
仮想 IP アドレス(プライベート IP アドレス)でクライアントからアクセスしたい場合 |
Oracle Cloud 仮想 IP リソース |
プライベート・ロード・バランサ |
仮想 IP アドレス(グローバル IP アドレス)でクライアントからアクセスしたい場合 |
Oracle Cloud 仮想 IP リソース |
パブリック・ロード・バランサ |
ロード・バランサを使用したHAクラスター
クライアントアプリケーションは、OCI 環境の仮想マシンに対して、仮想 IP アドレス(以下、VIP と記載)を使用してクラスターを構成するノードに接続することができます。VIP アドレスを使用することにより、フェイルオーバーまたは、グループの移動が発生しても、クライアントは、仮想マシンの切り替えを意識する必要がありません。プライベート・ロード・バランサを使用したHAクラスターの場合、図 2.1 プライベート・ロード・バランサを使用したHAクラスター の OCI 環境上に構築したクラスタには、OCI のロード・バランサ(Load Balancer)の VIP を指定してアクセスします。VIP はロード・バランサに付与されたプライベート IP アドレスです。![]()
図 2.1 プライベート・ロード・バランサを使用したHAクラスター¶
パブリック・ロード・バランサを使用したHAクラスターの場合、図 2.2 パブリック・ロード・バランサを使用したHAクラスター の OCI 環境上に構築したクラスタには、OCI のロード・バランサ(Load Balancer)の VIP を指定してアクセスします。VIP はロード・バランサに付与されたグローバル IP アドレスです。クラスターの現用系と待機系は、OCI のロード・バランサにおけるヘルス・チェックを利用して切り替えます。ヘルス・チェックには Oracle Cloud 仮想 IP リソースが提供するポートを利用します。![]()
図 2.2 パブリック・ロード・バランサを使用したHAクラスター¶
ロード・バランサについては以下を参照してください。ロード・バランシングの概要:ロード・バランサを使用したHAクラスター構成において必要なリソース、モニタリソースは以下のとおりです。
リソース/モニタリソース種別
説明
設定
Oracle Cloud 仮想 IP リソース
業務が稼働するノードの特定のポートでロード・バランサからの死活監視(ヘルス・チェック用のポートへのアクセス)を待ち受ける仕組みを提供します。活性時にOCIのロード・バランサからの死活監視を待ち受けるための制御プロセスを起動します。非活性時には死活監視を待ち受けるための制御プロセスを停止します。必須
Oracle Cloud 仮想 IP モニタリソース
Oracle Cloud 仮想 IP リソースが起動しているノードに対して、Oracle Cloud 仮想 IP リソース活性時に起動する制御プロセスの死活監視を行います。
必須
Oracle Cloud ロードバランスモニタリソース
Oracle Cloud 仮想 IP リソースが起動していないノードに対して、ヘルス・チェック用ポートと同じポート番号が開放されていないかを監視します。
必須
その他のリソース、モニタリソース
ミラーディスクや共有ディスクなど、HAクラスターで運用するアプリケーションの構成に従います。
任意
2.3. ネットワークパーティション解決¶
HAクラスターを構成している仮想マシンは、お互いにハートビートによって死活監視を行っています。各仮想マシンが異なるサブネットに分散している構成においては、ハートビートが途絶えた時に、サービスの二重起動など望ましくない状態が発生します。サービスの二重起動を回避するために、他の仮想マシンがダウンしたか、自身がネットワークから孤立した状態(ネットワークパーティション状態。以下、NP状態と記す)かのどちらであるかを区別する必要があります。ネットワークパーティション解決(以下、NP解決と記す)は、Pingなどの応答を返却可能な常時稼働している装置(応答確認先)に対してPing確認を行い、応答がない場合はNP状態が発生したと判断し、設定された処理(警告、回復処理、サーバダウン処理など)を行います。ハートビート 及び NP解決の構成については以下を参考にしてください。下記の図に対応した、ハートビート 及び NP解決の種別は以下の通りです。
ハートビート/NP解決種別
種類
(1)
カーネルモードLANハートビートリソース
(2)
カーネルモードLANハートビートリソース
(3)
WitnessハートビートリソースHTTP ネットワークパーティション解決リソース(4)
ディスクハートビートリソース
ハートビート 及び NP解決構成(ミラーディスク型クラスター)
![]()
図 2.3 ハートビート 及び NP解決構成(ミラーディスク型クラスター)¶
ハートビート 及び NP解決構成(共有ディスク型クラスター)
![]()
図 2.4 ハートビート 及び NP解決構成(共有ディスク型クラスター)¶
Witnessハートビートリソースを使用することで、クラスタ外に用意された Witness Server に対するアクセス情報を元に、相手サーバの生存を確認することができます。また、HTTP ネットワークパーティション解決リソースと併用することで、全ての通信路(ハートビート)に障害が発生し、ネットワーク的に分断された状態になった場合(ネットワークパーティション状態)に、データの保護を目的とした緊急シャットダウンなどの動作を行います。なお、クラスタシステムにアクセスするクライアントの配置やオンプレミス環境との接続条件(専用線接続など)によって、NP解決先やNP解決の方法はその都度検討する必要があります。ハートビートリソースやNP解決については、以下を参照してください。
『リファレンスガイド』 - 「ハートビートリソースの詳細」
2.4. オンプレミスとOCIの違い¶
オンプレミスとOCIにおけるCLUSTERPROの機能差分は以下のとおりです。表内の✓は機能が使用できることを意味し、n/a は機能が使用できないことを意味します。
機能 |
オンプレミス |
OCI |
---|---|---|
共有ディスク型クラスターの構築可否 |
✓ |
✓ |
ミラーディスク型クラスターの構築可否 |
✓ |
✓ |
管理用グループの使用可否 |
✓ |
n/a |
フローティングIPリソースの使用可否 |
✓ |
n/a |
仮想IPリソースの使用可否 |
✓ |
n/a |
Oracle Cloud仮想IPリソースの使用可否 |
n/a |
✓ |
Oracle Cloud DNSリソースの使用可否 |
n/a |
✓ |
3. ミラーディスク型クラスター構築手順¶
3.1. 構築例について¶
本書では、OCI において、CLUSTERPRO を使用した2ノードでの片方向スタンバイクラスタの構築手順を紹介します。OCI 上の同じ 仮想クラウド・ネットワーク(以下、VCN と記す)内のクライアントからアクセス可能な HAクラスターを構築します。本手順は、server1 を現用系サーバとしたミラーディスク型構成を対象としています。以下の表は既定値が存在しないパラメータ、および既定値から変更したパラメータについて記載しています。
OCIの設定(各インスタンスで共通の設定)
設定項目
設定値
VCN の設定
名前
test-vcn
ロード・バランサの設定
ロード・バランサ名
test-loadbalancer
可視性タイプ
プライベート / パブリック (*)
仮想クラウド・ネットワーク
test-vcn
ロード・バランサの設定(バックエンド・セット設定)
バックエンドの追加 名前
server1, server2
バックエンドの追加 ポート
8080(業務を提供しているポート番号:クラスタ側)
ヘルス・チェック・ポリシー プロトコル
TCP
ヘルス・チェック・ポリシー ポート
12345
ヘルス・チェック・ポリシー 間隔(ミリ秒)
5000
ロード・バランサの設定(リスナーの設定)
トラフィックのタイプ
TCP
リスナーでモニターするポート
80(業務を提供しているポート番号:クライアント側)
(*) プライベートロードバランサを使用する場合は プライベート 、パブリックロードバランサを使用する場合は パブリック を選択してください。
OCIの設定(各インスタンスでそれぞれ設定)
設定項目
設定値
server1
server2
witness-server
コンピュート・インスタンスの設定
インスタンスの命名
server1
server2
witness-server
可用性ドメイン
LhRE:AP-TOKYO-1-AD-1
LhRE:AP-TOKYO-1-AD-1
LhRE:AP-TOKYO-1-AD-1
インスタンス・タイプ
仮想マシン
仮想マシン
仮想マシン
仮想クラウド・ネットワーク
test-vcn
test-vcn
test-vcn
フォルト・ドメイン
FAULT-DOMAIN-1
FAULT-DOMAIN-2
FAULT-DOMAIN-3
ブロック・ボリュームの設定
名前
server1-datadisk-0
server2-datadisk-0
-
可用性ドメイン
LhRE:AP-TOKYO-1-AD-1
LhRE:AP-TOKYO-1-AD-1
-
デバイス・パス
/dev/oracleoci/oraclevdb
/dev/oracleoci/oraclevdb
-
ネットワークの設定
プライベートIPアドレス
10.0.0.2
10.0.0.3
10.0.0.4
プライベートIPアドレス
10.0.1.2
10.0.1.3
-
(*) パブリックIPアドレス
140.238.54.236
158.101.136.208
164.92.39.211
(*) パブリックロードバランサを使用する場合に設定されます
CLUSTERPROの設定(クラスタプロパティ)
設定項目
設定値
server1
server2
クラスタ名
cluster1
cluster1
サーバ名
server1
server2
インタコネクト
カーネルモード
10.0.0.2
10.0.0.3
カーネルモード
10.0.1.2
10.0.1.3
Witness
使用する
使用する
NP解決
HTTP
使用する
使用する
CLUSTERPROの設定(フェイルオーバーグループ)
リソース名
設定項目
設定値
ミラーディスクリソース
リソース名
md1
詳細タブ - ミラーパーティションデバイス名
/dev/NMP1
詳細タブ - マウントポイント
/mnt/md1
詳細タブ - データパーティションデバイス名
/dev/oracleoci/oraclevdb2
詳細タブ - クラスタパーティションデバイス名
/dev/oracleoci/oraclevdb1
Oracle Cloud 仮想 IP リソース
リソース名
ocvip1
ポート番号
12345(ヘルス・チェック・ポリシーの[ポート]で指定した値)
CLUSTERPROの設定(モニタリソース)
監視リソース名
設定項目
設定値
ミラーディスク監視リソース
モニタリソース名
mdw1
ミラーディスクコネクト監視リソース
モニタリソース名
mdnw1
Oracle Cloud 仮想 IP 監視リソース
モニタリソース名
ocvipw1
回復対象
ocvip1
Oracle Cloud ロードバランス監視リソース
モニタリソース名
oclbw1
回復対象
ocvip1
3.2. OCIの設定¶
VCN の作成
OCI Console にアクセスします(https://console.us-ashburn-1.oraclecloud.com/)。VCN、およびサブネットを作成します。詳細な手順は以下を参照してください。ネットワーキングの概要:ネットワーキング・シナリオ:OCI の設定については以下も参考にしてください。チュートリアル : Oracle Cloud Infrastructure を使ってみよう:
インスタンスの作成
プラットフォーム・イメージからクラスターを構成する数の仮想マシンを作成します。詳細な手順は以下を参照してください。インスタンスの作成:また、併せてセカンダリVNICの設定も行ってください。詳細な手順は以下を参照してください。
インスタンスの設定
作成した各インスタンスへ接続し、ログインします。詳細な手順は以下を参照してください。インスタンスへの接続:
ブロック・ボリュームの作成
ミラーディスク(クラスタパーティション、データパーティション)に使用するブロック・ボリュームを追加、ブロック・ボリュームのアタッチをします。アクセスは 読取り/書込み を選択してください。詳細な手順は以下を参照してください。ブロック・ボリュームの概要:次にミラーディスクリソース用のパーティションを作成します。ミラーディスクリソース用のパーティションの設定については、以下を参照してください。
ロード・バランサ用のセキュリティ・リストの追加
以降のロード・バランサ作成時にバックエンド・サーバーを追加すると、ロード・バランシングサービスによってセキュリティ・リスト・ルールを自動的に作成することも可能です。詳細な手順は以下を参照してください。セキュリティ・リスト:ロード・バランサの管理:
ロード・バランサの作成
ロード・バランサを作成します。[バックエンドの追加] で server1, server2 を追加してください。ヘルス・チェック・ポリシーの [間隔(ミリ秒)] は、Oracle Cloud 仮想 IP リソースの [ヘルスチェックのタイムアウト] より短い時間にしてください。詳細な手順は以下を参照してください。ロード・バランサの管理:必要に応じてルート・テーブルおよびセキュリティ・リストを設定してください。
OS 起動時間の調整、ネットワーク設定の確認、ルートファイルシステムの確認、ファイアウォールの設定を確認、サーバの時刻を同期、SELinuxの設定を確認
各手順は以下を参照してください。
3.3. CLUSTERPROの構築¶
CLUSTERPROのインストール
インストール手順は以下を参照してください。インストール完了後、OSの再起動を行ってください。- 『インストール&設定ガイド』
CLUSTERPROのライセンスを登録
ライセンス登録手順は以下を参照してください。- 『インストール&設定ガイド』
CLUSTERPROの設定
Cluster WebUI のセットアップ、および接続方法は以下を参照してください。- 『インストール&設定ガイド』 - 「クラスタ構成情報を作成する」以下のリソース/モニタリソースを追加する手順を記述します。- ミラーディスクリソース- Oracle Cloud 仮想 IP リソース- Oracle Cloud 仮想 IP モニタリソース- Oracle Cloud ロードバランスモニタリソース上記以外の設定は以下を参照してください。- 『インストール&設定ガイド』- 『リファレンスガイド』
クラスタの作成
最初に、クラスタ生成ウィザードを開始し、クラスタを構築します。
クラスタの構築
Cluster WebUI にアクセスし、[クラスタ生成ウィザード] をクリックします。 クラスタ生成ウィザード]の[クラスタ]が表示されます。[クラスタ名] に任意のクラスタ名を入力します。[言語] を適切に選択します。[次へ] をクリックします。 [基本設定]が表示されます。Cluster WebUI に接続したインスタンスがマスタサーバとして登録済みの状態で表示されます。[追加] をクリックし、残りのインスタンスを追加します(インスタンスのプライベートIPアドレスを指定します)。[次へ] をクリックします。 [インタコネクト] 画面が表示されます。インタコネクトのために使用するIPアドレス(各インスタンスのプライベートIPアドレス)と、Witnessハートビートを指定します。また、後で作成するミラーディスクリソースの通信経路として [MDC] に mdc1 を選択します。[次へ] をクリックします。詳細は以下を参照してください。- 『リファレンスガイド』 -「Witness ハートビートリソースを理解する」 [NP解決] 画面が表示されます。HTTPNPを指定し、 [次へ] をクリックします。詳細は以下を参照してください。
グループリソースの追加
グループの定義
フェイルオーバーグループを作成します。
[グループ一覧] 画面が表示されます。[追加]をクリックします。 [グループの定義] 画面が表示されます。[名前] にフェイルオーバーグループ名(failover1)を設定します。[次へ] をクリックします。 [起動可能サーバ 画面が表示されます。何も指定せず [次へ] をクリックします。 [グループ属性] 画面が表示されます。何も指定せず [次へ] をクリックします。 [グループリソース一覧] 画面が表示されます。以降の手順で、この画面でグループリソースを追加していきます。ミラーディスクリソース
[グループリソース一覧] で [追加] をクリックします。 [グループ のリソース定義 | failover1] 画面が開きます。[タイプ] ボックスでグループリソースのタイプ(ミラーディスクリソース) を選択し、[名前] ボックスにリソース名を入力します。[次へ] をクリックします。 [依存関係] 画面が表示されます。何も指定せず [次へ] をクリックします。 [復旧動作] 画面が表示されます。[次へ] をクリックします。 [詳細] 画面が表示されます。[データパーティションデバイス名] [クラスタパーティションデバイス名] に「4. ブロック・ボリュームの作成」で作成したパーティションのデバイス名を入力します。[マウントポイント]、[ファイルシステム]を入力します。 [完了] をクリックして設定を終了します。Oracle Cloud 仮想 IP リソース
OCI 上で CLUSTERPRO を利用する場合、業務が稼働するノードの特定のポートでロード・バランサからの死活監視を待ち受ける仕組みを提供します。Oracle Cloud 仮想 IP リソースの詳細は以下を参照してください。
[グループリソース一覧] で [追加] をクリックします。 [グループ のリソース定義 | failover1] 画面が開きます。[タイプ] ボックスでグループリソースのタイプ (Oracle Cloud 仮想 IP リソース) を選択して、[名前] ボックスにリソース名を入力します。[次へ] をクリックします。 [依存関係] 画面が表示されます。何も指定せず [次へ] をクリックします。 [復旧動作] 画面が表示されます。[次へ] をクリックします。 [ポート] にロード・バランサの設定(バックエンド・セットの設定)時にヘルス・チェック・ポリシーの [ポート] として指定した値を入力します。 [完了] をクリックします。
モニタリソースの追加
Oracle Cloud 仮想 IP モニタリソース
Oracle Cloud 仮想 IP リソースが起動しているノードに対して、死活監視のためのポートの監視機構を提供します。Oracle Cloud 仮想 IP リソースを1つ追加すると、Oracle Cloud 仮想 IP モニタリソースが1つ自動的に作成されます。Oracle Cloud 仮想 IP モニタリソースの詳細は以下を参照してください。Oracle Cloud ロードバランスモニタリソース
Oracle Cloud 仮想 IP リソースが起動していないノードに対して、ヘルス・チェック用ポートと同じポート番号が開放されていないかの監視機構を提供します。Oracle Cloud 仮想 IP リソースを1つ追加すると、Oracle Cloud ロードバランスモニタリソースが1つ自動的に作成されます。Oracle Cloud ロードバランスモニタリソースの詳細は以下を参照してください。
設定の反映とクラスタの起動
以下を参照してください。- 『インストール&設定ガイド』 - 「クラスタを生成するには」
3.4. 動作確認¶
フェイルオーバーグループ(failover1)が、現用系ノードのserver1で起動します。Cluster WebUI [ステータス] タブにおいてfailover1がserver1で[起動済]になっていることを確認します。クライアントから、フロントエンドのIPアドレスにアクセスし、現用系ノードに接続できることを確認します。 Cluster WebUIのプルダウンより[操作モード]から[検証モード]に変更します。 Cluster WebUI [ステータス] タブにおいて ocvipw1 の[擬似障害発生]アイコンを選択します。 Oracle Cloud 仮想 IP リソース(ocvip1)が3回再活性後に、フェイルオーバーグループ(failover1)が異常になり、ノードserver2へフェイルオーバーします。Cluster WebUI [ステータス]タブにおいてfailover1がserver2で [起動済] になっていることを確認します。また、ロード・バランサのフロントエンドのIPアドレスに対してフェイルオーバー後も正常にアクセスできることを確認します。
6. 注意・制限事項¶
6.1. ロード・バランサを使用したHAクラスターの場合¶
6.1.1. OCIの注意事項¶
- マルチテナントのクラウド環境では、物理環境や一般的な仮想化環境(非クラウド環境)に比べて性能の差が大きくなる(性能の劣化率が大きくなる)傾向があります。性能を重視するシステムでは、設計フェーズにおいて、この点に留意する必要があります。
6.1.2. CLUSTERPROの注意事項¶
- OS の起動時間は[ハートビートタイムアウト]より長くなるよう調整してください。
- [クラスタプロパティ]-[監視]タブ-[シャットダウン監視タイムアウト]にて、既定値(ハートビートのタイムアウトを使用する)から変更する場合、[ハートビートタイムアウト]以下となるよう調整してください。以下を参照してください。
- ブロックボリュームのアタッチ方式を iSCSI に設定した状態でネットワーク異常が発生した場合、ミラーディスクリソース / ディスクリソースの非活性に失敗することがあります。そのため、アタッチ方式として iSCSI を指定する場合は、リソースの非活性異常時動作を クラスタサービス停止とOSシャットダウン に設定してください。
以下も参照してください。