[cloudstack-users:0394] Re: 【質問】ロードバランサ配下のvmのアクセスログ

giraffe.forest @ wh.commufa.jp giraffe.forest @ wh.commufa.jp
2014年 8月 23日 (土) 17:36:36 JST


自己レスです。何通も失礼します。

ただ,4.3のAPIにもHAProxyのmodeにかかわるパラメータがありますね。

http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/createNetworkOffering.html

 createNetworkOffering
  keepaliveenabled

http://cloudstack.apache.org/docs/api/apidocs-4.3/root_admin/updateNetworkOffering.html

 updateNetworkOffering
  keepaliveenabled

こいつのデフォルト値はfalseと書いてあるので
明示的にtrueにしなれば少なくとも80はmode httpで動いてもよさそうなもので
すね。

ネットワークオファリングは初期登録されている
DefaultIsolatedNetworkOfferingWithSourceNatService
を使用していますか?

もしかしたら
・新規にネットワークオファリングを作成して使ってみる。
・APIでネットワークオファリングを作成し
 keepaliveenabledをfalseと明示的に指定してみる。
とかで挙動がかわるかもしれません。

※最終的に
 データベースのcloud.network_offeringsテーブルの
 対象ネットワークオファリングについてkeep_alive_enabled
 が0ならfalse 1ならtrueになります。
 0ならいいのですが。

手元に4.3の環境がないので確認できません。


以上

----- Original Message -----
送信者: giraffe.forest @ wh.commufa.jp
送信日時: 2014年08月23日(土) 17:13:23

> ※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 mailing list
> users @ cloudstack.jp
> http://ml.cloudstack.jp/mailman/listinfo/users
> 




users メーリングリストの案内