1. はじめに¶
1.1. 対象読者と目的¶
本書は、クラスタシステムに関して、システムを構築する管理者、およびユーザサポートを行うシステムエンジニア、保守員を対象にしています。ここでご紹介するソフトウェアや設定例は、あくまで参考情報としてご提供するものであり、各ソフトウェアの動作保証を行うものではありません。
1.2. 適用範囲¶
動作環境については 「スタートアップガイド」-「CLUSTERPRO の動作環境」を参照してください。
本書に記載した各製品・サービスのスクリーンショット等は執筆時点のものであり、それ以降に変更されている可能性があります。最新の情報はそれぞれのWebサイトやマニュアルを参照してください。
1.3. 本書の構成¶
「4. 構築手順(Azure DNSを使用したHAクラスタの場合) 」:Azure DNSを使用したHAクラスタの構築手順について説明します。
「5. 構築手順(パブリックロードバランサーを使用したHAクラスタの場合) 」:インターネットに接続するパブリックロードバランサーを使用したHAクラスタの構築手順について説明します。
「6. 構築手順(内部ロードバランサーを使用したHAクラスタの場合) 」:内部ロードバランサーを使用したHAクラスタの構築手順について説明します。
「7. エラーメッセージ一覧 」:エラーメッセージと対処について説明します。
1.4. CLUSTERPRO マニュアル体系¶
CLUSTERPRO のマニュアルは、以下の 4 つに分類されます。各ガイドのタイトルと役割を以下に示します。
『CLUSTERPRO X スタートアップガイド』 (Getting Started Guide)
すべてのユーザを対象読者とし、製品概要、動作環境、アップデート情報、既知の問題などについて記載します。
『CLUSTERPRO X インストール&設定ガイド』 (Install and Configuration Guide)
CLUSTERPRO を使用したクラスタシステムの導入を行うシステムエンジニアと、クラスタシステム導入後の保守・運用を行うシステム管理者を対象読者とし、CLUSTERPRO を使用したクラスタシステム導入から運用開始前までに必須の事項について説明します。実際にクラスタシステムを導入する際の順番に則して、CLUSTERPRO を使用したクラスタシステムの設計方法、CLUSTERPRO のインストールと設定手順、設定後の確認、運用開始前の評価方法について説明します。
『CLUSTERPRO X リファレンスガイド』 (Reference Guide)
管理者、および CLUSTERPRO を使用したクラスタシステムの導入を行うシステムエンジニアを対象とし、CLUSTERPRO の運用手順、各モジュールの機能説明およびトラブルシューティング情報等を記載します。『インストール&設定ガイド』を補完する役割を持ちます。
『CLUSTERPRO X メンテナンスガイド』 (Maintenance Guide)
管理者、および CLUSTERPRO を使用したクラスタシステム導入後の保守・運用を行うシステム管理者を対象読者とし、CLUSTERPRO のメンテナンス関連情報を記載します。
1.5. 本書の表記規則¶
本書では、注意すべき事項、重要な事項および関連情報を以下のように表記します。
注釈
この表記は、重要ではあるがデータ損失やシステムおよび機器の損傷には関連しない情報を表します。
重要
この表記は、データ損失やシステムおよび機器の損傷を回避するために必要な情報を表します。
参考
この表記は、参照先の情報の場所を表します。
また、本書では以下の表記法を使用します。
表記 |
使用方法 |
例 |
---|---|---|
[ ] 角かっこ |
コマンド名の前後
画面に表示される語 (ダイアログボックス、メニューなど) の前後
|
[スタート] をクリックします。
[プロパティ] ダイアログボックス
|
コマンドライン中の [ ] 角かっこ |
かっこ内の値の指定が省略可能であることを示します。 |
|
> |
Windows ユーザが、コマンドプロンプトでコマンドを実行することを示すプロンプト |
|
モノスペースフォント |
パス名、コマンドライン、システムからの出力 (メッセージ、プロンプトなど)、ディレクトリ、ファイル名、関数、パラメータ |
|
太字 |
ユーザが実際にコマンドラインから入力する値を示します。 |
以下を入力します。
> clpcl -s -a
|
|
ユーザが有効な値に置き換えて入力する項目 |
|
本書の図では、CLUSTERPROを表すために このアイコンを使用します。
2. 概要¶
2.1. 機能概要¶
本書では、Microsoft Azureのクラウド サービス上に、Azure Resource Manager を使用したCLUSTERPRO X(以下、CLUSTERPRO と記す)によるHA クラスタを構築する方法を説明します。
![]()
図 2.1 クラウドサービス上のHAクラスタ(Azure DNSを使用した場合)¶
Microsoft Azure において、Microsoft Azure リージョンや可用性セットを使用し仮想マシン(図 2.1 クラウドサービス上のHAクラスタ(Azure DNSを使用した場合) のVM)をHA クラスタ化することで、業務の可用性を高めることができます。
Microsoft Azureリージョン
Microsoft Azure リージョンと呼ばれる物理的および論理的な単位に分割されます。(たとえば東日本、西日本など) 1つのリージョン内にすべてのノードを構築することも可能ですが、ネットワーク障害や自然災害などによりすべてのノードがダウンし業務を継続できなくなるおそれがあります。そこで、ノードを複数のリージョンに分散させて配置することにより、可用性を高めることができます。可用性セット
Microsoft Azureでは、可用性セットと呼ばれる論理的なグループに各ノードを配置できます。可用性セット内に各ノードが配置されることで、Microsoft Azure プラットフォームの計画済みメンテナンスや物理ハードウェアの障害などの計画外メンテナンスによる影響を最小限に抑えることが可能です。本書では、可用性セットを用いた構成の説明をします。可用性セットの詳細は、以下のWebサイトを参照してください。Azure での Windows 仮想マシンの可用性の管理:
2.2. 基本構成¶
本書では、リソースマネージャデプロイモデルにおけるAzure DNSを使用したHAクラスタ、リソースマネージャデプロイモデルにおけるロードバランサーを使用したHAクラスタの2種類のHAクラスタを想定しています(いずれも片方向スタンバイクラスタの構成)。それぞれのHAクラスタについて、選択するCLUSTERPROのリソースは以下のとおりです。
用途 |
選択するCLUSTERPROのリソース |
---|---|
DNS名でクライアントからアクセスしたい場合
(Azure DNSの追加が必要)
|
Azure DNSリソース |
仮想IPアドレス(グローバルIPアドレス)でクライアントからアクセスしたい場合
(パブリックロードバランサーの追加が必要)
|
Azure プローブポートリソース |
仮想IPアドレス(プライベートIPアドレス)でクライアントからアクセスしたい場合
(内部ロードバランサーの追加が必要)
|
Azure プローブポートリソース |
仮想IPアドレス(プライベートIPアドレス)でクライアントからアクセス、かつクラスタ化したアプリケーションがAlways On構成の場合
(内部ロードバランサーの追加およびDirect Server Return(以下、DSRと略)の設定が必要)
|
Azure プローブポートリソース |
Azure DNSを使用したHAクラスタ
本構成では、同一のDNS名でクラスタへアクセスできるよう、2台の仮想マシンが同じリソース グループに属しています。DNS名でアクセス可能とするためにCLUSTERPROのAzure DNSリソースは、Azure DNS を使用しています。Azure DNS の詳細は以下のWebサイトを参照してください。
Azure DNS とは: https://docs.microsoft.com/ja-jp/azure/dns/dns-overview
![]()
図 2.2 Azure DNSを使用したHAクラスタ¶
また、Microsoft Azureプラットフォームの計画済みメンテナンスや物理ハードウェアの障害などの計画外メンテナンスによる影響を最小限に抑えるために、2台の仮想マシンで同じ可用性セットを使用しています。
図 2.2 Azure DNSを使用したHAクラスタ のクラスタには、Azure DNSゾーンにおけるDNS名を指定してアクセスします。CLUSTERPROは、DNS名から設定したIPアドレスが得られるようにAzure DNS ゾーンのレコードセットやDNS Aレコードの制御を行います。フェイルオーバまたはグループの移動が発生しても、クライアントは仮想マシンの切り替えを意識する必要がありません。
Azure DNSを使用したHAクラスタ構成において必要なリソース、監視リソースは以下のとおりです。
リソース/監視リソース種別
説明
設定
Azure DNSリソース
DNS名から設定したIPアドレスを得られるようにAzure DNS のレコードセット(A レコード)の制御を行います。
必須
Azure DNS監視リソース
Azure DNS のレコードセットに対する名前解決結果が正常であることを監視します。
必須
IP監視リソース
Microsoft Azure の Service Management API へ疎通可能かどうかを監視し、外部ネットワークとの通信の健全性を監視します。
パブリックロードバランサーを使用する場合、かつ仮想マシンで構成されたクラスタ間の通信を監視し、内部ネットワークとの通信の健全性監視が必要な場合に必須
カスタム監視リソース
仮想マシンで構成されたクラスタ間の通信を監視し、内部ネットワークとの通信の健全性を監視します。
パブリックロードバランサーを使用する場合、かつMicrosoft Azure の Service Management API へ疎通可能かどうかを監視し、外部ネットワークとの通信の健全性監視が必要な場合に必須
マルチターゲット監視リソース
上記のIP監視リソースとカスタム監視リソースの両方の状態を監視します。両方の監視リソースの状態が異常となった際に、ネットワークパーティション解決(以下、NP解決と記す)用の処理を記載したスクリプトを実行します。
パブリックロードバランサーを使用する場合、かつ内部ネットワークと外部ネットワークとの通信の健全性監視が必要な場合に必須
その他のリソース、監視リソース
ミラーディスクなど、HAクラスタで運用するアプリケーションの構成に従います。
任意
ロードバランサーを使用したHAクラスタ
![]()
図 2.3 パブリックロードバランサーを使用したHAクラスタ¶
クライアントアプリケーションは、Microsoft Azure環境の可用性セット上の仮想マシンに対して、フロントエンドのIPアドレスを使用してクラスタノードに接続することができます。VIPアドレスを使用することにより、フェイルオーバまたはグループの移動が発生しても、クライアントは仮想マシンの切り替えを意識する必要がありません。
図 2.3 パブリックロードバランサーを使用したHAクラスタ のMicrosoft Azure環境上に構築したクラスタには、Microsoft Azureのロードバランサー(Load Balancer)のグローバルなIPアドレスを指定してアクセスします。クラスタの現用系と待機系は、Microsoft Azureのロードバランサーにおけるプローブを利用して切り替えます。利用にはCLUSTERPRO Azure プローブポートリソースが提供するプローブ ポートを利用します。Azure プローブポートリソースの活性時にMicrosoft Azureのロードバランサーからの死活監視(プローブ ポートへのアクセス)を待ち受けるためのプローブポート制御プロセスを起動します。Azure プローブポートリソースの非活性時には死活監視(プローブ ポートへのアクセス)を待ち受けるためのプローブポート制御プロセスを停止します。Azure プローブポートリソースではMicrosoft Azureの内部ロードバランサー(Internal Load Balancing。以下、ILBと記す)にも対応しています。内部ロードバランサーの場合、VIPはMicrosoft AzureのプライベートIPアドレスとなります。
![]()
図 2.4 内部ロードバランサーを使用したHAクラスタ¶
ロードバランサーを使用したHAクラスタの構成例としては以下の2種類があります。用途に応じて使用するロードバランサーを決定してください。
用途
使用するロードバランサー
構築手順
業務を Microsoft Azure のネットワークの外部に公開する場合
パブリックロードバランサー
業務を Microsoft Azure のネットワークの内部に公開する場合
内部ロードバランサー(ILB)
本書「6. 構築手順(内部ロードバランサーを使用したHAクラスタの場合)」参照。
ロードバランサーを使用したHAクラスタ構成において必要なリソース、監視リソースは以下のとおりです。
リソース/監視リソース種別
説明
設定
Azure プローブポートリソース
業務が稼働するノードの特定のポートでロードバランサーからの死活監視を待ち受ける仕組みを提供します。
必須
Azure プローブポート監視リソース
Azure プローブポートリソースが起動しているノードに対して、Azure プローブポートリソース活性時に起動するプローブポート制御プロセスの死活監視を行います。
必須
Azure ロードバランス監視リソース
Azure プローブポートリソースが起動していないノードに対して、プローブポートと同じポート番号が開放されていないかを監視します。
必須
IP監視リソース
Microsoft Azure の Service Management API へ疎通可能かどうかを監視し、外部ネットワークとの通信の健全性を監視します。
パブリックロードバランサーを使用する場合、かつ仮想マシンで構成されたクラスタ間の通信を監視し、内部ネットワークとの通信の健全性監視が必要な場合に必須
カスタム監視リソース
仮想マシンで構成されたクラスタ間の通信を監視し、内部ネットワークとの通信の健全性を監視します。
パブリックロードバランサーを使用する場合、かつMicrosoft Azure の Service Management API へ疎通可能かどうかを監視し、外部ネットワークとの通信の健全性監視が必要な場合に必須
マルチターゲット監視リソース
上記のIP監視リソースとカスタム監視リソースの両方の状態を監視します。両方の監視リソースの状態が異常となった際に、ネットワークパーティション解決用の処理を記載したスクリプトを実行します。
パブリックロードバランサーを使用する場合、かつ内部ネットワークと外部ネットワークとの通信の健全性監視が必要な場合に必須
PING ネットワークパーティション解決リソース
内部ロードバランサー(ILB)を使用する場合、Pingなどの応答を返却可能な常時稼働している装置(以下、応答確認先と記す)への通信可否を確認することで、サブネット間通信の健全性を監視します。
内部ロードバランサー(ILB)を使用する場合、かつサブネット間通信の健全性監視が必要な場合に必須
その他のリソース、監視リソース
ミラーディスクなど、HAクラスタで運用するアプリケーションの構成に従います。
任意
2.3. ネットワークパーティション解決¶
HAクラスタを構成している仮想マシンは、お互いにハートビートによって死活監視を行っています。各仮想マシンが異なるサブネットに分散している構成においては、ハートビートが途絶えた時に、サービスの二重起動など望ましくない状態が発生します。サービスの二重起動を回避するために、他の仮想マシンがダウンしたか、自身がネットワークから孤立した状態(ネットワークパーティション状態。以下、NP状態と記す)かのどちらであるかを区別する必要があります。
ネットワークパーティション解決(以下、NP解決と記す)は、Pingなどの応答を返却可能な常時稼働している装置(応答確認先)に対してPingやLISTENポート確認を行い、応答がない場合はNP状態が発生したと判断し、設定された処理(警告、回復処理、サーバダウン処理など)を行います。
業務の公開範囲 |
応答確認先 |
手段 |
各手段のために使用するCLUSTERPROのリソース/監視リソース/コマンド |
---|---|---|---|
Microsoft Azure 仮想ネットワークの外部 |
Microsoft Azure サービス管理API
(management.core.windows.net)
|
LISTENポート確認 |
・カスタム監視リソース
・clpazure_port_checker コマンド
|
各クラスタサーバ |
Ping |
・IP監視リソース |
|
Microsoft Azure 仮想ネットワークの内部 |
Microsoft Azure 仮想ネットワークの内部に存在する、クラスタサーバ以外のサーバ(※) |
Ping |
・PING ネットワークパーティション解決リソース |
Microsoft Azure 仮想ネットワークの内部に存在するWebサーバ |
HTTP |
・HTTP ネットワークパーティション解決リソース |
NP解決の詳細については、以下のマニュアルを参照してください。
NP解決先の設定について
クラスタシステムにアクセスするクライアントの配置やオンプレミス環境との接続条件(専用線接続など)によって、NP解決先やNP解決の方法は、その都度検討する必要があります。推奨のNP解決先やNP解決の方法はありません。
ネットワークパーティション状態の判定をするには
指定したTCPポートのLISTEN状態を確認可能な clpazure_port_checker コマンドを提供しています。カスタム監視リソースやマルチターゲット監視リソースの[この製品で作成したスクリプト] にて使用してください。clpazure_port_checker コマンドの詳細については、以下を参照してください。TCPポートのLISTEN状態を確認する (clpazure_port_checker コマンド)
clpazure_port_checker
指定したサーバのTCPポートについて、 LISTEN の有無を確認します。
- コマンドライン
clpazure_port_checker -h hostname -p port
- 説明
本コマンドは、引数で指定されたサーバの TCP ポートについて、LISTEN の有無を確認します。5秒(固定)経過しても応答がない場合は異常と判定します(タイムアウト)。異常の場合は、標準エラー出力にエラーメッセージを出力します。本コマンドをカスタム監視リソースより実行することで、ネットワークパーティション状態の判定を行うことが可能です。- オプション
- -h hostname
判定するサーバを hostname で指定します(FQDN名もしくはIPアドレス)。省略できません。
- -p port
判定するポート番号を port で指定します(ポート番号もしくはサービス名)。省略できません。
- 戻り値
- 0
正常
- 1
異常(通信エラー)
- 2
異常(タイムアウト)
- 3
異常(引数不正、内部エラー)
2.4. オンプレミスとMicrosoft Azureの違い¶
オンプレミスとMicrosoft AzureにおけるCLUSTERPROの機能差分は以下のとおりです。 表内の✓は機能が使用できることを意味し、n/a は機能が使用できないことを意味します。
機能 |
オンプレミス |
Microsoft Azure |
---|---|---|
共有ディスク型クラスタの構築可否 |
✓ |
✓ |
ミラーディスク型クラスタの構築可否 |
✓ |
✓ |
ハイブリッドディスク型クラスタの構築可否 |
✓ |
✓ |
管理用グループの使用可否 |
✓ |
n/a |
フローティングIPリソースの使用可否 |
✓ |
n/a |
仮想IPリソースの使用可否 |
✓ |
n/a |
仮想コンピュータ名リソースの使用可否 |
✓ |
n/a |
Azure プローブポートリソースの使用可否 |
n/a |
✓ |
Azure DNSリソースの使用可否 |
n/a |
✓ |
オンプレミスとMicrosoft Azureにおける、ミラーディスクを使用した2ノードクラスタの構築手順の流れは以下を参照してください。
オンプレミス環境とMicrosoft Azure環境でクラスタを構築する作業手順の違いは、事前準備として Microsoft Azure の設定が必要であることを除き、違いはありません。
CLUSTERPROインストール前
項番
手順
オンプレミス
Microsoft Azure
1
Microsoft Azureの設定
不要
◇Azure DNSリソースを使用する場合・本書「 4.2. Microsoft Azureの設定 」参照◇パブリックロードバランサーを使用する場合・本書「 5.2. Microsoft Azureの設定 」参照◇内部ロードバランサーを使用する場合・本書「 6.2. Microsoft Azureの設定 」参照2
インスタンスの設定
不要
3
ミラーディスクリソース用のパーティションを設定
オンプレミスと同様
4
OS 起動時間の調整
『インストール&設定ガイド』-「システム構成を決定する」-「ハードウェア構成後の設定」参照
オンプレミスと同様
5
ネットワーク設定の確認
『インストール&設定ガイド』-「システム構成を決定する」-「ハードウェア構成後の設定」参照
オンプレミスと同様
6
ファイアウォールの設定を確認
『インストール&設定ガイド』-「システム構成を決定する」-「ハードウェア構成後の設定」参照
オンプレミスと同様
7
サーバの時刻を同期
『インストール&設定ガイド』-「システム構成を決定する」-「ハードウェア構成後の設定」参照
オンプレミスと同様
8
パワーセービング機能をオフ
『インストール&設定ガイド』-「システム構成を決定する」-「ハードウェア構成後の設定」参照
オンプレミスと同様
9
CLUSTERPRO のインストール
オンプレミスと同様
CLUSTERPROインストール後
項番
手順
オンプレミス
Microsoft Azure
10
CLUSTERPRO のライセンスを登録
『インストール&設定ガイド』-「ライセンスを登録する」参照
オンプレミスと同様
11
クラスタの作成-ハートビート方式の設定
『インストール&設定ガイド』-「クラスタ構成情報を作成する」-「クラスタ構成情報の作成手順」参照。
COMハートビート、BMCハートビート、ディスクハートビートは使用できません。
12
クラスタの作成-NP解決処理の設定
ネットワークパーティション解決リソースを使用。以下を参照。本書「4.4. CLUSTERPROの設定」を参照。
13
クラスタの作成-フェイルオーバグループの作成、監視リソースの作成
『インストール&設定ガイド』-「クラスタ構成情報を作成する」-「クラスタ構成情報の作成手順」参照
オンプレミスに加え、以下を参照。◇AWS DNSリソースを使用する場合・本書「4.4. CLUSTERPROの設定」◇ロードバランサーを使用する場合使用するロードバランサーにより以下のいずれかを参照・本書「5.4. CLUSTERPROの設定」・本書「6.4. CLUSTERPROの設定」
3. 動作環境¶
以下のマニュアルを参照してください。
4. 構築手順(Azure DNSを使用したHAクラスタの場合)¶
4.1. 構築例について¶
本書では、Microsoft Azure において、CLUSTERPRO を使用した2ノードでの片方向スタンバイクラスタの構築手順を紹介します。本手順は、node-1 を現用系サーバとしたミラーディスク型の構成を対象としています。
以下の表は既定値が存在しないパラメータ、および既定値から変更したパラメータについて記載しています。
Microsoft Azureの設定(node-1、node-2で共通の設定)
設定項目
設定値
リソース グループの設定
名前
TestGroup1
リージョン
(アジア太平洋)東日本
仮想ネットワークの設定
名前
Vnet1
アドレス空間
10.5.0.0/24
サブネット名
Vnet1-1
サブネットアドレス範囲
10.5.0.0/24
リソース グループ名
TestGroup1
場所
(アジア太平洋)東日本
DNSゾーンの設定
名前
cluster1.zone
リソースグループ
TestGroup1
レコードセット
test-record1
Microsoft Azureの設定(node-1、node-2でそれぞれ設定)
設定項目
設定値
node-1
node-2
仮想マシンの設定
ディスクの種類
Standard HDD
Standard HDD
ユーザー名
testlogin
testlogin
パスワード
PassWord_123
PassWord_123
リソース グループ名
TestGroup1
TestGroup1
地域
(アジア太平洋)東日本
(アジア太平洋)東日本
ネットワーク セキュリティ グループの設定
名前
node-1-nsg
node-2-nsg
可用性セットの設定
名前
AvailabilitySet-1
AvailabilitySet-1
更新ドメイン
5
5
障害ドメイン
2
2
診断ストレージアカウントの設定
名前
自動生成
自動生成
レプリケーション
ローカル冗長ストレージ(LRS)
ローカル冗長ストレージ(LRS)
IP構成の設定
IPアドレス
10.5.0.120
10.5.0.121
ディスクの設定
名前
node-1_DataDisk_0
node-2_DataDisk_0
ソースの種類
なし(空のディスク)
なし(空のディスク)
アカウントの種類
Standard HDD
Standard HDD
サイズ
20
20
CLUSTERPROの設定(クラスタプロパティ)
設定項目
設定値
node1
node2
クラスタ名
Cluster1
Cluster1
サーバ名
node1
node2
タイムアウトタブ - ハートビートタイムアウト
210
210
CLUSTERPROの設定(フェイルオーバグループ)
リソース名
設定項目
設定値
ミラーディスクリソース
リソース名
md
詳細タブ - データパーティションのドライブ名
G:
詳細タブ - クラスタパーティションのドライブ名
F:
Azure DNSリソース
リソース名
azuredns1
レコードセット名
test-record1
ゾーン名
cluster1.zone
IPアドレス
(node-1の場合)10.5.0.120(node-2の場合)10.5.0.121リソースグループ名
TestGroup1
ユーザURI
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
テナントID
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
サービスプリンシパルのファイルパス
C:\Users\testlogin\examplecert.pem
Azure CLI ファイルパス
C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin\az.cmd
CLUSTERPROの設定(監視リソース)
監視リソース名
設定項目
設定値
ミラーディスク監視リソース
監視リソース名
mdw1
Azure DNS 監視リソース
監視リソース名
azurednsw1
カスタム監視リソース
監視リソース名
genw1
この製品で作成したスクリプト
オン
監視タイプ
同期
正常な戻り値
0
回復動作
最終動作のみ実行
回復対象
LocalServer
IP監視リソース
監視リソース名
ipw1
監視を行うサーバ
node-1
IPアドレス
10.5.0.121
回復動作
最終動作のみ実行
回復対象
LocalServer
IP監視リソース
監視リソース名
ipw2
監視を行うサーバ
node-2
IPアドレス
10.5.0.120
回復動作
最終動作のみ実行
回復対象
LocalServer
マルチターゲット監視リソース
監視リソース名
mtw1
監視リソース一覧
genw1ipw1ipw2回復動作
クラスタサービス停止とOSシャットダウン
回復対象
LocalServer
4.2. Microsoft Azureの設定¶
Microsoft Azure ポータル(https://portal.azure.com/)にログインし、 4.1. 構築例について を参考に以下の設定を行います。
リソースグループの作成
リソースを管理するリソースグループを作成します。
仮想ネットワークの作成
仮想ネットワークを作成します。
仮想マシンの作成
クラスタを構成する仮想マシンの数だけ作成します。
プライベートIPアドレスの設定
IP アドレスは初期設定では動的割り当てとなっているため、静的割り当てに変更します。※ネットワークインターフェイスのIP構成から割り当てを変更します。※変更後は新しいプライベートIP アドレスを利用できるようにするために、仮想マシンが自動的に再起動されます。DNSゾーンの作成
DNSゾーンを作成します。
4.3. インスタンスの設定¶
以下の手順で設定します。OSの日本語化が必要な場合、以下を参照してください。
ミラーディスクの準備
ミラーディスクリソース用のパーティションを設定します。ミラーディスクリソース用のパーティションについては、『インストール&設定ガイド』 -「システム構成を決定する」-「ハードウェア構成後の設定」-「2. ミラー用パーティションを設定する (ミラーディスク使用時は必須)」を参照してください。OS 起動時間の調整、ネットワーク設定の確認、ファイアウォールの設定を確認、サーバの時刻を同期、パワーセービング機能をオフ
各手順は『インストール&設定ガイド』-「システム構成を決定する」-「ハードウェア構成後の設定」を参照してください。
Azure CLIのインストール
詳細な手順については、以下のWeb サイトを参照してください。
Azure CLI のインストール:サービス プリンシパルの作成
Azure CLI を使用して、サービス プリンシパルを作成します。Azure DNSリソースは Microsoft Azure にログインし、DNSゾーンへの登録や監視を実行します。Microsoft Azure へのログイン時、サービス プリンシパルによる Azure ログインを利用します。本書ではセキュリティ観点から証明書ベースの認証を記載しています。証明書には有効期限があることに注意してください。詳細は az ad sp create-for-rbac の --years オプションを参照してください。サービス プリンシパルや詳細な手順については、以下のWeb サイトを参照してください。Azure CLI を使用してサインインする:Azure CLI で Azure サービス プリンシパルを作成する:組織のアカウントでログインします。
az login -u <アカウント名> -p <パスワード>
サービス プリンシパルを作成し、登録します。Cluster WebUI の Azure DNS リソース設定時に入力必要なため、表示される appID および tenant はメモしてください。
以下の例では、
C:\Users\testlogin\examplecert.pem
にサービス プリンシパルが作成されます。az ad sp create-for-rbac --display-name azure-test --create-cert --years 10 --role Contributor --scopes <サービス プリンシパルのロールの割り当てが適用されるスコープ> { "appId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "displayName": "azure-test", "fileWithCertAndPrivateKey": "C:\Users\testlogin\examplecert.pem", "password": null, "tenant": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" }
ログアウトします。
az logout --username <アカウント名>
作成されたサービス プリンシパルを利用して、Microsoft Azure へログインできるか確認します。
az login --service-principal -u <上記のappIDの値> --tenant <上記のtenantの値> -p <上記のfileWithCertAndPrivateKeyの値>
サインインに成功すると、次の出力が表示されます。
[ { "cloudName": "AzureCloud", "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "isDefault": true, "name": "xxxxxxxxxx", "state": "Enabled", "tenantId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "user": { "name": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "type": "servicePrincipal" } } ]
ログアウトします。
az logout --username <上記のnameの値>
作成されたサービス プリンシパルのロールを既定のContributor(共同作成者)から別のロールに変更する場合、Actionsプロパティとして以下のすべての操作へのアクセス権を持つロールを選択してください。この条件を満たさないロールに変更した場合、後程設定する Azure DNS 監視リソースによる監視がエラーにより失敗します。
Azure CLI 2.0の場合
Microsoft.Network/dnsZones/A/write
Microsoft.Network/dnsZones/A/delete
Microsoft.Network/dnsZones/NS/read
CLUSTERPROのインストール
インストール手順は『インストール&設定ガイド』を参照してください。インストール完了後、OSの再起動を行ってください。CLUSTERPROのライセンスを登録
ライセンス登録手順は『インストール&設定ガイド』を参照してください。
4.4. CLUSTERPROの設定¶
Cluster WebUI のセットアップ、および接続方法は『インストール&設定ガイド』-「クラスタ構成情報を作成する」を参照してください。
以下のリソース/監視リソースを追加する手順を記述します。
ミラーディスクリソース
Azure DNS リソース
Azure DNS 監視リソース
カスタム監視リソース(NP解決用)
IP監視リソース(NP解決用)
マルチターゲット監視リソース(NP解決用)
上記以外の設定は、『インストール&設定ガイド』、『リファレンスガイド』を参照してください。
クラスタの作成
最初に、クラスタ生成ウィザードを開始し、クラスタを構築します。
クラスタの構築
Cluster WebUI にアクセスし、[クラスタ生成ウィザード] をクリックします。
[クラスタ生成ウィザード]画面の[クラスタ]画面が表示されます。
[クラスタ名] に任意のクラスタ名を入力します。[言語] を適切に選択します。[次へ] をクリックします。
[基本設定]画面が表示されます。Cluster WebUI に接続したインスタンスがマスタサーバとして登録済みの状態で表示されます。[追加] をクリックし、残りのインスタンスを追加します(インスタンスのPrivate IP アドレスを指定します)。[次へ] をクリックします。
[インタコネクト] 画面が表示されます。インタコネクトのために使用するIPアドレス(各インスタンスのPrivate IP アドレス)を指定します。また、後で作成するミラーディスクリソースの通信経路として [MDC] に mdc1 を選択します。[次へ] をクリックします。
[NP解決] 画面が表示されます。ただし、NP解決は本画面では設定せず、 別途IP 監視リソース、カスタム監視リソース、マルチターゲット監視リソースを追加することによって同等のことを実現します。NP解決の設定は、後述の「3. 監視リソースの追加」で行います。クラスタシステムにアクセスするクライアントの配置やオンプレミス環境との接続条件(専用線接続など)によって、NP解決先やNP解決の方法は、その都度検討する必要があります。推奨のNP解決先やNP解決の方法はありません。NP 解決にネットワークパーティション解決リソースを利用することも可能です。[次へ] をクリックします。
グループリソースの追加
グループの定義
フェイルオーバグループを作成します。
[グループ一覧] 画面が表示されます。[追加]をクリックします。
[グループの定義] 画面が表示されます。[名前] にフェイルオーバグループ名(failover1)を設定します。[次へ] をクリックします。
[起動可能サーバ] 画面が表示されます。何も指定せず [次へ] をクリックします。 [グループ属性] 画面が表示されます。何も指定せず [次へ] をクリックします。 [グループリソース一覧] 画面が表示されます。以降の手順で、この画面でグループリソースを追加していきます。
ミラーディスクリソース
ミラーディスクリソースを作成します。詳細は 『リファレンスガイド』 -「ミラーディスクリソースを理解する」を参照してください。
[グループリソース一覧] で [追加] をクリックします。
[グループのリソース定義 | failover1] 画面が開きます。[タイプ] ボックスでグループリソースのタイプ(ミラーディスクリソース) を選択し、[名前] ボックスにグループ名 (md) を入力します。[次へ] をクリックします。
[依存関係] 画面が表示されます。何も指定せず [次へ] をクリックします。[復旧動作] 画面が表示されます。[次へ] をクリックします。
[詳細] 画面が表示されます。[起動可能サーバ]で[名前]列中のサーバ名を選択し[追加]をクリックします。
[パーティションの選択]ダイアログボックスが表示されます。[接続]をクリックし、「6. 仮想マシンの設定 」で作成したデータパーティションと、クラスタパーティションを選択し、[OK]をクリックします。
node-1について5と6を設定、次にnode-2について5と6を設定し、[完了]をクリックします。
Azure DNS リソース
Azure DNS に対してレコードを登録、解除する仕組みを提供します。Azure DNS リソースの詳細は 『リファレンスガイド』-「Azure DNS リソースを理解する」を参照してください。
[グループリソース一覧] で [追加] をクリックします。
[グループのリソース定義 | failover1] 画面が開きます。[タイプ] ボックスでグループリソースのタイプ (Azure DNSリソース) を選択して、[名前] ボックスにグループ名 (azuredns1) を入力します。[次へ] をクリックします。
[依存関係] 画面が表示されます。何も指定せず [次へ] をクリックします。
[復旧動作] 画面が表示されます。[次へ] をクリックします。
[レコードセット名]、[ゾーン名]、[IPアドレス]、[リソースグループ名]、[ユーザURI]、[テナントID]、[サービスプリンシパルのファイルパス]、[Azure CLI ファイルパス]に値を入力します。[IPアドレス] は各サーバのIPアドレスを使用する場合、各サーバのタブでIPアドレスを入力します。サーバ別の設定を行う場合は [共通] タブでは、任意のサーバのIPアドレスを記載し、他のサーバは個別設定を行うようにしてください。[ユーザURI] には「9. サービス プリンシパルの作成」でメモした appID を指定してください。[テナントID] には「9. サービス プリンシパルの作成」でメモした tenant を指定してください。
[完了] をクリックします。
監視リソースの追加
Azure DNS 監視リソース
Azure DNSに登録したレコードセットの確認および名前解決確認の監視機構を提供します。Azure DNS 監視リソースの詳細は 『リファレンスガイド』-「Azure DNS 監視リソースを理解する」を参照してください。Azure DNS リソースを1つ追加すると、Azure DNS 監視リソースが1つ自動的に作成されます。カスタム監視リソース
Microsoft Azure の Service Management API へ疎通可能かどうかを監視し、外部ネットワークとの通信の健全性を監視するためのスクリプトを設定します。カスタム監視リソースの詳細は 『リファレンスガイド』-「カスタム監視リソースを理解する」を参照してください。
[モニタリソース一覧] で [追加] をクリックします。
[タイプ] ボックスでモニタリソースのタイプ (カスタム監視) を選択し、[名前] ボックスに監視リソース名 (genw1) を入力します。[次へ] をクリックします。
[監視(共通)] 画面が表示されます。[監視タイミング] を [常時] であることを確認し、[次へ] をクリックします。
[監視(固有)] 画面が表示されます。[この製品で作成したスクリプト] をチェックします。作成するスクリプトのサンプルは以下のとおりです。<CLUSTERPROインストールパス>\bin\clpazure_port_checker -h management.core.windows.net -p 443 EXIT %ERRORLEVEL%[監視タイプ] を [同期] にチェックします。[次へ] をクリックします。
[回復動作] 画面が表示されます。[回復動作] に [最終動作のみ実行]、[回復対象] に [LocalServer]、[最終動作] に [何もしない]を設定します。
[完了] をクリックして設定を終了します。
IP監視リソース
仮想マシンで構成されたクラスタ間の通信を監視し、内部ネットワークとの通信の健全性を監視する IP 監視リソースを作成します。IP監視リソースの詳細は 『リファレンスガイド』-「IP 監視リソースを理解する」を参照してください。
[モニタリソース一覧] で [追加] をクリックします。
[タイプ] ボックスでモニタリソースのタイプ (IP監視) を選択し、[名前] ボックスに監視リソース名 (ipw1) を入力します。[次へ] をクリックします。
[監視(共通)] 画面が表示されます。[監視タイミング] が [常時] であることを確認します。
[監視を行うサーバを選択する] で起動可能なサーバをひとつ選択し追加します。[OK] をクリックし、[次へ] をクリックします。
[監視(固有)] 画面が表示されます。
[IPアドレス一覧] で [追加] を選択し、3 で選択したサーバとは別のサーバのIPアドレスを設定します。[OK] をクリックし、[次へ] をクリックします。
[回復動作] 画面が表示されます。[回復動作] に [最終動作のみ実行]、[回復対象] に [LocalServer]、[最終動作] に [何もしない] を設定します。
[完了] をクリックして設定を終了します。
次にもう一方のサーバでも、同様の監視リソースを作成します。[モニタリソース一覧] で [追加] をクリックします。
[タイプ] ボックスでモニタリソースのタイプ (IP監視) を選択し、[名前] ボックスに監視リソース名 (ipw2) を入力します。[次へ] をクリックします。
[監視(共通)] 画面が表示されます。[監視タイミング] が [常時] であることを確認します。[監視を行うサーバを選択する] で起動可能なサーバをひとつ選択し追加します。[OK] をクリックし、[次へ] をクリックします。 [監視(固有)] 画面が表示されます。[IPアドレス一覧] で [追加] を選択し、9 で選択したサーバとは別のサーバのIPアドレスを設定します。[OK] をクリックし、[次へ] をクリックします。 [回復動作] 画面が表示されます。[回復動作] に [最終動作のみ実行]、[回復対象] に [LocalServer]、[最終動作] に [何もしない] を設定します。
[完了] をクリックして設定を終了します。
マルチターゲット監視リソース
Microsoft AzureのService Management APIへの通信を監視するカスタム監視リソースと、仮想マシンで構成されたクラスタ間のIP監視リソースの両方の状態を確認するマルチターゲット監視リソースを作成します。両方の監視リソースの状態が異常となった際に、NP解決用の処理を記載したスクリプトを実行します。マルチターゲット監視リソースの詳細は 『リファレンスガイド』-「マルチターゲット監視リソースを理解する」を参照してください。
[モニタリソース一覧] で [追加] をクリックします。
[タイプ] ボックスでモニタリソースのタイプ (マルチターゲット監視) を選択し、[名前] ボックスに監視リソース名 (mtw1) を入力します。[次へ] をクリックします。
[監視(共通)] 画面が表示されます。[監視タイミング] が [常時] であることを確認し、[次へ] をクリックします。
[監視(固有)] 画面が表示されます。利用可能なモニタリソース一覧から [追加] を選択し、Service Management APIへの疎通確認用カスタム監視リソース、両サーバに設定したそれぞれのIP監視リソースの3つの監視リソースを追加します(genw1、ipw1、ipw2)。[次へ] をクリックします。
[回復動作] 画面が表示されます。[回復動作] に [最終動作のみ実行]、[回復対象] に [LocalServer]、[最終動作] に [クラスタサービス停止とOSシャットダウン] を設定します。
[完了] をクリックして設定を終了します。
クラスタプロパティの設定
クラスタプロパティの詳細は『リファレンスガイド』-「クラスタプロパティ」を参照してください。
クラスタプロパティ
Microsoft Azure と CLUSTERPRO の連携用に、クラスタプロパティ内の設定を以下のように設定します。
Cluster WebUI から設定モードへ移動し、クラスタ名のプロパティアイコンをクリックします。
[タイムアウト] タブを選択します。ハートビートの[タイムアウト]に以下の 「A + B + C」の結果を設定します。
A :NP 解決用のマルチターゲット監視リソースで監視している監視リソースの[インターバル] × ([リトライ回数] + 1)
※3つある監視リソースのうち上記計算式の結果が大きい方を選択してください。
B :マルチターゲット監視リソースの [インターバル] × ([リトライ回数] + 1)
C :30秒(マルチターゲット監視リソースでの異常検出前にハートビートがタイムアウトしないようにするための猶予時間。適宜変更可能)
注釈
ハートビートのタイムアウト値が、NP 解決用のモニタで異常を検出する時間より短い場合、NP 解決処理が動作する前にハートビートのタイムアウトを検出します。この場合、待機サーバでサービスが起動され、クラスタ内でサービスの二重起動が発生する可能性があります。
[OK] をクリックします。
設定の反映とクラスタの起動
Cluster WebUI の設定モード から、[設定の反映] をクリックします。[設定を反映しますか。] というポップアップメッセージが表示されますので、[OK] をクリックします。アップロードに成功すると、[反映に成功しました。] のメッセージが表示されますので、[OK] をクリックします。アップロードに失敗した場合は、表示されるメッセージに従って操作を行ってください。 Cluster WebUI の ツールバーのドロップダウンメニューで [操作モード] を選択して、操作モードに切り替えます。 Cluster WebUI の[ステータス] タブから [クラスタ開始] をクリックし、確認画面で [開始] をクリックします。詳細は『インストール&設定ガイド』-「クラスタを生成するには」を参照してください。
4.5. 動作確認¶
構築した環境が正常に動作するかを、監視異常を発生させフェイルオーバグループがフェイルオーバすることにより確認します。既にクラスタが正常に起動している状態からの確認手順は以下のとおりです。
フェイルオーバグループ(failover1)が、現用系ノードのnode-1で起動します。Cluster WebUI [ステータス]タブにおいてfailover1がnode-1で[起動済]になっていることを確認します。
Microsoft Azure ポータルにログインし、DNS ゾーンより cluster1.zone を選択後、[概要]を選択します。画面右上に表示されているDNS サーバー(画面例では、ネームサーバー 1、ネームサーバー 2、ネームサーバー 3、ネームサーバー 4)を確認します。
上記で確認したDNS サーバーに対し、nslookup コマンドで該当レコードセットが存在することを確認します。
nslookup test-record1.cluster1.zone <上記で確認したDNSサーバー>Microsoft Azure ポータルにおいて、DNS ゾーンからA レコードを手動で削除します。これにより、azurednsw1は監視異常を検出します。DNS ゾーンより cluster1.zone を選択し、[概要]を選択します。
削除するレコードを選択し、[削除]を選択します。削除確認にて[はい]を選択します。
azurednsw1の[インターバル]後にフェイルオーバグループ(failover1)が異常になり、ノードnode-2へフェイルオーバします。Cluster WebUI [ステータス]タブにおいてfailover1がnode-2で[起動済]になっていることを確認します。
上記で確認したDNSサーバーに対し、nslookupコマンドで該当レコードセットが存在することを確認します。
nslookup test-record1.cluster1.zone <上記で確認したDNSサーバー>以上で、DNSサーバーからAレコードを削除した場合におけるフェイルオーバの動作確認は完了です。その他の障害発生時の動作確認については適宜実施してください。
5. 構築手順(パブリックロードバランサーを使用したHAクラスタの場合)¶
5.1. 構築例について¶
本書では、Microsoft Azure において、CLUSTERPRO を使用した2ノードでの片方向スタンバイクラスタの構築手順を紹介します。本手順は、node-1 を現用系サーバとしたミラーディスク型の構成を対象としています。
以下の表は既定値が存在しないパラメータ、および既定値から変更したパラメータについて記載しています。
Microsoft Azureの設定(node-1、node-2で共通の設定)
設定項目
設定値
リソース グループの設定
名前
TestGroup1
リージョン
(アジア太平洋)東日本
仮想ネットワークの設定
名前
Vnet1
アドレス空間
10.5.0.0/24
サブネット名
Vnet1-1
サブネットアドレス範囲
10.5.0.0/24
リソース グループ名
TestGroup1
場所
(アジア太平洋)東日本
ロードバランサーの設定
名前
TestLoadBalancer
種類
パブリック
パブリックIPアドレス名
TestLoadBalancerPublicIP
パブリックIPアドレス - 割り当て
静的
リソース グループ
TestGroup1
地域
(アジア太平洋)東日本
バックエンドプール - 名前
TestBackendPool
関連付け先
可用性セット
ターゲット仮想マシン
node-1node-2ネットワークIP 構成
10.5.0.12010.5.0.121正常性プローブ - 名前
TestHealthProbe
正常性プローブ - ポート
26001
負荷分散規則 - 名前
TestLoadBalancingRule
負荷分散規則 - ポート
80 (業務を提供しているポート番号)
負荷分散規則 - バックエンドポート
8080 (業務を提供しているポート番号)
受信セキュリティ規則の設定
名前
TestHTTP
プロトコル
TCP
宛先ポート範囲
8080 (業務を提供しているポート番号)
Microsoft Azureの設定(node-1、node-2でそれぞれ設定)
設定項目
設定値
node-1
node-2
仮想マシンの設定
ディスクの種類
Standard HDD
Standard HDD
ユーザー名
testlogin
testlogin
パスワード
PassWord_123
PassWord_123
リソース グループ名
TestGroup1
TestGroup1
地域
(アジア太平洋)東日本
(アジア太平洋)東日本
ネットワーク セキュリティ グループの設定
名前
node-1-nsg
node-2-nsg
可用性セットの設定
名前
AvailabilitySet-1
AvailabilitySet-1
更新ドメイン
5
5
障害ドメイン
2
2
診断ストレージアカウントの設定
名前
自動生成
自動生成
パフォーマンス
Standard
Standard
レプリケーション
ローカル冗長ストレージ(LRS)
ローカル冗長ストレージ(LRS)
IP構成の設定
IPアドレス
10.5.0.120
10.5.0.121
ディスクの設定
名前
node-1_DataDisk_0
node-2_DataDisk_0
ソースの種類
なし(空のディスク)
なし(空のディスク)
アカウントの種類
Standard HDD
Standard HDD
サイズ
20
20
CLUSTERPROの設定(クラスタプロパティ)
設定項目
設定値
node1
node2
クラスタ名
Cluster1
Cluster1
サーバ名
node1
node2
タイムアウトタブ - ハートビートタイムアウト
210
210
CLUSTERPROの設定(フェイルオーバグループ)
リソース名
設定項目
設定値
ミラーディスクリソース
リソース名
md
詳細タブ - データパーティションのドライブ文字
G:
詳細タブ - クラスタパーティションのドライブ文字
F:
Azure プローブポートリソース
リソース名
azurepp1
プローブポート
26001(正常性プローブ - ポートで指定した値)
CLUSTERPROの設定(監視リソース)
監視リソース名
設定項目
設定値
ミラーディスク監視リソース
監視リソース名
mdw1
Azure プローブポート監視リソース
監視リソース名
azureppw1
回復対象
azurepp1
Azure ロードバランス監視リソース
監視リソース名
azurelbw1
回復対象
azurepp1
カスタム監視リソース
監視リソース名
genw1
この製品で作成したスクリプト
オン
監視タイプ
同期
正常な戻り値
0
回復動作
最終動作のみ実行
回復対象
LocalServer
IP監視リソース
監視リソース名
ipw1
監視を行うサーバ
node-1
IPアドレス
10.5.0.121
回復動作
最終動作のみ実行
回復対象
LocalServer
IP監視リソース
監視リソース名
ipw2
監視を行うサーバ
node-2
IPアドレス
10.5.0.120
回復動作
最終動作のみ実行
回復対象
LocalServer
マルチターゲット監視リソース
監視リソース名
mtw1
監視リソース一覧
genw1ipw1ipw2回復動作
最終動作のみ実行
回復対象
LocalServer
最終動作前にスクリプトを実行する
オン
タイムアウト
30
5.2. Microsoft Azureの設定¶
Microsoft Azure ポータル(https://portal.azure.com/)にログインし、 5.1. 構築例について を参考に以下の設定を行います。
リソースグループの作成
リソースを管理するリソースグループを作成します。
仮想ネットワークの作成
仮想ネットワークを作成します。
仮想マシンの作成
クラスタを構成する仮想マシンの数だけ作成します。
プライベートIPアドレスの設定
IP アドレスは初期設定では動的割り当てとなっているため、静的割り当てに変更します。※ネットワークインターフェイスのIP構成から割り当てを変更します。※変更後は新しいプライベートIP アドレスを利用できるようにするために、仮想マシンが自動的に再起動されます。ロードバランサーの作成
ロードバランサーを作成します。詳細は以下のWebサイトを参照してください。
- Load Balancer のドキュメント:
※ ロードバランサーの種類は[パブリック]を選択し作成します。※ デプロイには数分掛かります。仮想マシンをバックエンドプールに紐付けます。
正常性プローブを設定します。
負荷分散規則を設定します。
受信セキュリティ規則を設定します。
ネットワーク セキュリティ グループの受信セキュリティ規則に負荷分散規則で設定したバックエンドポートを追加します。
5.3. インスタンスの設定¶
以下の手順で設定します。OSの日本語化が必要な場合、以下を参照してください。
ミラーディスクの準備
ミラーディスクリソース用のパーティションを設定します。ミラーディスクリソース用のパーティションについては、『インストール&設定ガイド』 -「システム構成を決定する」-「ハードウェア構成後の設定」-「2. ミラー用パーティションを設定する (ミラーディスク使用時は必須)」を参照してください。OS 起動時間の調整、ネットワーク設定の確認、ファイアウォールの設定を確認、サーバの時刻を同期、パワーセービング機能をオフ
各手順は『インストール&設定ガイド』-「システム構成を決定する」-「ハードウェア構成後の設定」を参照してください。
CLUSTERPROのインストール
インストール手順は『インストール&設定ガイド』を参照してください。インストール完了後、OSの再起動を行ってください。CLUSTERPROのライセンスを登録
ライセンス登録手順は『インストール&設定ガイド』を参照してください。
5.4. CLUSTERPROの設定¶
Cluster WebUIのセットアップ、および接続方法は『インストール&設定ガイド』-「クラスタ構成情報を作成する」を参照してください。
以下のリソース/監視リソースを追加する手順を記述します。
ミラーディスクリソース
Azure プローブポートリソース
Azure プローブポート監視リソース
Azure ロードバランス監視リソース
カスタム監視リソース(NP解決用)
IP監視リソース(NP解決用)
マルチターゲット監視リソース(NP解決用)
上記以外の設定は、『インストール&設定ガイド』、『リファレンスガイド』を参照してください。
クラスタの作成
最初に、クラスタ生成ウィザードを開始し、クラスタを構築します。
クラスタの構築
Cluster WebUI にアクセスし、[クラスタ生成ウィザード] をクリックします。
[クラスタ生成ウィザード]画面の[クラスタ]画面が表示されます。[クラスタ名] に任意のクラスタ名を入力します。[言語] を適切に選択します。[次へ] をクリックします。
[基本設定]画面が表示されます。Cluster WebUI に接続したインスタンスがマスタサーバとして登録済みの状態で表示されます。[追加] をクリックし、残りのインスタンスを追加します(インスタンスのPrivate IP アドレスを指定します)。[次へ] をクリックします。
[インタコネクト] 画面が表示されます。インタコネクトのために使用するIPアドレス(各インスタンスのPrivate IP アドレス)を指定します。また、後で作成するミラーディスクリソースの通信経路として [MDC] に mdc1 を選択します。[次へ] をクリックします。
[NP解決] 画面が表示されます。ただし、NP解決は本画面では設定せず、 別途IP 監視リソース、カスタム監視リソース、マルチターゲット監視リソースを追加することによって同等のことを実現します。NP解決の設定は、後述の「3. 監視リソースの追加」で行います。クラスタシステムにアクセスするクライアントの配置やオンプレミス環境との接続条件(専用線接続など)によって、NP解決先やNP解決の方法は、その都度検討する必要があります。推奨のNP解決先やNP解決の方法はありません。NP 解決にネットワークパーティション解決リソースを利用することも可能です。[次へ] をクリックします。
グループリソースの追加
グループの定義
フェイルオーバグループを作成します。
[グループ一覧] 画面が表示されます。[追加]をクリックします。
[グループの定義] 画面が表示されます。[名前] にフェイルオーバグループ名(failover1)を設定します。[次へ] をクリックします。
[起動可能サーバ] 画面が表示されます。何も指定せず [次へ] をクリックします。 [グループ属性] 画面が表示されます。何も指定せず [次へ] をクリックします。 [グループリソース一覧] 画面が表示されます。以降の手順で、この画面でグループリソースを追加していきます。
[グループリソース一覧] で [追加] をクリックします。
[グループのリソース定義 | failover1] 画面が開きます。[タイプ] ボックスでグループリソースのタイプ(ミラーディスクリソース) を選択し、[名前] ボックスにグループ名 (md) を入力します。[次へ] をクリックします。
[依存関係] 画面が表示されます。何も指定せず [次へ] をクリックします。[復旧動作] 画面が表示されます。[次へ] をクリックします。
[詳細] 画面が表示されます。[起動可能サーバ]で[名前]列中のサーバ名を選択し[追加]をクリックします。
[パーティションの選択]ダイアログボックスが表示されます。[接続]をクリックし、「5. 仮想マシンの設定 」で作成したデータパーティションと、クラスタパーティションを選択し、[OK]をクリックします。
node-1について5と6を設定、次にnode-2について5と6を設定し、[完了]をクリックします。
Azure プローブポートリソース
Microsoft Azure 上で CLUSTERPRO を利用する場合、業務が稼働するノードの特定のポートでロードバランサーからの死活監視を待ち受ける仕組みを提供します。Azure プローブポートリソースの詳細は 『リファレンスガイド』-「Azure プローブポートリソースを理解する」を参照してください。
[グループリソース一覧] で [追加] をクリックします。
[グループのリソース定義 | failover1] 画面が開きます。[タイプ] ボックスでグループリソースのタイプ (Azure プローブポートリソース) を選択して、[名前] ボックスにグループ名 (azurepp1) を入力します。[次へ] をクリックします。
[依存関係] 画面が表示されます。何も指定せず [次へ] をクリックします。
[復旧動作] 画面が表示されます。[次へ] をクリックします。
[プローブポート] にロードバランサーの設定(正常性プローブの設定)時に [ポート] として指定した値を入力します。
[完了] をクリックします。
監視リソースの追加
Azure プローブポート監視リソース
Microsoft Azure プローブポートリソースが起動しているノードに対して、死活監視のためのポートの監視機構を提供します。Azure プローブポート監視リソースの詳細は 『リファレンスガイド』-「Azure プローブポート監視リソースを理解する」を参照してください。Azure プローブポートリソースを1つ追加すると、Azure プローブポート監視リソースが1つ自動的に作成されます。Azure ロードバランス監視リソース
Microsoft Azure プローブポートリソースが起動していないノードに対して、プローブポートと同じポート番号が開放されていないかの監視機構を提供します。Azure ロードバランス監視リソースの詳細は 『リファレンスガイド』-「Azure ロードバランス監視リソースを理解する」を参照してください。Azure プローブポートリソースを1つ追加すると、Azure ロードバランス監視リソースが1つ自動的に作成されます。カスタム監視リソース
Microsoft Azure の Service Management API へ疎通可能かどうかを監視し、外部ネットワークとの通信の健全性を監視するためのスクリプトを設定します。カスタム監視リソースの詳細は 『リファレンスガイド』-「カスタム監視リソースを理解する」を参照してください。
[モニタリソース一覧] で [追加] をクリックします。
[タイプ] ボックスでモニタリソースのタイプ (カスタム監視) を選択し、[名前] ボックスに監視リソース名 (genw1) を入力します。[次へ] をクリックします。
[監視(共通)] 画面が表示されます。[監視タイミング] を [常時] であることを確認し、[次へ] をクリックします。
[監視(固有)] 画面が表示されます。[この製品で作成したスクリプト] をチェックします。作成するスクリプトのサンプルは以下のとおりです。<CLUSTERPROインストールパス>\bin\clpazure_port_checker -h management.core.windows.net -p 443 EXIT %ERRORLEVEL%[監視タイプ] を [同期] にチェックします。[次へ] をクリックします。
[回復動作] 画面が表示されます。[回復動作] に [最終動作のみ実行]、[回復対象] に [LocalServer]、[最終動作] に [何もしない]を設定します。
[完了] をクリックして設定を終了します。
IP監視リソース
仮想マシンで構成されたクラスタ間の通信を監視し、内部ネットワークとの通信の健全性を監視する IP 監視リソースを作成します。IP監視リソースの詳細は 『リファレンスガイド』-「IP 監視リソースを理解する」を参照してください。
[モニタリソース一覧] で [追加] をクリックします。
[タイプ] ボックスでモニタリソースのタイプ (IP監視) を選択し、[名前] ボックスに監視リソース名 (ipw1) を入力します。[次へ] をクリックします。
[監視(共通)] 画面が表示されます。[監視タイミング] が [常時] であることを確認します。
[監視を行うサーバを選択する] で起動可能なサーバをひとつ選択し追加します。[OK] をクリックし、[次へ] をクリックします。
[監視(固有)] 画面が表示されます。
[IPアドレス一覧] で [追加] を選択し、3 で選択したサーバとは別のサーバのIPアドレスを設定します。[OK] をクリックし、[次へ] をクリックします。
[回復動作] 画面が表示されます。[回復動作] に [最終動作のみ実行]、[回復対象] に [LocalServer]、[最終動作] に [何もしない] を設定します。
[完了] をクリックして設定を終了します。
次にもう一方のサーバでも、同様の監視リソースを作成します。[モニタリソース一覧] で [追加] をクリックします。
[タイプ] ボックスでモニタリソースのタイプ (IP監視) を選択し、[名前] ボックスに監視リソース名 (ipw2) を入力します。[次へ] をクリックします。
[監視(共通)] 画面が表示されます。[監視タイミング] が [常時] であることを確認します。[監視を行うサーバを選択する] で起動可能なサーバをひとつ選択し追加します。[OK] をクリックし、[次へ] をクリックします。 [監視(固有)] 画面が表示されます。[共通] タブの [IPアドレス一覧] で [追加] を選択し、9 で選択したサーバとは別のサーバのIPアドレスを設定します。[OK] をクリックし、[次へ] をクリックします。 [回復動作] 画面が表示されます。[回復動作] に [最終動作のみ実行]、[回復対象] に [LocalServer]、[最終動作] に [何もしない] を設定します。
[完了] をクリックして設定を終了します。
マルチターゲット監視リソース
Microsoft AzureのService Management APIへの通信を監視するカスタム監視リソースと、仮想マシンで構成されたクラスタ間のIP監視リソースの両方の状態を確認するマルチターゲット監視リソースを作成します。両方の監視リソースの状態が異常となった際に、NP解決用の処理を記載したスクリプトを実行します。マルチターゲット監視リソースの詳細は 『リファレンスガイド』-「マルチターゲット監視リソースを理解する」を参照してください。
[モニタリソース一覧] で [追加] をクリックします。
[タイプ] ボックスでモニタリソースのタイプ (マルチターゲット監視) を選択し、[名前] ボックスに監視リソース名 (mtw1) を入力します。[次へ] をクリックします。
[監視(共通)] 画面が表示されます。[監視タイミング] が [常時] であることを確認し、[次へ] をクリックします。
[監視(固有)] 画面が表示されます。利用可能なモニタリソース一覧から [追加] を選択し、Service Management APIへの疎通確認用カスタム監視リソース、両サーバに設定したそれぞれのIP監視リソースの3つの監視リソースを追加します(genw1、ipw1、ipw2)。[次へ] をクリックします。
[回復動作] 画面が表示されます。[回復動作] に [最終動作のみ実行]、[最終動作前にスクリプトを実行する]をチェック、[回復対象] に [LocalServer]、[最終動作] に [何もしない] を設定します。[スクリプト設定] をクリックし、マルチターゲット監視リソースが異常検出時に実行するスクリプトを作成します。
スクリプトの編集ダイアログが表示されます。[この製品で作成したスクリプト] をチェックし、スクリプトを [編集] します。作成するスクリプトのサンプルは以下のとおりです。
ロードバランサーの負荷分散規則 - バックエンドポート
ロードバランサーの負荷分散規則 - ポート
ロードバランサーのフロントエンドIP(パブリックIPアドレス)
rem ******************** rem Check Active Node rem ******************** <CLUSTERPROインストールパス>\bin\clpazure_port_checker -h 127.0.0.1 -p <ロードバランサーの負荷分散規則 - バックエンドポート> IF NOT "%ERRORLEVEL%" == "0" ( GOTO CLUSTER_SHUTDOWN ) rem ******************** rem Check DNS rem ******************** <CLUSTERPROインストールパス>\bin\clpazure_port_checker -h <ロードバランサーのフロントエンドIP(パブリックIPアドレス)> -p <ロードバランサーの負荷分散規則 - ポート> IF "%ERRORLEVEL%" == "0" ( GOTO EXIT ) rem ******************** rem Cluster Shutdown rem ******************** :CLUSTER_SHUTDOWN clpdown rem ******************** rem EXIT rem ******************** :EXIT EXIT 0[タイムアウト] は clpazure_port_checker のタイムアウト値(5秒固定)より長く設定します。上記のサンプルスクリプトでは clpazure_port_checker を2回実行するため、10秒より大きな値を推奨します。[OK] をクリックします。
[完了] をクリックして設定を終了します。
クラスタプロパティの設定
クラスタプロパティの詳細は『リファレンスガイド』 -「クラスタプロパティ」を参照してください。
クラスタプロパティ
Microsoft Azure と CLUSTERPRO の連携用に、クラスタプロパティ内の設定を以下のように設定します。
Cluster WebUI から設定モードへ移動し、クラスタ名のプロパティアイコンをクリックします。
[タイムアウト] タブを選択します。ハートビートの[タイムアウト]に以下の 「A + B + C」の結果を設定します。
A :NP 解決用のマルチターゲット監視リソースで監視している監視リソースの[インターバル] × ([リトライ回数] + 1)
※3つある監視リソースのうち上記計算式の結果が大きい方を選択してください。
B :マルチターゲット監視リソースの [インターバル] × ([リトライ回数] + 1)
C :30秒(マルチターゲット監視リソースでの異常検出前にハートビートがタイムアウトしないようにするための猶予時間。適宜変更可能)
注釈
ハートビートのタイムアウト値が、NP 解決用のモニタで異常を検出する時間より短い場合、NP 解決処理が動作する前にハートビートのタイムアウトを検出します。この場合、待機サーバでサービスが起動され、クラスタ内でサービスの二重起動が発生する可能性があります。
[OK] をクリックします。
設定の反映とクラスタの起動
Cluster WebUI の設定モード から、[設定の反映] をクリックします。[設定を反映しますか。] というポップアップメッセージが表示されますので、[OK] をクリックします。アップロードに成功すると、[反映に成功しました。] のメッセージが表示されますので、[OK] をクリックします。アップロードに失敗した場合は、表示されるメッセージに従って操作を行ってください。Cluster WebUI の ツールバーのドロップダウンメニューで [操作モード] を選択して、操作モードに切り替えます。
Cluster WebUI の[ステータス] タブから [クラスタ開始] をクリックし、確認画面で [開始] をクリックします。
詳細は『インストール&設定ガイド』-「クラスタを生成するには」を参照してください。
5.5. 動作確認¶
構築した環境が正常に動作するかを、監視異常を発生させフェイルオーバグループがフェイルオーバすることにより確認します。既にクラスタが正常に起動している状態からの確認手順は以下のとおりです。
フェイルオーバグループ(failover1)が、現用系ノードのnode-1で起動します。Cluster WebUI [ステータス]タブにおいてfailover1がnode-1で[起動済]になっていることを確認します。
Cluster WebUIのプルダウンより[操作モード]から[検証モード]に変更します。
Cluster WebUI [ステータス]タブにおいてazureppw1の [擬似障害発生]アイコンを選択します。
Azure プローブポートリソース(azurepp1)が3回再活性後に、フェイルオーバグループ(failover1)が異常になり、ノードnode-2へフェイルオーバします。Cluster WebUI [ステータス]タブにおいてfailover1がnode-2で[起動済]になっていることを確認します。また、AzureロードバランサーのフロントエンドIP、ポートに対してフェイルオーバ後も正常にアクセスできることを確認します。以上で、擬似障害の場合におけるフェイルオーバの動作確認は完了です。その他の障害発生時の動作確認については適宜実施してください。
6. 構築手順(内部ロードバランサーを使用したHAクラスタの場合)¶
6.1. 構築例について¶
本書では、Microsoft Azure において、CLUSTERPRO を使用した2ノードでの片方向スタンバイクラスタの構築手順を紹介します。本手順は、node-1 を現用系サーバとしたミラーディスク型の構成を対象としています。
以下の表は既定値が存在しないパラメータ、および既定値から変更したパラメータについて記載しています。
Microsoft Azureの設定(node-1、node-2で共通の設定)
設定項目
設定値
リソース グループの設定
名前
TestGroup1
リージョン
(アジア太平洋)東日本
仮想ネットワークの設定
名前
Vnet1
アドレス空間
10.5.0.0/24
サブネット名
Vnet1-1
サブネットアドレス範囲
10.5.0.0/24
リソース グループ名
TestGroup1
場所
(アジア太平洋)東日本
ロードバランサーの設定
名前
TestLoadBalancer
種類
内部
仮想ネットワーク
Vnet1
サブネット
Vnet1-1
IPアドレスの割り当て
静的
プライベートIPアドレス
10.5.0.200
リソース グループ
TestGroup1
地域
(アジア太平洋)東日本
バックエンドプール - 名前
TestBackendPool
関連付け先
可用性セット
ターゲット仮想マシン
node-1
node-2
ネットワークIP 構成
10.5.0.120
10.5.0.121
正常性プローブ - 名前
TestHealthProbe
正常性プローブ - ポート
26001
負荷分散規則 - 名前
TestLoadBalancingRule
負荷分散規則 - ポート
80(業務を提供しているポート番号)
負荷分散規則 - バックエンドポート
8080(業務を提供しているポート番号)
Microsoft Azureの設定(node-1、node-2でそれぞれ設定)
設定項目
設定値
node-1
node-2
仮想マシンの設定
ディスクの種類
Standard HDD
Standard HDD
ユーザー名
testlogin
testlogin
パスワード
PassWord_123
PassWord_123
リソース グループ名
TestGroup1
TestGroup1
地域
(アジア太平洋)東日本
(アジア太平洋)東日本
ネットワーク セキュリティ グループの設定
名前
node-1-nsg
node-2-nsg
可用性セットの設定
名前
AvailabilitySet-1
AvailabilitySet-1
更新ドメイン
5
5
障害ドメイン
2
2
診断ストレージアカウントの設定
名前
自動生成
自動生成
パフォーマンス
Standard
Standard
レプリケーション
ローカル冗長ストレージ(LRS)
ローカル冗長ストレージ(LRS)
IP構成の設定
IPアドレス
10.5.0.120
10.5.0.121
ディスクの設定
名前
node-1_DataDisk_0
node-2_DataDisk_0
ソースの種類
なし(空のディスク)
なし(空のディスク)
アカウントの種類
Standard HDD
Standard HDD
サイズ
20
20
CLUSTERPROの設定(クラスタプロパティ)
設定項目
設定値
node1
node2
クラスタ名
Cluster1
Cluster1
サーバ名
node1
node2
NP解決タブ - 種別
Ping
Ping
NP解決タブ - ターゲット
10.5.0.5
10.5.0.5
NP解決タブ - [サーバ] 列
使用する
使用する
CLUSTERPROの設定(フェイルオーバグループ)
リソース名
設定項目
設定値
ミラーディスクリソース
リソース名
md
詳細タブ - データパーティションのドライブ文字
G:
詳細タブ - クラスタパーティションのドライブ文字
F:
Azure プローブポートリソース
リソース名
azurepp1
プローブポート
26001(正常性プローブ - ポートで指定した値)
スクリプトリソース(DSRを使用する場合)
リソース名
script1
CLUSTERPROの設定(監視リソース)
監視リソース名
設定項目
設定値
ミラーディスク監視リソース
監視リソース名
mdw1
Azure プローブポート監視リソース
監視リソース名
azureppw1
回復対象
azurepp1
Azure ロードバランス監視リソース
監視リソース名
azurelbw1
回復対象
azurepp1
6.2. Microsoft Azureの設定¶
Microsoft Azure ポータル(https://portal.azure.com/)にログインし、 6.1. 構築例について を参考に以下の設定を行います。
リソースグループの作成
リソースを管理するリソースグループを作成します。
仮想ネットワークの作成
仮想ネットワークを作成します。
仮想マシンの作成
クラスタを構成する仮想マシンの数だけ作成します。
プライベートIPアドレスの設定
IP アドレスは初期設定では動的割り当てとなっているため、静的割り当てに変更します。※ネットワークインターフェイスのIP構成から割り当てを変更します。※変更後は新しいプライベートIP アドレスを利用できるようにするために、仮想マシンが自動的に再起動されます。ロードバランサーの作成
ロードバランサーを作成します。詳細は以下のWebサイトを参照してください。
- Load Balancer のドキュメント:
※ ロードバランサーの種類は[内部]を選択し作成します。※ デプロイには数分掛かります。仮想マシンをバックエンドプールに紐付けます。
正常性プローブを設定します。
負荷分散規則を設定します。
[ポート]、[バックエンドポート]を設定し、[OK]を選択します。DSRを使用する場合は、[ポート]と[バックエンドポート]に同一のポート番号を設定、[フローティングIP(Direct Server Return)]を有効に設定し、[OK]を選択します。その際指定するポート番号は、業務を提供するアプリケーションへの接続に使用するポート番号を指定します(例.80)。DSR構成を作成する場合は以下の CLUSTERPRO オフィシャルブログを参照してください。
6.3. インスタンスの設定¶
以下の手順で設定します。OSの日本語化が必要な場合、以下を参照してください。
ミラーディスクの準備
ミラーディスクリソース用のパーティションを設定します。ミラーディスクリソース用のパーティションについては、『インストール&設定ガイド』 -「システム構成を決定する」-「ハードウェア構成後の設定」-「2. ミラー用パーティションを設定する (ミラーディスク使用時は必須)」を参照してください。DSRを使用する場合、クラスタを構成する各ノードにおいてループバックアダプタを追加します。DSR構成を作成する場合は以下の CLUSTERPRO オフィシャルブログを参照してください。OS 起動時間の調整、ネットワーク設定の確認、ファイアウォールの設定を確認、サーバの時刻を同期、パワーセービング機能をオフ
各手順は『インストール&設定ガイド』-「システム構成を決定する」-「ハードウェア構成後の設定」を参照してください。
CLUSTERPROのインストール
インストール手順は『インストール&設定ガイド』を参照してください。インストール完了後、OSの再起動を行ってください。CLUSTERPROのライセンスを登録
ライセンス登録手順は『インストール&設定ガイド』を参照してください。
6.4. CLUSTERPROの設定¶
Cluster WebUIのセットアップ、および接続方法は『インストール&設定ガイド』-「クラスタ構成情報を作成する」を参照してください。
以下のリソース/監視リソースを追加する手順を記述します。
ミラーディスクリソース
Azure プローブポートリソース
Azure プローブポート監視リソース
Azure ロードバランス監視リソース
PINGネットワークパーティション解決リソース(NP解決用)
上記以外の設定は、『インストール&設定ガイド』、『リファレンスガイド』を参照してください。
クラスタの作成
最初に、クラスタ生成ウィザードを開始し、クラスタを構築します。
クラスタの構築
Cluster WebUI にアクセスし、[クラスタ生成ウィザード] をクリックします。
[クラスタ生成ウィザード]画面の[クラスタ] 画面が表示されます。[クラスタ名] に任意のクラスタ名を入力します。[言語] を適切に選択します。[次へ] をクリックします。
[基本設定] 画面が表示されます。Cluster WebUI に接続したインスタンスがマスタサーバとして登録済みの状態で表示されます。[追加] をクリックし、残りのインスタンスを追加します(インスタンスのPrivate IP アドレスを指定します)。[次へ] をクリックします。
[インタコネクト] 画面が表示されます。インタコネクトのために使用するIPアドレス(各インスタンスのPrivate IP アドレス)を指定します。また、後で作成するミラーディスクリソースの通信経路として [MDC] に mdc1 を選択します。[次へ] をクリックします。
[NP解決] 画面が表示されます。PING方式のNP解決を行う場合、[追加] をクリックして [NP 解決一覧] に行を追加します。[種別] 列のセルをクリックし、[Ping] を選択します。ターゲット列のセルをクリックして Ping を送信する対象となる機器のIPアドレスを設定します。IPアドレスは、Microsoft Azure の仮想ネットワーク内部に存在するクラスタサーバ以外のサーバを設定して下さい。各サーバ列のセルをクリックして [使用する] [使用しない] を設定します。[次へ] をクリックします。
グループリソースの追加
グループの定義
フェイルオーバグループを作成します。
[グループ一覧] 画面が表示されます。
[追加]をクリックします。
[グループの定義] 画面が表示されます。[名前] にフェイルオーバグループ名(failover1)を設定します。[次へ] をクリックします。
[起動可能サーバ] 画面が表示されます。何も指定せず [次へ] をクリックします。 [グループ属性] 画面が表示されます。何も指定せず [次へ] をクリックします。 [グループリソース一覧] 画面が表示されます。以降の手順で、この画面でグループリソースを追加していきます。
ミラーディスクリソース
ミラーディスクリソースを作成します。詳細は 『リファレンスガイド』-「ミラーディスクリソースを理解する」を参照してください。
[グループリソース一覧] で [追加] をクリックします。
[グループのリソース定義 | failover1] 画面が開きます。[タイプ] ボックスでグループリソースのタイプ(ミラーディスクリソース) を選択し、[名前] ボックスにグループ名 (md) を入力します。[次へ] をクリックします。
[依存関係] 画面が表示されます。何も指定せず [次へ] をクリックします。[復旧動作] 画面が表示されます。[次へ] をクリックします。
[詳細] 画面が表示されます。[起動可能サーバ]で[名前]列中のサーバ名を選択し[追加]をクリックします。
[パーティションの選択]ダイアログボックスが表示されます。[接続]をクリックし、「5. 仮想マシンの設定 」で作成したデータパーティションと、クラスタパーティションを選択し、[OK]をクリックします。
node-1について5と6を設定、次にnode-2について5と6を設定し、[完了]をクリックします。
Azure プローブポートリソース
Microsoft Azure 上で CLUSTERPRO を利用する場合、業務が稼働するノードの特定のポートでロードバランサーからの死活監視を待ち受ける仕組みを提供します。Azure プローブポートリソースの詳細は 『リファレンスガイド』-「Azure プローブポートリソースを理解する」を参照してください。
[グループリソース一覧] で [追加] をクリックします。
[グループのリソース定義 | failover1] 画面が開きます。[タイプ] ボックスでグループリソースのタイプ (Azure プローブポートリソース) を選択して、[名前] ボックスにグループ名 (azurepp1) を入力します。[次へ] をクリックします。
[依存関係] 画面が表示されます。何も指定せず [次へ] をクリックします。
[復旧動作] 画面が表示されます。[次へ] をクリックします。
[プローブポート] にロードバランサーの設定(正常性プローブの設定)時に [ポート] として指定した値を入力します。
[完了] をクリックします。
スクリプトリソース(DSRを使用する場合)
スクリプトリソースを追加することにより、ロードバランサーの切り替えに合わせて、ループバックアダプタにフロントエンドIPアドレスを追加/削除する仕組みを提供します。スクリプトリソースの詳細は 『リファレンスガイド』-「スクリプトリソースを理解する」を参照してください。
[グループリソース一覧] で [追加] をクリックします。
[グループのリソース定義 | failover1] 画面が開きます。[タイプ] ボックスでグループリソースのタイプ (スクリプトリソース) を選択して、[名前] ボックスにグループ名 (script1) を入力します。
[次へ] をクリックします。
[依存関係] 画面が表示されます。何も指定せず [次へ] をクリックします。
[復旧動作] 画面が表示されます。[次へ] をクリックします。
start.bat、stop.bat を選択し、[編集] をクリックします。スクリプトはCLUSTERPROオフィシャルブログ(https://jpn.nec.com/clusterpro/blog/20181031.html)を参考に設定してください。CLUSTERPROオフィシャルブログに掲載のスクリプトはサンプルです。環境に合わせてカスタマイズしてください。
[完了] をクリックします。
監視リソースの追加
Azure プローブポート監視リソース
Microsoft Azure プローブポートリソースが起動しているノードに対して、死活監視のためのポートの監視機構を提供します。Azure プローブポート監視リソースの詳細は 『リファレンスガイド』-「Azure プローブポート監視リソースを理解する」を参照してください。Azure プローブポートリソースを1つ追加すると、Azure プローブポート監視リソースが1つ自動的に作成されます。Azure ロードバランス監視リソース
Microsoft Azure プローブポートリソースが起動していないノードに対して、プローブポートと同じポート番号が開放されていないかの監視機構を提供します。Azure ロードバランス監視リソースの詳細は 『リファレンスガイド』-「Azure ロードバランス監視リソースを理解する」を参照してください。Azure プローブポートリソースを1つ追加すると、Azure ロードバランス監視リソースが1つ自動的に作成されます。
設定の反映とクラスタの起動
Cluster WebUI の設定モード から、[設定の反映] をクリックします。[設定を反映しますか。] というポップアップメッセージが表示されますので、[OK] をクリックします。アップロードに成功すると、[反映に成功しました。] のメッセージが表示されますので、[OK] をクリックします。アップロードに失敗した場合は、表示されるメッセージに従って操作を行ってください。Cluster WebUI の ツールバーのドロップダウンメニューで [操作モード] を選択して、操作モードに切り替えます。
Cluster WebUI の[ステータス] タブから [クラスタ開始] をクリックし、確認画面で [開始] をクリックします。
詳細は『インストール&設定ガイド』-「クラスタを生成するには」を参照してください。
6.5. 動作確認¶
構築した環境が正常に動作するかを、監視異常(擬似)を発生させフェイルオーバグループがフェイルオーバすることにより確認します。既にクラスタが正常に起動している状態からの確認手順は以下のとおりです。
フェイルオーバグループ(failover1)が、現用系ノードのnode-1で起動します。Cluster WebUI [ステータス]タブにおいてfailover1がnode-1で[起動済]になっていることを確認します。DSRを使用する場合は、パケットキャプチャを実施し、クライアントのIPアドレスとロードバランサーのフロントエンドIPアドレスで通信が行われていることもあわせて確認します。Cluster WebUIのプルダウンより[操作モード]から[検証モード]に変更します。
Cluster WebUI [ステータス]タブにおいてazureppw1の [擬似障害発生]アイコンを選択します。
Azure プローブポートリソース(azurepp1)が3回再活性後に、フェイルオーバグループ(failover1)が異常になり、ノードnode-2へフェイルオーバします。Cluster WebUI [ステータス]タブにおいてfailover1がnode-2で[起動済]になっていることを確認します。また、AzureロードバランサーのフロントエンドIP、ポートに対してフェイルオーバ後も正常にアクセスできることを確認します。DSRを使用する場合は、パケットキャプチャを実施し、クライアントのIPアドレスとロードバランサーのフロントエンドIPアドレスで通信が行われていることもあわせて確認します。以上で、擬似障害の場合におけるフェイルオーバの動作確認は完了です。その他の障害発生時の動作確認については適宜実施してください。
DSR構成を作成する場合は以下の CLUSTERPRO オフィシャルブログを参照してください。
8. 注意事項¶
以下のマニュアルを参照してください。
『スタートアップガイド』-「注意制限事項」-「CLUSTERPRO インストール前」-「通信ポート番号」
Azure DNS を使用した HA クラスタの場合
ロードバランサーを使用した HA クラスタの場合
Azure のメモリ保持メンテナンス
Azure のメモリ保持メンテナンスにより、仮想マシンは最大で 30 秒間一時停止状態になる場合があります。メモリ保持メンテナンスについての詳細は以下を参照してください。[クラスタプロパティ]-[タイムアウト]タブ-[ハートビートタイムアウト]はメモリ保持メンテナンスを考慮した値を設定してください。また、[ハートビートタイムアウト]と併せて以下も調整してください。
OS の起動時間は[ハートビートタイムアウト]より長くなるよう調整してください。
以下のマニュアルも参照してください。
『スタートアップガイド』-「注意制限事項」-「CLUSTERPRO インストール前」-「OS 起動時間の調整」
Azure DNSを使用する場合の注意事項
CLUSTERPROがMicrosoft Azureと連携するためには、Microsoft Azureの組織アカウントが必要となります。組織アカウント以外のアカウントはAzure CLI実行時に対話形式でのログインが必要となるため使用できません。