【注意】FortiGate ver.7.4.5 からすべてのモデルでファームウェア自動更新機能がデフォルト有効になりました> Membership

FortiGate HA モードの Active-Passive と Active-Active の違いを解説します

目次

本記事について

本記事では、Fortinet 社のファイアウォール製品である FortiGate の HA (冗長構成) のモードについて、Active-Passive と Active-Active の違いを解説します。

一般的な企業ネットワークにおいて FortiGate で HA を構成する場合はほとんどのケースで Active-Passive モードで構成することになりますが、Active-Active モードとの違いや Active-Passive を採用する理由などを聞かれた場合に困る人も多いのではないかと思います。そのような人に参考になる情報を以下にまとめています。

動作確認環境

本記事の内容は以下の機器にて動作確認を行った結果に基づいて作成されています。

  • FortiGate-60F
    • バージョン 7.4.4

Active-Passive と Active-Active の動作の違い

以下の図では Active-Passive と Active-Active それぞれの場合の通信経路を示しています。

  • Active-Passive の場合
    • FortiGate HA クラスタに着信するすべてのサービス通信を Primary 機で着信します
    • 着信したサービス通信はそのまますべて Primary 機で処理されて Primary 機から発信されます
    • 正常時は Secondary 機はサービス通信に対して処理を行いません
    • Primary 機で障害が発生するとフェイルオーバが発生して Secondary 機が新 Primary 機に切り替わりサービス通信に対する処理を開始します
  • Active-Active の場合
    • FortiGate HA クラスタに着信するすべてのサービス通信を Primary 機で着信します
    • Primary 機は着信したサービス通信を HA クラスタ内の各機器に振り分けます
      • Secondary 機に振り分ける通信パケットについては Secondary 機のインターフェースの実 MAC アドレス宛に Primary 機から送信されます
      • Secondary 機は Primary 機から振り分けられたサービス通信を処理します
    • Primary 機で処理されたサービス通信は Primary 機から、Secondary 機で処理されたサービス通信については Secondary 機から直接宛先に発信されます
    • Primary 機に障害が発生した場合はフェイルオーバが発生し Secondary 機が新 Primary 機となります

HA の Active-Passive と Active-Active の比較

FortiGate の HA モードである Active-Passive と Active-Active を各観点で比較した結果を以下表にまとめます。

項目Active-PassiveActive-Active差異
構成の目的冗長化冗長化と負荷分散
各機器のロールPrimary/SecondaryPrimary/Secondary
サービス通信処理Primary のみPrimary で着信後クラスタ内で振り分け
設計の難易度比較的容易比較的難しい
※負荷分散対象通信や負荷分散メソッドの考慮等
設定方法基本的な設定方法は同じだが Active-Active では追加的に考慮すべき設定項目有り
コンフィグ同期可否
セッション同期可否
仮想 MAC アドレスPrimary 機のみが仮想 MAC を持つ
相対的メリット設計・運用が容易スループットが向上する可能性がある
※主にプロキシベースのセキュリティプロファイル使用時
相対的デメリット負荷分散はされない運用・トラブルシュートの難易度が上がる
ネットワーク内のトラフィック量の増加
採用理由冗長化のみが目的
負荷のかかる機能は使わない
設計・運用コストを上げたくない
プロキシベースのセキュリティプロファイルを使用
設計・運用コストが上がっても負荷分散したい
Active-Passive ではリソースの問題が発生した
表:FortiGate HAモード比較

HA 基本設定項目の比較

以下は GUI の HA 設定画面ですが、GUI で設定できる基本項目については Active-Passive でも Active-Active でも全く同じです。

Active-Active での負荷分散対象と負荷分散メソッド

負荷分散については Active-Active モードを採用した場合に追加的に考慮が必要な内容になります。

負荷分散対象の通信と対象外通信

Active-Active モードでは負荷分散が行われますが、すべての通信が負荷分散されるわけではなく、特定の通信のみが負荷分散されます。

デフォルト設定では、以下タイプのプロキシベースのセキュリティプロファイルが適用される通信について負荷分散が行われます。

負荷分散対象セキュリティプロファイル
  • アンチウイルス(プロキシベース)
  • Webフィルタ(プロキシベース)
  • Eメールフィルタ(プロキシベース)
  • データ漏洩対策(DLP)(プロキシベース)
    • HTTP、FTP、IMAP、IMAPS、POP3、POP3S、SMTP、SMTPS、IM、NNTP セッションが対象

一方、以下プロファイル・プロトコルについては負荷分散対象外であり常に Primary 機で処理されます。

負荷分散対象外のプロファイル・プロトコル
  • ICMP、マルチキャスト、およびブロードキャスト 
  • IPS
  • アプリケーションコントロール
  • アンチウイルス(フローベース)
  • Webフィルタ(フローベース)
  • Eメールフィルタ(フローベース)
  • データ漏洩対策(DLP)(フローベース)
  • VoIP
  • IM
  • P2P
  • IPsec VPN
  • SSL VPN
  • HTTP multiplexing
  • SSL オフロード
  • WAN 最適化
  • Explicit web proxy
  • WCCP

また、オプションですべての TCP セッションを負荷分散させることもできます。これを有効化するための設定コマンドは以下です。デフォルトでは無効になっています。

config system ha
    set load-balance-all enable
end

すべての TCP セッションを負荷分散するとオーバーヘッドが増加し、パフォーマンスが低下する可能性があるため注意してください。

ソフトウェアスイッチについては Active-Active HA による負荷分散がサポートされていないため注意してください。

SSL ディープインスペクションが有効になっている HTTPS セッションについては負荷分散が行われないため注意してください。

負荷分散メソッド

負荷分散メソッドは負荷分散対象のセッションを各機器に割り振る際にどの機器に割り振るかを決定するためのルールです。FortiGate では「負荷分散スケジュール」と呼ばれています。

負荷分散スケジュールの設定コマンドは以下です。

config system ha
    set schedule <値>
end

設定値としては以下があります。デフォルトはround-robin(ラウンドロビン方式)です。

  • none
    • 負荷分散しません
  • leastconnection
    • コネクション数が最も少ない機器に割り振ります
  • round-robin
    • 一定の順番で割り振ります(ラウンドロビン方式)
  • weight-round-robin
    • 機器ごとの重みづけに基づいて一定の順番で割り振ります
  • random
    • ランダムに割り振ります
  • ip
    • 送信元IPと宛先IPに基づいて割り振ります
  • ipport
    • 送信元IP・ポートと宛先IP・ポートに基づいて割り振ります

Active-Active モードのメリットとは

Active-Active モードでは HA クラスタ内で負荷分散を行うため、2台構成の HA の場合シングル構成の2倍のトラフィックを処理できるようになると考えるかもしれませんが、これは間違いです。

上で記載している通り負荷分散される通信は一部に限られることと、Active-Active モードでも HA クラスタへのすべての通信はまず Primary 機で着信して Primary 機がクラスタメンバにセッションを割り振るという処理を行う必要があり Primary 機の処理能力がボトルネックになる可能性があるということがあるためです。

Active-Active モードはプロキシベースのセキュリティプロファイルを使用している場合にメリットがあるといわれています。

プロキシベースのセキュリティプロファイルの処理は CPU と メモリを多く消費するためスループット低下の原因になりますが、Active-Active モードで負荷分散をすることでその負荷の高い処理をクラスタメンバーに分散させることができます。これによりスループットが向上する可能性があるといわれています。

ただし「可能性がある」という表現のため実際の効果を確認するためには検証が必要かもしれません。

一般的な企業ネットワークであれば複雑性が増す割にあまりメリットの無い Active-Active モードを採用するよりも対象ネットワークの状況に合わせて適切なスペックの機種を選定して HA は Active-Passive モードとした方が運用コストまで含めると良いのではないかという気がします。

参考資料

あわせて読みたい
あわせて読みたい
Does Active-Active HA supports more users? Hi Guys, My company bought a Fortigate 80F a few months back. At that time we had around 85 users and Fortigate technical person suggested that it will handle u...

【おすすめ】FortiGate の設計構築中なら以下の記事も役立つかもです

Amazon アフィリエイトリンク

以下は Amazon アフィリエイトリンクです。インフラエンジニアにそこそこおすすめなアイテムです。

note メンバーシップへの参加もお待ちしています!

note(ノート)
陰の構築者たちのメンバーシップ|シェイド@陰の構築者 ネットワーク設計構築をする人に役立つメンバーシップです。 独自ブログ(https://shadowgarden.org/)にてネットワークエンジニア向け情報を発信しており、その活動を応援...

【アフィリエイト】おすすめ WordPress テーマ【SWELL

当サイトでは WordPress テーマとして SWELL を使用しています。以前は無料・高機能テーマとして知られる Cocoon を使用していて Cocoon も使いやすかったのですが、SWELL を使い始めてからは SWELL のほうが圧倒的に使いやすいなと思いました。そして何より読み込み速度が速い。SWELL を使い始めてから、過去の Cocoon のブログを見直したときに「あれ、こんなに表示遅かったっけ?」という感覚になりました。

また SWELL はデフォルトでもオシャレなデザインですが柔軟にカスタマイズすることもでき個性のあるサイトを作成できます。さらにブログパーツや広告タグといった再利用可能なブログの「部品」も作成することができ、ブログ作成効率も高いです。

技術ブログやアフィリエイト等での収益化を見据えたブログの作成に SWELL は最適です。初見では価格が高いなと思うと思いますが、私としては SWELL を採用して良かったしそれ以上の価値があると感じています。
ブログの新設やテーマ変更を考えている人は一度 SWELL を検討してみてください。
以下の画像リンクから詳細な情報を確認できます。

レンタルサーバーを探している人には安定性に定評のあるエックスサーバーをお勧めします。
当サイトもエックスサーバーを使用しています。WordPress のインストールも簡単にできます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次