Azure

Azure Load Balancerと Azure Application Gateway のアクセスログを比較してみる

はじめに

くどうです。

Azureにはアクセスを負荷分散する方法として、Load BalancerとApplication Gatewayが用意されています。
しかし、それぞれレイヤー4とレイヤー7で挙動が異なりHTTPdへのアクセスログが異なります。
そこで、今回はアクセスログについて比較していきたいと思います。

用意した環境はCentOS上にApacheをデフォルトの状態(yum install httpd)したものです。

Load Balancer

実際にログを確認してみます。

Load Balancerからの死活監視(プローブ)は「Load Balancer Agent」と表示されます。
通常の外部からのアクセスもIPアドレスなども問題なく表示されています。

ただし、Load Balancerからの死活監視のログが邪魔ですね。
/etc/httpd/conf/httpd.conf を以下のように設定し排除します。

これで出力されなくなります。

Application Gateway

実際にログを確認してみます。

アクセス元は、すべてApplication Gatewayの内部アドレスになっていることが分かります。
これでは、アクセスログの解析には役立ちません。

これを解決する方法として、X-Forwarded-ForとX-Forwarded-Protoをログに残します。
これはAWS ELBとも同じです。

/etc/httpd/conf/httpd.conf を編集しています。

実際にログを確認してみます。

末尾の方でX-Forwarded-ForとX-Forwarded-Protoが取得できていることが確認できます。
これで問題なく解析が行えるかと思います。

まとめ

アクセスを負荷分散するLoad BalancerとApplication Gatewayですが、それぞれ出力されるアクセスログも異なるため気を付けましょう。
また、対処する方法も異なるので気を付けましょう。これらはAzureに限ったことではありません。
X-Forwarded-ForとX-Forwarded-Protoが利用されるケースが多いので覚えておくとよいと思います。

ではでは

Related post

  1. Azure

    ルートテーブルもPowerShellではなくポータルで設定できます。

    はじめにくどうです。本日2本目です。以前はルートテーブ…

  2. Azure

    Cognitive ServicesでFace APIを使ってみる。これ面白い!

    はじめにくどうです。Cognitive Services …

  3. Azure

    Azure Application Gateway で Let’s Encrypt も使えます。Le…

    はじめにくどうです4/12にLet’s EncryptがG…

  4. AWS

    Azureの機能を一覧にしてみました。

    最近、Azureの進化が止まらないので自分でも整理するために出力してみ…

  5. Azure

    Azure DNS をポータルから使ってみた。シンプルです。

    はじめにくどうです。Azure DNS がポータルから操作…

  6. Azure

    Azureの公式ドキュメントを更新しよう!だれでも更新できるんですよ。

    はじめにくどうです。Azureのドキュメントはみなさん活用している…

Comment

  1. No comments yet.

  1. No trackbacks yet.

  1. セキュリティ

    おれ、CySecの講座受講するってよ。
  2. Azure

    AzureでNAT設置パターンを考える。これでAWSからも移行できますね。
  3. Azure

    specializedイメージをもとに仮想マシンを立ち上げるのに便利なテンプレー…
  4. AWS

    ひとつのEBSを分割してみますよ
  5. Azure

    SCOMで監視できるAzure(リソースマネージャ側)のサービス
PAGE TOP