サイト内の現在位置を表示しています。

オンプレミス環境における接続先切り替え方式をまとめました

CLUSTERPRO オフィシャルブログ ~クラブロ~

はじめに

CLUSTERPROはハイアベイラビリティ(高可用性)を実現するためのソフトウェアであり、業務システムを冗長化させ障害発生時に業務が稼働するサーバーを自動で切り替えます。この時、クライアントは接続先のサーバーを自動では切り替えてくれないため、業務の稼働しているサーバーが切り替わったことをクライアントが意識しなくても済むような仕組みが必要です。CLUSTERPROは、接続先切り替え機能によりサーバーの切り替わりを意識せずにアクセスできる方法を提供します。

本記事では、オンプレミス環境におけるHAクラスター構成の接続先切り替え方式の特徴や選択方法をまとめましたのでご紹介します。

この記事の内容

1. オンプレミス環境における接続先切り替え方式

1.1 接続先切り替え方式の一覧

CLUSTERPROは業務が稼働するサーバーが障害などで切り替わった際に、クライアントがサーバーの切り替わりを意識せず業務にアクセスできるように、接続先を切り替える仕組みを用意しています。具体的には、業務が稼働しているサーバーに仮想IPアドレスや仮想ホスト名の付与を行い、クライアントは仮想IPアドレスや仮想ホスト名に対してアクセスを行うことで、サーバーの切り替わりを意識せずに業務にアクセスすることが可能です。

オンプレミス環境におけるCLUSTERPROの接続先切り替え機能(グループリソース)と切り替え対象は以下となります。

グループリソース名 接続方式
フローティングIPリソース フローティングIPアドレス
仮想IPリソース 仮想IPアドレス
仮想コンピュータ名リソース 仮想コンピュータ名
ダイナミックDNSリソース 仮想ホスト名

1.2 接続先切り替え方式の選択方法

オンプレミス環境におけるHAクラスターで、CLUSTERPROが備えている接続先切り替え機能(グループリソース)のうち、どの機能が利用できるかは、クライアントがHAクラスターにアクセスする方法やHAクラスターを構成するサーバーの配置場所などによって異なります。

業務アプリケーションへどのようにアクセスするか?

  • クライアントからHAクラスターにIPアドレスでアクセスする
  • クライアントからHAクラスターにホスト名でアクセスする

HAクラスターを構成するサーバーをどのように配置するか?

  • 同一セグメント内にクラスターサーバーを配置する
  • 異なるセグメント間にクラスターサーバーを配置する

まとめると以下のようになります。

  IPアドレス ホスト名
同一セグメント内 フローティングIPリソース 仮想コンピュータ名リソース
ダイナミックDNSリソース
異なるセグメント間 仮想IPリソース ダイナミックDNSリソース

IPアドレスを使用して業務にアクセスする構成には2つの方式がありますが、基本的な考え方としては「フローティングIPアドレス」は近地(同一セグメント内)でHAクラスターを構築する場合に使用するIPアドレス、「仮想IPアドレス」は遠地(異なるセグメント間)でHAクラスターを構築する場合に使用するIPアドレスです。

名前を使用して業務にアクセスする構成にも2つの方式がありますが、仮想コンピュータ名リソースはNetBEUIのネットワークでNetBIOS名を扱うリソース、ダイナミックDNSリソースはTCP/IPのネットワークでホスト名を扱うリソースになります。本記事ではどちらもホスト名を使用して業務が稼働しているサーバーにアクセスする機能と表現します。

オンプレミス環境における接続先切り替え機能は、用意できるネットワーク環境によって、以下の使い分けを行います。

  • 同一セグメント内で仮想的なIPアドレスを利用する
    → フローティングIPリソース
  • ネットワークセグメントが異なり、ルーター間でRIPが到達可
    → 仮想IPリソース
  • 同一セグメント内、もしくは異なるセグメント間で仮想的なホスト名を利用する
    → ダイナミックDNSリソース

同一セグメント内でホスト名で接続する方法として、仮想コンピュータ名リソース、ダイナミックDNSリソースの両方が使用できますが、現在のコンピュータ同士の通信に使用されるネットワークプロトコルとしてはTCP/IPが主流であり、仮想コンピュータ名リソースが使用するNetBEUI(旧プロトコル)は利用されなくなってきていることなどから、DNSサーバーを用意可能な場合は、ダイナミックDNSリソースの利用を推奨しています。DNSサーバーが利用できない場合に、仮想コンピュータ名リソースを利用することをご検討ください。

CLUSTERPROの接続先切り替え機能(グループリソース)以外のものを利用して切り替える方法もあります。ホスト名で接続する方法として、接続元となるクライアント等のhostsファイルにホスト名とフローティングIPアドレスを登録して利用する方法、クラスターサーバーにアクセスするクライアント全てのhostsファイルを書き換えるスクリプトをCLUSTERPROから実行することで接続先を切り替える方法もありますので、後ほど紹介します。

いずれの方式も利用できない環境では、DNSレコードやクライアントの接続先を手動で更新するなどの対応を検討する必要があります。

2. CLUSTERPROの接続先切り替え機能を使用したHAクラスター構成

各接続先切り替え機能を利用する際のHAクラスター構成例をご紹介します。
以下に各構成例の特徴をまとめておりますので、参照ください。

各接続先切り替え方式は、共有ディスク型やミラーディスク型、ハイブリッドディスク型などのHAクラスター構成と組み合わせて利用が可能です。

2.1 フローティングIPリソースを使用したHAクラスター構成

CLUSTERPROで管理する仮想的なIPアドレス(フローティングIP)を用いてクライアントからHAクラスターへ接続する構成です。同一セグメント内で、IPアドレスを引き継ぎます。フローティングIPには、クラスターサーバーと同一ネットワークのアドレスを設定します。
基本的には近地(同一セグメント内)でHAクラスターを構築する場合に使用されますが、遠く離れた場所にサーバーを設置する場合でも、VPNで同一セグメントのLANを構築することが可能であれば、フローティングIPを使用してIPアドレスを引き継ぐことも可能です。

接続先切り替えの仕組みにARPブロードキャストを送信して、スイッチ等のネットワーク機器のARPテーブルの情報を更新します。そのため、フローティングIPリソースを利用するためには、ARPパケットのブロードキャストが許可されたネットワークを用意する必要があります。

フローティングIPリソースの詳細は、以下を参照ください。

【参考】
  • CLUSTERPRO X 5.1 > Windows > リファレンスガイド
    → 第 3 章 グループリソースの詳細
     → 3.7 フローティングIP リソースを理解する

  • CLUSTERPRO X 5.1 > Linux > リファレンスガイド
    → 第 3 章 グループリソースの詳細
     → 3.8 フローティングIP リソースを理解する

2.2 仮想IPリソースを使用したHAクラスター構成

CLUSTERPROで管理する仮想的なIPアドレス(仮想IP)を用いてクライアントからHAクラスターへ接続する構成です。異なるセグメント間で、IPアドレスを引き継ぎます。仮想IPには、クラスターサーバーが所属するLANの、ネットワークアドレスの範囲外のアドレスを設定します。

接続先切り替えの仕組みにRIPパケットを送信して、ルーター等のネットワーク機器の経路情報を更新します。そのため、仮想IPリソースを利用するためには、WANの要件として、動的ルーティングに対応しており、RIPによる動的な経路変更が許可されている必要があります。

仮想IPリソースの詳細は、以下を参照ください。

【参考】
  • CLUSTERPRO X 5.1 > Windows > リファレンスガイド
    → 第 3 章 グループリソースの詳細
     → 3.15 仮想IP リソースを理解する

  • CLUSTERPRO X 5.1 > Linux > リファレンスガイド
    → 第 3 章 グループリソースの詳細
     → 3.9 仮想IP リソースを理解する

2.3 仮想コンピュータ名リソースを使用したHAクラスター構成

仮想コンピュータ名を用いてクライアントからHAクラスターへ接続する構成です。同一セグメント内で利用可能です。
CLUSTERPROのWindows版のみ利用可能なグループリソースで、Windowsマシンクライアントのみ、仮想コンピュータ名によるクラスターサーバーへの接続が可能です。

接続先切り替えの仕組みとして、クラスターにて仮想コンピュータ名が有効になった際にNetBIOS仮想コンピュータ名の登録を行うパケットを発行します。そのため、仮想コンピュータ名リソースを利用するためには、NetBIOS仮想コンピュータ名の登録を行うパケットをブロードキャストできるネットワークを用意する必要があります。

リモートLANから仮想コンピュータ名を使用してクラスターサーバーに接続するには、仮想コンピュータ名とフローティングIPアドレスとの関連付けを行い、クライアントのLMHOSTSファイルに仮想コンピュータ名とフローティングIPアドレスの組を記述します。また、仮想コンピュータ名とフローティングIPアドレスとの関連付けを行わない場合は、仮想コンピュータ名をDNSに動的登録する、もしくはWINSサーバーを設定する必要があります。

仮想コンピュータ名リソースの詳細は、以下を参照ください。

【参考】
  • CLUSTERPRO X 5.1 > Windows > リファレンスガイド
    → 第 3 章 グループリソースの詳細
     → 3.13 仮想コンピュータ名リソースを理解する

2.4 ダイナミックDNSリソースを使用したHAクラスター構成

仮想ホスト名(DNS名)を用いてクライアントからHAクラスターへ接続する構成です。同一セグメント内でも異なるセグメント間でも利用可能です。

接続先切り替え時には、CLUSTERPROがダイナミックDNSサーバーのDNSレコードを更新し、クライアントは切り替え先となる仮想ホスト名に対応するサーバーのIPアドレスをダイナミックDNSサーバーに問い合わせることで、同一ホスト名で業務が稼働しているサーバーへ接続可能です。

利用には事前にダイナミックDNSサーバーを構築する必要があります。Windows版でダイナミックDNSリソースを使用する場合、ダイナミックDNSサーバーはActive Directoryのみ利用可能です。Linux版でダイナミックDNSリソースを使用する場合は、認証あり方式/認証なし方式の2種類があり、認証あり方式ではBIND9を使って構築した ダイナミックDNSサーバーのみ利用可能で、認証なし方式を使う場合は、BIND9以外も利用可能です。

ダイナミックDNSリソースの詳細は、以下を参照ください。

【参考】
  • CLUSTERPRO X 5.1 > Windows > リファレンスガイド
    → 第 3 章 グループリソースの詳細
     → 3.14 ダイナミックDNS リソースを理解する

  • CLUSTERPRO X 5.1 > Linux > リファレンスガイド
    → 第 3 章 グループリソースの詳細
     → 3.13 ダイナミックDNS リソースを理解する

3.フローティングIPと組み合わせて仮想ホスト名による接続先切り替えを行うHAクラスター構成

同一セグメント内での利用に限定されますが、仮想コンピュータ名リソースやダイナミックDNSリソースを使用せず、フローティングIPリソースと組み合わせて、仮想ホスト名による接続先切り替えを実現する方法もあります。

3.1 hostsファイルを利用する場合

CLUSTERPROにフローティングIPリソースを登録しておき、接続元となるクライアント等のhostsファイルに仮想ホスト名とフローティングIPの組を設定して利用する方法です。接続元となるマシンが複数存在する場合は、全てのマシンのhostsファイルの設定を行う必要があります。仮想ホスト名に紐づくフローティングIPアドレスをCLUSTERPROが切り替えることにより、業務の稼働しているサーバーへの接続を実現します。

3.2 DNSサーバーを利用する場合

CLUSTERPROにフローティングIPリソースを登録しておき、DNSサーバーに固定で仮想ホスト名とフローティングIPの組のレコードを登録して利用する方法です。仮想ホスト名に紐づくフローティングIPアドレスをCLUSTERPROが切り替えることにより、業務の稼働しているサーバーへの接続を実現します。
DNSサーバーを用意できる環境で、セキュリティの制約等によりCLUSTERPROによるDNSサーバーの動的更新が難しい場合に検討します。

4.スクリプトを活用して仮想ホスト名による接続先切り替えを行うHAクラスター構成

4.1 hostsの書き換えにより接続先切り替えを行うHAクラスター構成

Windows環境において、hostsファイル書き換えにより接続先を切り替える方法です。
WinRMを使用して、HAクラスターにアクセスする全てのクライアントのhostsファイルをCLUSTERPROから書き換えることにより、HAクラスターへの接続先切り替えを実現します。CLUSTERPROが備えている4つの接続先切り替え機能(グループリソース)が利用できない場合に検討します。

まとめ

今回は、オンプレミス環境におけるHAクラスター構成の接続先切り替え方式の特徴や選択方法を紹介しました。接続先切り替え方式の選定だけでなく、事前にCLUSTERPROを導入する環境に適合しているかどうかについても、本記事を参考の上、導入をご検討ください。

本記事の構成をご検討の際は、CLUSTERPROのpopup試用版を用いて検証した後、ご提案・構築ください。

参考

CLUSTERPRO導入支援サービス(クラウドHAコンサル)ではオンプレミスやクラウド向けのHAクラスター構築支援サービスを行っております。HAクラスターの構築支援に関するご要望がありましたら、popup関連サービスの導入支援サービスの窓口までお問い合わせください。

お問い合わせ

本記事に関するお問い合わせは、popupお問い合わせ窓口までお問い合わせください。