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

    Serverless Framework が Azure Functionsをサポートしました。これ…

    はじめにくどうです。Serverless Framewor…

  2. Azure

    Microsoft MVP for Microsoft Azure を受賞しました。

    受賞くどうです。Microsoft MVP for Mic…

  3. Azure

    Add-AzureAccountに失敗する時の対処方法は、Clear-AzureProfileを実行…

    はじめにくどうです。Remove-AzureAccountでアカウ…

  4. Azure

    Azure Functions を起動した(だけ)。だけど、これは面白そうだ。

    はじめにくどうです。Azure Functions が出ま…

  5. Azure

    elasticsearch + kibana を5分ぐらいで構築する。

    くどうです。Azure上にelasticsearchを5分で構…

Comment

  1. No comments yet.

  1. No trackbacks yet.

  1. その他

    Power BI でWeb公開できるようになったってよ!
  2. AWS

    ひとつのEBSを分割してみますよ
  3. 未分類

    Project Looking Glass 1.0のリリース(前編)
  4. Azure

    Azure Functions でDatadog のWebhook インテグレー…
  5. Linux

    超メモ:Zabbixの外部チェックでrubyスクリプトを動かす時のポイント
PAGE TOP