[Linux-ha-jp] pacemaker + corosync 上で PostgreSQL を動かした際の空きメモリ減少について

Back to archive index

renay****@ybb***** renay****@ybb*****
2016年 9月 23日 (金) 18:03:42 JST


秋葉さん

こんばんは、山内です。

pacemakerのプロセスがIPC通信の為にマップしているメモリは5Mbyteまでです。
よって、最大、5Mbyteまでプロセスのメモリサイズは上がる可能性がありますが、
先のメールの通りで5Mbyteを超えるあたりで再利用する為、それ以上は増えません。

このサイズですが、/etc/sysconfig/pacemakerのPCMK_ipc_bufferで大きくは出来ますが、
小さくすることは出来ません。

#これらのメモリマップの様子は、pmapコマンドで確認することが可能です。


以上です。



----- Original Message -----
> From: "renay****@ybb*****" <renay****@ybb*****>
> To: "linux****@lists*****" <linux****@lists*****>
> Cc: 
> Date: 2016/9/22, Thu 10:20
> Subject: Re: [Linux-ha-jp] pacemaker + corosync 上で PostgreSQL を動かした際の空きメモリ減少について
> 
> 秋葉さん
> 
> こんにちは、山内です。
> 
> systemdプロセスではありませんが、
> pacemakerとcorosyncを組み合わせてクラスタを構成した場合、pacemaker/corosyncプロセスのメモリの使用量が一定期間、増加していく動作となります。
> 
> 詳細な動作は、失念していますが、pacmakerのプロセスがメモリマップしている(??MByteまでだったはず)エリア
> を利用して通信などを行う為、クラスタ構成後、マップした一定量まで増加が続きます。
> ですが、一定量までで、それ以降は、マップしたエリアを古い方から再利用する為、増加は止まります。
> (上記のマップしているサイズについては、確認して、再度、ご連絡します)
> 
> (1)(4)あたりは上記で説明が付くかと思いますが。。。(2)(3)の原因には直接影響しないかと思います。
> 
> 実際に増加しているのがsystemdプロセスとのことですが、pacemaker+corosyncのクラスタ構成で、リソースなどはsystemdを経由して
> 実行・監視しているでしょうか?
> #pacemakerのprimitiveリソースとしてsystemdリソースを利用しているかどうか?ということです。
> 
> pacemakerの構成ファイルなど開示して頂ければ、私の方でも確認可能かも知れません。
> #本当にリークしているのがsystemdプロセスである可能性もあるとは思いますが・・・・
> 
> 以上です。
> 
> 
>>  現在、pacemaker + corosync のクラスタ上で PostgreSQL を
>>  動作させているデータベースサーバがあるのですが、
>>  稼働中にOSのメモリ使用量が増加し続ける問題が起きています。
>> 
>>  原因を把握したいのですが、何か該当する現象や確認ポイント
>>  などありますでしょうか?
>> 
>> 
>>  環境は以下のようになっております。
>>  OS: CentOS Linux release 7.2.1511 (Core)
>>      kernel - 3.10.0-327.18.2.el7
>>      glibc - 2.17-106.el7_2.6
>>  Systemd: 219-19.el7_2.9 / 219-19.el7_2.12 (※)
>>  Pacemaker: 1.1.13-10.el7_2.2
>>  Corosync: 2.3.4-7.el7_2.1
>>  PostgreSQL: 9.4.8-1PGDG.rhel7
>> 
>>  (※)systemdのバージョンはどちらでも発生しました
>> 
>> 
>>  2台のサーバでHotStandby構成にしてPostgreSQLを運用しています。
>>  (両サーバでPostgreSQLが起動し、hot-standby構成にしている)
>>  Active側にVIPを割り当てるようにして、アプリケーションからは
>>  VIPに接続するようにしています。
>> 
>>  これまでに観察して見えているのは以下の事象になります。
>> 
>>  (1) OS起動しクラスタ状態を正常にした状態で、少しずつ
>>    OSの空きメモリ量(free+buffer+cache)が減少し続ける。
>>    →1日あたり30~100MB程度ずつ減少する
>>     ※DBサーバ自体は4GBメモリを搭載
>>     ※VIPがある/なしに関わらず減少傾向にある。
>> 
>>  (2) メモリ使用量が大きいプロセスを確認すると、PID=1の
>>    systemd プロセスで、数十秒ごとに4~8KB程度増加する。
>> 
>>  (3) 契機は不明だが、時折数十~数百MB程度空き容量が増える
>>    (回復する)ことがある。
>>    (長期的に見てトータルでは減少し続ける)
>> 
>>  (4) pacemaker + corosyncを使わず、1台のみで動作させている
>>    開発サーバでは(1)~(2)のようなメモリ使用量の増減が
>>    発生していないように見える。
>>    →この点があり、何か手がかりが無いかと考え、
>>     こちらのMLに質問をポストさせていただきました。
>> 
>> 
>>  長文にて恐縮ですが、情報等いただけましたら幸いです。
>>  よろしくお願い致します。
>> 
>>  ----------------
>>  AKIBA Makoto
>>  akiba****@acroq*****
>> 
>>  _______________________________________________
>>  Linux-ha-japan mailing list
>>  Linux****@lists*****
>>  http://lists.osdn.me/mailman/listinfo/linux-ha-japan
>> 
> 
> _______________________________________________
> Linux-ha-japan mailing list
> Linux****@lists*****
> http://lists.osdn.me/mailman/listinfo/linux-ha-japan
> 




Linux-ha-japan メーリングリストの案内
Back to archive index