WEBサーバを建てているのですが最近コンソールにこんなエラーが出ました。

Oct 25 22:35:08 lincoln kernel: Approaching the limit on PV entries, consider increasing either the vm.pmap.shpgperproc or the vm.pmap.pv_entry_max sysctl.
PV entriesって何?って状態です。
このエラーの意味が分かる方は回答をお願いします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2009/11/10 17:03:26
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:rafting No.2

回答回数2652ベストアンサー獲得回数176

ポイント50pt

困った時のgoogle検索、ということで、上記エラーメッセージで検索すると、非常に参考になる以下のページが引っかかりました。

collecting pv entries -- suggest increasing PMAP_SHPGPERPROC

このページをかなり大胆に要約すると、

① PVエントリを大量に消費するのは子プロセスを作りまくるapacheのみである

② apacheの設定で、KeepAliveTimeOutを短くするか、KeepAlive自体を行わないようにすることにより、PVエントリの利用数を低く抑えることが可能

③ それでも上記メッセージが表示され続けるならば、PMAP_SHPGPERPROCを正しく設定すべし

とのこと。

確かに、apacheでKeepAliveを利用していると、KeepAliveタイマが満了するまで、親プロセスによって生成された子プロセスは生き続けるわけで、KeepAliveTimeOutを短くすることによって、結果としてPVエントリを減らすことができそうです。

KeepAliveTimeOutについては、デフォルトの「httpd.conf」では15(秒)となっていたので、これを10秒程度に変更します。

「/usr/local/etc/apache/httpd.conf」の変更

KeepAliveTimeout 10


上記内容を反映後、しばらく様子を見ていますが、今のところ上記のメッセージに再び出くわすことはなくなりました。


http://www.kishiro.com/FreeBSD/collecting_pv_entries.html

少し設定を変えて様子を見てみた方がよさそうですね。

id:NANAME000

ありがとうございます。試してみたいと思います。

2009/11/10 17:00:51

その他の回答1件)

id:horonict No.1

回答回数257ベストアンサー獲得回数51

ポイント50pt

FreeBSDをご利用でしょうか?

PV entriesは、仮想記憶へのポインタのようなものです。kernelが管理します。


boot/loader.conf にある vm.pmap.shpgperproc の値を増やして、リブートしてみてください。

http://nhh.mo-blog.jp/ttt/2009/07/freebsd-panic-g.html

id:NANAME000

ありがとうございます。参考になります。

2009/11/10 17:00:17
id:rafting No.2

回答回数2652ベストアンサー獲得回数176ここでベストアンサー

ポイント50pt

困った時のgoogle検索、ということで、上記エラーメッセージで検索すると、非常に参考になる以下のページが引っかかりました。

collecting pv entries -- suggest increasing PMAP_SHPGPERPROC

このページをかなり大胆に要約すると、

① PVエントリを大量に消費するのは子プロセスを作りまくるapacheのみである

② apacheの設定で、KeepAliveTimeOutを短くするか、KeepAlive自体を行わないようにすることにより、PVエントリの利用数を低く抑えることが可能

③ それでも上記メッセージが表示され続けるならば、PMAP_SHPGPERPROCを正しく設定すべし

とのこと。

確かに、apacheでKeepAliveを利用していると、KeepAliveタイマが満了するまで、親プロセスによって生成された子プロセスは生き続けるわけで、KeepAliveTimeOutを短くすることによって、結果としてPVエントリを減らすことができそうです。

KeepAliveTimeOutについては、デフォルトの「httpd.conf」では15(秒)となっていたので、これを10秒程度に変更します。

「/usr/local/etc/apache/httpd.conf」の変更

KeepAliveTimeout 10


上記内容を反映後、しばらく様子を見ていますが、今のところ上記のメッセージに再び出くわすことはなくなりました。


http://www.kishiro.com/FreeBSD/collecting_pv_entries.html

少し設定を変えて様子を見てみた方がよさそうですね。

id:NANAME000

ありがとうございます。試してみたいと思います。

2009/11/10 17:00:51

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません