FortiGateでHAが組めない時の対処法

FortiGateはアメリカのフォーティネット社が製造しているUTMです。FortiGateには、機器2台で冗長構成を構築するHA(High Availability)という機能があります。
HAを使い機器を冗長化することで、機器1台に不具合が生じた時でも、もう1台が代わりとなって機能するため、運用中のネットワーク停止時間を短縮できます。
しかし、何かしらの問題で、このFortiGateのHA機能が使えないことがあります。
そこで今回はFortiGateでHA構成が組めない時に確認すべきポイントについて解説します。

HAの選出基準

今回は、FortiGateで以下の構成を組む想定で説明します。

  • 機器A Master機
  • 機器B Slave機

正常時は機器Aが動作します。機器Aに障害が発生した場合は、MasterとSlaveが切り替わり、機器Bが動作します。

FortiGateのHAのMaster機は、以下の基準で選ばれます。

  • 監視しているポートのアップ数が多い機器
  • HAタイマー(age time)が大きい機器
  • HAのプライオリティ値が大きい機器
  • シリアルナンバーが大きい機器

HA構成が組めない時の切り分け方法

HAの状態を確認する

HA構成が組めない場合、まずは問題の切り分けのためにHAの状態を確認します。
以下のコマンドで、HAステータスを確認できます。

get system ha status

以下は、コマンドを実行した結果です。

FGT-Master # get system ha status
HA Health Status: OK
(中略)
Configuration Status:
XXXXX(機器Aのシリアル番号): in-sync
XXXXX(機器Bのシリアル番号): in-sync
(中略)
Master: XXXX(機器Aのホスト名), XXXXX(機器Aのシリアル番号)
Slave : XXXX(機器Bのホスト名) , XXXXX(機器Bのシリアル番号)

ここからはこの実行結果で注目すべき点をまとめていきます。

まずはConfiguration Statusです。直訳すれば「構成の状況」になりますが、Configuration Statusは機器の構成状況を示しています。
Configuration Statusに「in-sync」と表示されている場合、正常にHA構成が組めています。
一方で「out-of-sync」と表示されている場合、2つの機器が同期中か、正常にHA構成が組めていない状態です。

次は「Master」と「Slave」に記載されている内容を見ていきましょう。
「Master: (ホスト名) (シリアル番号)」と表示されているのは現在動作している機器です。そして「Slave : (ホスト名) (シリアル番号)」と表示されているのがスタンバイ状態の機器を表しています。
上記例の場合は、機器AがMaster機、機器BがSlave機となっていることがわかります。

HAが正常に組めていない場合

小括すると、HAが正常に組めていない場合、HAステータスには以下の2つのステータスが表示されます。

Configuration Statusに「out-of-sync」と表示される

Configuration Statusに「out-of-sync」と表示された場合は、2台の同期が上手くいっておらず、HA構成が組めていません。

MasterとSlaveの組み合わせが想定と異なる

MasterとSlaveの組み合わせが想定と異なる場合も、HA構成が組めない原因につながります。たとえば機器AがMaster、機器BがSlaveとなる構成を想定しているのに、HAステータスには機器AがSlave、機器BがMasterと表示されている場合は、組み合わせに誤りがあります。

HA構成が組めない原因

以上の内容を踏まえ、ここからはHA構成が組めない原因を考えていきましょう。
上述のとおり、HA構成が組めない場合はHAステータスのConfiguration Statusに「out-of-sync」と表示されたり、MasterとSlaveに想定とは異なる機器が表示されたりしますが、これらの結果は以下のような要因から発生しています。

  • 構築中何らかの理由でHAが切り替わってしまった
  • 機器の型番やOSが異なる
  • 余計な設定が入っている
  • プライオリティ値に誤りがある
  • HAに対応するポートのケーブル接続がない
  • HA以外のポートのケーブル接続に誤りがある

以下で詳しく解説します。

構築中何らかの理由でHAが切り替わってしまった

構築中にケーブルを抜線してしまったなどの理由で、HAが切り替わってしまった可能性があります。
手動でHAの状態を切り替え、HA構成が組めるかどうか確認します。
Master 側で下記コマンドを実行すると、HAアップタイムがリセットされ、再度HAの選出が行われます。

diagnose sys ha reset-uptime

機器の型番やOSが異なる

HA構成の条件として、2台の機器型番、OSが一致している必要があります。

Slave機に余計な設定が入っている

Slave機に設定するのは、同期されない以下の設定です。

  • 機器のホスト名
  • HA関係の各種設定
  • 管理インターフェースの予約で設定したインタフェースの設定

Slave機はMaster機の設定が同期されるため、それ以外の設定は必要ありません。同期できない場合は、一度Slave機の設定を初期化した後、HA設定のみ入れて接続すると上手くいく可能性があります。

プライオリティ値に誤りがある

Master機とSlave機に設定したプライオリティ値に誤りがあると、HA構成が組めません。HAのプライオリティ値が高いものがMaster機になります。Master機側で200と設定している場合、Slave機はそれよりも小さい100と設定するなど調整が必要です。

HAに対応するポートのケーブル接続がない

HA構成を組むには、HAの設定に対応するポートが互いに接続されている必要があります。

HA以外のポートのケーブル接続に誤りがある

HAの選出には、監視しているポートのリンクアップ数も関係します。2台のリンクアップ数に違いがある場合、リンクアップしているポート数が多い機器がMaster機になります。HA構成を確認するだけであれば、HAに対応するケーブルだけを接続し、それ以外のケーブルを一度抜線した状態で切り分けるのもひとつの方法です。

関連

参考