Windows Server 2019 ベースでDHCPサーバの高可用性を設定していきます
Windows Server 2012 からDHCPサーバの高可用性設定が可能になりました
いわゆるHAクラスタです
従来ではDHCPクラスタリングは出来なくて、必要なIPアドレスの倍の数のネットワークを用意し2台で半分ずつのIPアドレスを提供する方式しかありませんでした
Windows Server 2012以降ではDHCPサーバの高可用性設定が可能になっているので基本的に可用性を向上させたい場合には後述の手順でクラスタ設定を進めていきます
構築イメージ
DHCPサーバ機能に内蔵されている高可用性設定を使います
したがって、Windows純正のフェールオーバークラスターとは大きく異なります
DHCP管理ツール内で完結できるので非常に簡単に構築できます
同じ管理ツールでできるという点は非常にいいですね
また、DHCPサーバ高可用性設定の特徴を簡単に記載すると
- スコープ毎にフェールオーバー設定が可能
- アクティブーアクティブの負荷分散構成 または アクティブースタンバイ構成のどちらも取ることが可能
- 負荷分散構成の場合は、割合(50%ー50%とか30%ー70%とか)指定が可能
- 両DHCPサーバが互いに監視を行い、ホストダウンとリンクダウン(NW不通)を検知して処理の引き継ぎを行うことが可能
といった感じです
シンプルなんで多くのオプション設定などはないですがその分わかりやすいです
早速構築していきましょう
DHCPサーバは以下の記事を参考に構築してください
DHCPサーバを2台用意します(Windows Server 2019を2台です)
スコープを作成したらどちらかのDHCPサーバから「フェールオーバーの構成」を選択します
フェールオーバーの構成ウィザードが開始されます
- 全てのスコープを可用性設定する(全て選択にチェックを入れる)
- 特定のスコープを可用性設定する
のどちらも取ることができます
さらに、フェールオーバー先のホスト(DHCPサーバの2台目となるパートナーサーバー)を指定します
「サーバの追加」をクリックします
ドメイン内で「承認済みDHCPサーバ(承認されたDHCPサーバー)」が自動的に表示されます
選択して「OK」をクリックします
「パートナーサーバー」が選択されいる状態で「次へ」をクリックします
リレーションシップを作成します
この設定を完了させればほぼ手順は完了です
モードを選択します
- 負荷分散: アクティブーアクティブ
- ホットスタンバイ: アクティブースタンバイ
多くは負荷分散を選択される方がいいのではないかと思います
サーバの停止時間はそう長くならないでしょうし、2台のサーバーを均等に活用した方が合理的です
仮想マシンでDHCPサーバを構成する場合は、ハイパーバイザー障害などでDHCPサーバが影響を受ける可能性もあるので負荷分散型にしておいたほうが様々な障害にたいおいう出来そうです
負荷分散を選択した場合は、負荷分散の割合を入力します
ホットスタンバイを選択した場合は、どちらのDHCPサーバがスタンバイ状態になるかを指定します
以下の図はホットスタンバイに設定した例です
「次へ」をクリックし「完了」をクリックすると設定は終了です
「閉じる」をクリックします
見た目上はそう大きな変更はないのですが、これでDHCPサーバのクラスタ設定が完了しました
動作試験
クラスタ設定なので正常動作はもちろん、異常時の動作を確認しておくことが必要です
動作確認を兼ねて、以下の単体試験を実施することを推奨します
- 起動: OS起動のみでDHCPクラスタが稼働すること
- 停止: OSシャットダウンのみでDHCPクラスタが停止できること
- NIC障害: チーミングNICの片系ダウンでDHCPサーバの切り替えが発生しないこと
- NIC障害: チーミングNIC障害でDHCPサーバの切り替えが発生するがDHCPサービスが継続すること
- ホスト障害: DHCPサーバ1台のOSシャットダウン時にDHCPサービスが継続すること
- ホスト障害: DHCPサーバ1台の強制停止(電源ボタン長押し的な)時にDHCPサービスが継続すること
- ホスト再起動: DHCPサーバ1台の再起動で特別な手順必要なくDHCPサービスが継続すること
単体試験を行っておけばOKです
試験にあたってはWindows 7/10あたりで
> ipconfig /release
> ipconfig /renew
コマンドを駆使しつつ行いましょう
関連記事です
WSUSサーバの構築手順についても説明しています
サーバ構築にあたってはHyper-Vを多用しています
検証環境構築にはHyper-Vが最適です
あるいはAzure上に作成するのも一つの手でしょう
無料の範囲内で結構色々できるもんです
日本語化には少々工夫が必要です
以上です