[Ultramonkey-l7-users 597] Re: UltraMonkey-L7 v3系においてのtimeoutについて

アーカイブの一覧に戻る

小林 年伸 toshi****@jig-s*****
2015年 8月 6日 (木) 16:57:00 JST


田沼様 ひばり様

jig-saw 小林です。

ご回答ありがとうございます。

すべてのコネクションがハーフコネクションとして残るわけでは無いので
頂きました通りtcpdump等で追ってみます。

もう一点よろしければ教えていただきたいのですが
同環境でCentOS5 ultramonkey-l7-2.1.3が動いていおります。

そちらはハーフコネクションがあることはあるのですが
ver3のものよりはハーフコネクションになっているものが
少ないです。
2と3でその部分について違いというのはありますでしょうか。

度々お手数ですが、ご教授いただけますと幸いです。


On 2015/08/06 16:13, tanum****@nttda***** wrote:
> 小林様
>
> 田沼と申します。
>
> 残ったコネクションを強制的に切るよりも
> コネクションが残らないようにするアプローチの方がよいかと思います。
> (※最近のUltraMonkey-L7の仕様を把握していませんが、
>   たぶん環境の問題だと思います)
>
> Apache側(及びクライアント)にはESTABLISHEDで残っていないということは、
> Apacheでは切断処理を行っているということで、
> その際に対向のUltraMonkey-L7に対して、FINまたはRSTのパケットを
> 送っているはずです。
> それにもかかわらず、UltraMonkey-L7にESTABLISHEDで残るということは、
> Apacheから送信したFINやRSTがUltraMonkey-L7に届かなかったと
> いうことになります。
>
> どういう場合にパケットが届かなくなるかというと、
> ケーブルが抜けたとか、NWが輻輳してパケットロストしたとか、
> 様々なケースが考えられますが、最もありがちなのが、
> ファイアウォールやNATルータが間にあって、セッションタイムアウトで
> パケットを破棄しているパターンです。
>
> ということで、UltraMonkey-L7の前後にファイアウォールやNATルータ等の
> 機器が存在していないでしょうか。
> 存在する場合は、ApacheのKeepAliveTimeoutやTimeout設定よりも
> 機器のセッションタイムアウト設定が長くなっているかどうかを
> 確認してみてください。
>
> そのような機器が無い場合は、UltraMonkey-L7とApacheの両方で
> tcpdump等でパケットキャプチャを行って解析することが
> 解決への近道かと思います。
>
> 以上、よろしくお願いします。
>
>
> From: ultra****@lists***** [mailto:ultra****@lists*****] On Behalf Of Michiro Hibari
> Sent: Thursday, August 06, 2015 2:07 PM
> To: 小林 年伸 <toshi****@jig-s*****>
> Cc: ultra****@lists*****
> Subject: [Ultramonkey-l7-users 594] Re: UltraMonkey-L7 v3系においてのtimeoutについて
>
> 小林さま
>
> ひばり と申します。
>
> ハーフコネクションが残ってしまった場合、
> 現状 有効なタイムアウト設定はなさそうです。
>
> socket optionでtcpkeepaliveが有効にできれば
> 良いのですが、無効でハードコーディングされてしまって
> いるので設定で有効にはできません。
>
> ちなみにserver_connect_timeoutは振り分け先との
> コネクションが確立するまでのタイムアウトなので、
> ESTABLISHEDとなったコネクションに対して有効なものでは
> ございません。
>
> netstat等で観察しつつ、あまりにも多くハーフコネクションが
> 残るようなら再起動するしかないと思います。
>
> 以上、宜しくお願い致します。
>
> 2015/08/05 18:42 "小林 年伸" <toshi****@jig-s*****>:
> 開発者の皆様
>
> jig-sawの小林と申します。
>
> UltraMonkey-L7 v3系においてのtimeout値について
> ご質問させて頂いてよろしいでしょうか
>
> 現在UltraMonkey-L7 3.1.1を使用させて頂いていますが
> 運用中にhttpの接続が切れないで
> ESTABLISHED 状態のまま残り続けるものが溜まっていくという
> 事象がありました。
>
> アクセスの傾向としては07:00~22:00以外はグッと下がる傾向にあるのですが
> /usr/sbin/l7vsadm -l -n
> で確認すると ActiveConn  が落ちること無く日増しに増えていっていました。
>
> l7vs.cfに「server_connect_timeout」を設定してみましたが
> 効果が見られなかったです。
> クライアント(GIP)、リアルサーバー(LIP)共にESTABLISHED 状態のまま残り続け
> ていました。
> 只、リアルサーバー側ではLBのIPとESTABLISHED になっているものは無い状況で
> した。
>
> 他に強制的にタイムアウトをさせるような設定はあるかどうか
> ご教授いただけますでしょうか。
>
> 以下環境を記載させていただきます。
> 足りないものがありましたらお手数ですがご教授ください。
>
> 【環境】
> <ロードバランサー>
> OS:CentOS 6.6 64bit
> Kernel:2.6.32-504.12.2.el6
> UltraMonkey-l7バージョン:3.1.1
>
> <Webサーバー>
> OS:CentOS 5.5 64bit
> Apache:2.2.21
>
> <l7vs.cf>
> -----------------------------------------------------------
> #
> # l7vsadm setting
> #
> [l7vsadm]
> cmd_interval = 1
> cmd_count = 10
> con_interval = 1
> con_count = 1
>
> #
> # l7vsd setting
> #
> [l7vsd]
> maxfileno = 65535
>
> #
> # virtualservice setting
> #
> [virtualservice]
> session_thread_pool_size    = 32
> throughput_calc_interval    = 500
>
> #
> # Session Settings
> #
> [session]
> #upstream_buffer_size = 8192
> #downstream_buffer_size = 8192
> server_connect_timeout = 61
>
> #
> # l7vsd replication setting
> #
> [replication]
> #ip_addr = "192.168.0.254"
> #service_name = "40000"
> #recv_ip_addr = "192.168.0.253"
> #interval = 1000
> #compulsorily_interval = 40
>
> #cmponent_id_00 = "virtualservice"
> #cmponent_size_00 = 64
> #cmponent_id_01 = "chash"
> #cmponent_size_01 = 1
> #cmponent_id_02 = "sslid"
> #cmponent_size_02 = 222
>
> #
> # snmpagent settings
> #
> [snmpagent]
> enable = "false"
> cache_update_interval = 1
> logtrap = "false"
> logtrap_level = "warn"
> qos_up_alert_on = 85
> qos_up_alert_off = 50
> qos_down_alert_on = 85
> qos_down_alert_off = 50
> sessionpool_alert_on = 5
> sessionpool_alert_off = 8
> trap_queue_polling_interval = 100000000
> trap_queue_max_size = 1000
> -----------------------------------------------------------
> ※[logger]セクションは省略しております。
>
> <l7directord.cf>
> -----------------------------------------------------------
> # - Monitor Settings
> checktimeout     = 5
> negotiatetimeout = 5
> checkinterval    = 10
> retryinterval    = 5
> checkcount       = 3
> quiescent        = yes
> configinterval   = 10
> autoreload       = yes
>
> virtual  = {service_IP}:80
>           real = {realserver01_IP}:80 masq 10
>           real = {realserver02_IP}:80 masq 10
>           real = {realserver03_IP}:80 masq 10
>           sorryserver = {sorryserver_IP}:8085
>           module      = sessionless --forwarded-for
>           scheduler   = lc
>           qosup       = 125M
>           qosdown     = 125M
>           checktype   = connect
>           service     = http
>           quiescent   = no
>           checkcount  = 2
>           session_thread_pool_size = 2000
>           maxconn     = 10000
> -----------------------------------------------------------
>
>
> お手数ですが、何卒よろしくお願いいたします。
>
> --
> --------------------------------------------
> ジグソー株式会社
> 小林 年伸
> E-mail:toshi****@jig-s*****
> Tel:011-737-0240  Fax:011-737-0241
> 〒060-0808
> 北海道札幌市北区北8条西3丁目32番
>
> _______________________________________________
> Ultramonkey-l7-users mailing list
> Ultra****@lists*****
> http://lists.osdn.me/mailman/listinfo/ultramonkey-l7-users


-- 
--------------------------------------------
ジグソー株式会社
小林 年伸
E-mail:toshi****@jig-s*****
Tel:011-737-0240  Fax:011-737-0241
〒060-0808
北海道札幌市北区北8条西3丁目32番




Ultramonkey-l7-users メーリングリストの案内
アーカイブの一覧に戻る