[pgpool-general-jp: 1354] pgpoolのプロセスがメモリを大量消費する

"小林 良太郎" kobayashi @ mec-jp.com
2015年 2月 10日 (火) 17:55:41 JST


小林と申します。お世話になります。

pgpoolII 3.3.4と、postgreSQL 9.3.5を使用して会員制サイトを運用しています。

きっかけは不明ですが、pgpoolプロセスのメモリ使用量が増えて
oomkillerにてkillされる事象が数時間おきに起きております。

topコマンドをメモリ使用量でsortしてみると、pgpoolプロセスが
多いものでメモリを600Mも使用しています。

使用量が徐々に増えていって数時間おきにswapまで食い尽くして
oomkillerでkillされてしまいます。

<topコマンド結果抜粋>
-----------------------------------------------------------------------------------
top - 17:32:19 up 7 days,  1:30,  3 users,  load average: 0.02, 0.04, 0.00
Tasks: 215 total,   1 running, 214 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0%us,  0.1%sy,  0.0%ni, 99.9%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   1910636k total,  1894164k used,    16472k free,      864k buffers
Swap:  4095992k total,  3772432k used,   323560k free,    68652k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
16809 root      20   0 1660m 606m  44m S  0.0 32.5   1:48.56 pgpool
12756 root      20   0 1130m 585m  36m S  0.0 31.4   1:07.16 pgpool
 4714 root      20   0 1069m 412m  42m S  0.0 22.1   1:01.20 pgpool
10906 root      20   0  501m 173m  25m S  0.0  9.3   0:15.59 pgpool
11691 root      20   0  651m  21m  21m S  0.0  1.1   0:28.55 pgpool
14277 root      20   0  285m  19m  18m S  0.0  1.0   0:18.17 pgpool
 9848 root      20   0  290m  18m  17m S  0.0  1.0   0:00.08 pgpool
12850 root      20   0  988m  16m  15m S  0.0  0.9   0:55.79 pgpool
12878 root      20   0 1201m  11m  11m S  0.0  0.6   1:11.16 pgpool
-----------------------------------------------------------------------------------

サーバは以下の構成です。
・CentOS6.4
・MEM:2GB
・SWAP:4GB

プロセスを定期的に再起動するために
以下のように設定変更しても、セッションを使用中なのか、子プロセスは再起動しません。

<pgpool.confの設定>
child_life_time = 10
child_max_connections = 1
connection_life_time = 600

ココまで多くのメモリを消費しているのを見るのは初めてなのですが、
原因や対処方法についてご教示頂けると幸いです。

宜しくお願いします。


pgpool-general-jp メーリングリストの案内