muninサーバのチューニングの考え方

by mark_212011



色々見ていたら、ちょっと思うところがあったので、tweetしようと書き始めたんだけど、長くなってしまったのでブログに残しておこうと思う。


muninのサーバは、対象ノードが多くなってきたりして、処理が増えてくると、多くのケースでネックになってくるのはCPUとディスクI/Oで、それらの有限なリソースをcronの定期実行が走る5分間隔の間々でいかに効率よくリソースを使うかがmuninサーバのチューニングのポイントだと思っている。


リソースを使いきった=サーバが重い、という図式が成り立つのであれば、リソースを完全に使い切る時間帯を作らない努力/調節をすれば良いわけです。要件によっては、パフォーマンスを最大限出し切る設定(チューニング)が正とは限らないわけです。


つまり、muninのようにビューを提供していて、(バックグラウンドの処理以外の)その表示自体にもそれなりにリソースを食われる前提だとしたら、例えば、5分間隔のうち、全力で30秒でバックグラウンドの処理を終わらせる必要はなくて、200秒くらいかけて緩やかに(余裕を持たせて)処理させて、リソースに余裕を持たせる選択肢もあるということです。これは実行スレッド数と優先度を適切に設定するのが手っ取り早い。


尚、大量の管理ノードがあったとしても、muninではグラフの静的な生成をしない限り、大量のディスクI/Oは発生しないので、ioDriveとかの高速ストレージデバイスは全く不要で、RAIDカードのキャッシュとかtmpfsで十分だと思います。(正しくチューニングすれば、ディスクI/Oの前にCPUにネックがくる。)


と、駄文でございましたm(_"_)m
それでは! =͟͟͞͞(๑•̀=͟͟͞͞(๑•̀д•́=͟͟͞͞(๑•̀д•́๑)=͟͟͞͞(๑•̀д•́