CLUSTERPRO X 4.0 のインストール手順

CLUSTERPRO® X for Windows PPガイド (Oracle® Database)

※本記事は上記ドキュメントをベースに構成しています。

今回は CLUSTERPRO X の構築手順をご紹介します。

なお、以下の構成で進行していきます。

  • CLUSTERPRO X 4.0
  • 2ノード(Win2016)共有ディスク(iSCSI)構成
  • 片方向スタンバイ型(片系でのみアプリケーションを実行)
  • Oracle Database 12c Release2 をクラスタ化

※CLUSTERPRO がよくわからない場合は、以下の記事で概要を紹介しているので参照してください。

NEC CLUSTERPRO X とは。

CLUSTERPRO X の要件

インストールの前に、CLUSTERPRO X で Oracle をクラスタ化する際の要件を確認していきましょう。

仮想メモリ要件

【Windows x64 (64-bit)の仮想メモリ設定】

物理メモリが2GBから16GBの間の場合は、仮想メモリをRAMと同じサイズに設定します。 物理メモリが16GBを超える場合は、仮想メモリを16GBに設定します。

今回用意したサーバは物理メモリが32GBあるため、仮想メモリを16GBとして定義します。

仮想メモリ設定画面

ディスク要件

共有ディスク構成の場合、ノード間で共有するディスクが必要です。 必要なパーティションやディレクトリは、以下のとおりです。

ディスクハートビート用パーティションを確保します。要件は以下のとおりです。

  • 容量は17MB以上
  • ドライブ文字を各ノードで一致させる
  • ハートビート用パーティションはフォーマットしない(RAWパーティション)

 

ディスクリソース用切替パーティションを確保します。要件は以下のとおりです。

  • ドライブ文字を各ノードで一致させる
  • ディスクリソース用切替パーティションはNTFSでフォーマットする

「ディスクハートビート用パーティション」について

ネットワークパーティション対策としての共有ボリュームを確保する必要があります。

2ノード構成の場合、COM方式やPING方式でもネットワークパーティションを解決する事が可能ですが、CLUSTERPRO® X for Windows PPガイド (Oracle® Database)ではディスクハートビート用パーティションが「必要です」と記載されているためそれに従います。

なお、「ディスクハートビート用パーティション」と「ディスクリソース用切替パーティション」がそれぞれ"パーティション"となっているように、ストレージ側で1つの論理ボリュームを用意しそれをOS側でパーティショニングして構成しても問題ありません。それぞれに別の論理ボリュームを割り当てる必要はありません(勿論、論理ボリュームを分けても構いません)

NIC要件

必要なNICの数は最低2つです。

  • パブリックLAN用(必須)
  • インタコネクトLAN用(必須)

なお、今回は以下2つのNICも用意しています。

  • iSCSI用(必須ではありません)
  • 管理用(必須ではありません)

※ NIC優先度の注意点 フローティングIPと同一ネットワークに属するNICが複数存在する場合、フローティングIPを 作成するNICの優先度が高くなるように設定してください。

上記の注意書きがありますが、そもそもフローティングIPとして外に見せているNICとは別のNICに同一ネットワークのIPアドレスを割り振ることはあまりないと思います。

IPアドレス要件

各ノードにパブリックIPアドレスが1つ、インタコネクトIPアドレスが1つ、クラスター全体でフローティングIPアドレスが1つ必要です。

両ノード合わせて以下の静的IPアドレスが必要です。フローティングIPアドレス以外は、hostsファイルで名前解決しておきます。サーバーで設定しているホスト名とCLUSTERPROのサーバー名は一致する必要があります。ホスト名は小文字で設定して下さい。

  • パブリックIPアドレス ×2
  • インタコネクトIPアドレス ×2
  • フローティングIPアドレス ×1

「サーバーで設定しているホスト名とCLUSTERPROのサーバー名は一致する必要があります。」

上記は正直何を言っているのかわからないんですが(笑)

以下の様に解釈することとします。

サーバのホスト名とhostsのパブリックIPに対応するホスト名は同じにしてください。なお、hostsのホスト名は小文字にしてください。

なお、個人的にサーバはIPv6よりIPv4の優先度を上げる派なので、IPv4の優先度を上げておきます。

※IPv4の優先度の上げ方に興味がある方は以下の記事を参照してください。

IPv6 より IPv4 を優先する方法(無効化は Microsoft 的に非推奨)

※ホスト名とコンピュータ名の違いが分からない方は以下の記事を参照してください。

コンピュータ名とホスト名の違い

※サーバのホスト名とhostsのホスト名が異なる場合の動きが気になる方は以下の記事を参照してください。

hosts にサーバのホスト名と違うホスト名を設定するとどうなる?

本記事はマニュアルの例と同じIPアドレス、ホスト名を設定します。(ただし、iSCSI用のNICと管理用のNICに適当なIPアドレスを設定しています。)

hosts の例。サーバ1号機での設定。

ハードウェア構成後の手順

パーティションの作成

ハートビート用と切替パーティション用の2つのパーティションを作成します。

既に iSCSI で論理ボリュームを1つ作成し、Windows の iSCSI イニシエータで拾っている状況です。

本記事はマニュアルの例(上図)と同じドライブ文字を設定します。ディスクの初期化はボリュームサイズが2TB以下であればMBRでいいです。

こんな感じ

なお、2台目のサーバで共有パーティションのドライブ文字を設定する際、1台目のサーバを停止しておくのが億劫なので共有ディスクをオフラインにしたうえで iSCSI を切断し2台目の作業を行います。

1台目でパーティショニングやフォーマット済みなので、2台目ではいきなりこんな感じ

ただしドライブ文字は同じにならないことが多いので

同じにする

ファイアウォール設定の確認

ポートを確認するのが面倒なので、Windows ファイアウォールはオフにします。

ちなみに、

ポート番号一覧は、CLUSTERPRO X 4.0のインストール&設定ガイドをご確認ください。

上記のように記載されていますが、誤りです。ポート番号一覧はスタートアップガイドのP89に記載されているので必要であれば参照してください。

サーバの時刻同期

クラスターシステムでは、クラスター内の全てのサーバーの時刻を定期的に同期する運用を推奨します。 NTP等を利用して、サーバーが時刻同期を行うようにご設定ください。サーバーの時刻同期を行わない場合、Oracle Databaseで問題が発生する可能性があります。
※ 各サーバーの時刻が同期されていない場合、障害時に原因の解析に時間がかかることが あります。

してください。

OS起動時間を調整する

クラスタシステムを構成する各サーバに電源を投入してから、サーバのOSが起動するまでの時間を以下の2つより長くなるように設定する必要があります。

共有ディスクに電源を投入してから使用可能になるまでの時間

ストレージ起動前にサーバOSが起動するとディスクリソースの活性に失敗するため

ハートビートタイムアウト時間 ※既定値30秒

サーバ再起動でフェイルオーバを発生させたい場合に、フェイルオーバが発生しなくなるため

「 bcdedit 」コマンドを用いて、起動時間を調整してください。

※ OSが1つしかない場合の注意点 起動待ち時間を設定しても無視されることがあります。この場合、下記の手順でエントリを追加してください。2つ目のエントリは1つめのエントリのコピーで問題ありません。「bcdedit」コマンドの「/copy」オプションを用いて、コピーを追加してください。

※BIOSによっては起動時間を調整する項目があったりしますが、大抵の場合再起動では適用されないので "bcdedit" を使います。

例としてOSの起動時間を3分遅らせる方法を記載します。

OS起動時間を3分遅くする方法(OSが1つしかない場合)

  1. bcdedit /copy {current} /d "Windows Server 2016 (dummy)"
  2. bcdedit /set {bootmgr} timeout 180

「bcdedit /copy {current} /d "Windows Server 2016 (dummy)"」を実行します

コピーした Windows ブート ローダー が表示されていることがわかります

「bcdedit /timeout 180」を実行します。既定値の30から180に変わっていることがわかります

Windows 起動時に下図のような「Windows ブート マネージャー」が表示され、「強調表示された選択が自動的に起動されるまでの秒数:179」となっていることがわかります。これは勿論180からスタートしていましたが、キャプチャに失敗しただけです。このカウントが終了すると OS がブートします。

ちなみに「Windows ブート マネージャー」画面で何かキーを押してしまうと、処理が待ち状態に遷移してしまうため timeout で指定した時間が経過してもOSが起動しません。下図のように「強調表示された選択が自動的に起動されるまでの秒数」が消えていた場合、何かキーを入力してしまったと思ってください。

ネットワーク設定の確認

クラスター内のすべてのサーバーで、ipconfigコマンドやpingコマンドを使用して、 以下のネットワークリソースが正常に動作しているかどうかを確認します。

  • パブリックLAN (他のマシンとの通信用)
  • インタコネクト専用LAN (CLUSTERPROのサーバー間接続用)
  • ホスト名

※ 現時点で、フローティングIPや仮想IPの接続テストは不要です

確認してください。

パワーセービング機能をオフにする

  • 電源オプションのモニタの電源とハードディスクの電源設定を変更
  • 休止状態を無効化

CLUSTERPRO環境ではスタンバイやハイバネーションは使用できないため、それらの機能をオフにします

CLUSTERPRO X 4.0 for Windows インストール&設定ガイド

上記はなぜかCLUSTERPRO® X for Windows PPガイド (Oracle® Database)に記載がない項目ですが、設定しておいてください。

CLUSTERPRO Server のインストール

「setup.exe」を実行すると「ようこそ」画面が表示されます。「次へ」をクリックしてください。

「参照」をクリックし、インストール先のフォルダーを指定してください。デフォルトでも特に問題ないので「次へ」をクリックしてください。

「インストール」をクリックすると、ソフトウェアがインストールされます。インストール自体は5分もかからないですね。

インストール終了後は少しだけ初期設定があります。ポート番号は変更する必要が無いので「次へ」をクリックしてください。

共有ディスクとして使用する「SCSIコントローラ /FC HBS」を選択します。「フィルタリング」とは CLUSTERPRO で排他制御をするという意味です。下図にあるように、同じHBAは以下にアクセス制限の必要のないドライブがある場合はHBAをフィルタリングした後に対象ドライブを「フィルタリング解除」します。

論理ボリューム単位では制御できない!

パーティション単位では制御できるが、あくまで「フィルタリング解除」

今回はiSCSIでディスクをマウントしているため以下のような感じになります。

次にライセンス登録です。登録してください。

例えば評価版の場合はライセンスファイルが送られてくるので「ライセンスファイルから登録」を選択し、当該ライセンスファイルを選択します。

※ちなみに、CLUSTERPRO X 4.0 の評価用ライセンスはオフライン環境でも登録できます。

すると「ライセンスを登録しました。」となります。

次が少し分かり辛いですが、ライセンス登録後は「終了」をクリックしてください。

「CLUSTERPRO Server を正常にインストールしました。」となるので、任意のタイミングでサーバを再起動してください。

2台目へのインストール

2台目のサーバへも忘れずに CLUSTERPRO Server をインストールしてください。共有ディスクをフィルタリングした時点で同時アクセスは CLUSTERPRO が防いでくれるので、サーバが2台とも起動していても問題ありません。

次回はインストール後のクラスタ構築とフェイルオーバーグループの作成をやっていきます。

CLUSTERPRO X 4.0 フェイルオーバーグループの構築方法

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)