[cloudstack-users:0393] Re: 【質問】ロードバランサ配下のvmのアクセスログ
giraffe.forest @ wh.commufa.jp
giraffe.forest @ wh.commufa.jp
2014年 8月 23日 (土) 17:13:23 JST
※iphoneで見ると文字化けするかもしれないので再送しています。
小林さん
こんにちは。中谷と申します。
Apache CloudStack 4.4.0かつ
ロードバランスのパブリックポートが80の場合は
HAProxyのlisten定義がhttp modeで設定されX-Forwarded-Forが取得できると思
います。
この場合は
仮想ルータが以下のように設定されます。
---------------------------
/etc/haproxy/haproxy.cfg
:
defaults
:
mode tcp
:
listen 10_0_1_34-80 10.0.1.34:80
balance roundrobin
server 10_0_1_34-80_0 10.1.1.15:80 check
mode http
option httpclose
---------------------------
Apache CloudStack 4.3.0(少なくともrpm版は)だと
listenの定義でmode httpが設定されないようなので
defaultsのmode tcpが有効になり
X-Forwarded-Forの取得ができないと思います。
自分も挙動に興味があったので
ブログに詳しく書いてみました。
よろしかったら一度見てください。
( ´ ▽ ` )ノ
http://giraffeforestg.blog.fc2.com/blog-entry-176.html
以上
----- Original Message -----
送信者: "小林 良太郎" <kobayashi @ mec-jp.com>
送信日時: 2014年08月21日(木) 10:59:47
> いつもお世話になります。
> 小林と申します。
>
> 負荷分散機能を使用しているときのnginxのアクセスログについて質問があり
ます。
>
> 現在、以下の環境においてcloudstackの負荷分散を使用しています。
> 配下にnginxを利用したWEBサーバ(HTTP)を2台置いています。
>
> <環境>
> ネットワーク:Advanced
> CloudStackのバージョン:4.3.0
> ホストのバージョン:XenServer6.2.1
>
> <質問>
> nginxのアクセスログを見ると、送信元IPがロードバランサのIPになっていま
す。
> X-Forwarded-Forをログに出力させても、何も出てきません。("-"になってい
ます。)
>
> 調べてみると、CitrixSupportにHTTPSですが、似たような事例がありました。
> http://support.citrix.com/article/CTX138262
> コレを見ると、HA ProxyがHTTPモードではなくTCPモードで動いているので、
> X-Forwardedヘッダには何も設定されないようです。
>
> 解決方法として、別ネットワークでロードバランサとしてnginxサーバを作る
ように書いてありますが、
> ややこしい構成にしたくないので避けたいです。
>
> 解決方法やヒントをご存知の方がおりましたら
> ご教示下さい。
>
> 以上、宜しくお願い致します。
> _______________________________________________
> users mailing list
> users @ cloudstack.jp
> http://ml.cloudstack.jp/mailman/listinfo/users
>
users メーリングリストの案内