[samba-jp:20321] Re: Sambaのチューニング(Re: Re: 無事終了: 夏休み特別企画:さわって覚えるSamba入門
Kenichi Okuyama
okuyamak @ dd.iij4u.or.jp
2008年 8月 12日 (火) 00:54:04 JST
奥山です。
>>>>> "関" == Tadashige Seki <tadashige.seki @ gmail.com> writes:
関> 正直、チューニングと言ってもどこから手をつけていいのか分からないような状
関> 態なので、ポイントを教えていただければと思います。
関> まずは○○のチェック、それでもダメなら××をチェックみたいな感じがよいなと思
関> います。
それは「デザイン」です。「チューニング」ではありません。
チューニングと言うのは「手元にあるリソースを(なるべく変更せずに)限界
まで性能を搾り出すにはどうすればいいか」という命題を解く方法です。で
すので「まずは○○のチェック」的なものが延々続く事はありえません。
最初の3ステップぐらいは決まっているかもしれませんが、そこから先は個
別対応の塊です。逆に、どこまでも延々とこれが続くようだと、最初の「デ
ザイン」の段階が腐っていた、と言うことになるので、
「全部捨ててやり直せ」
が正解になってしまいます。
関> http://www.dd.iij4u.or.jp/~okuyamak/Documents/tuning.japanese.html
関> など拝見して色々試してみたんですが、正直、ほとんど変わらずでした。
あー、それは申し訳ない。あれは別に万能チューニング指針ではないので。
同時に、それは幸せです。癖のある、中途半端な機材を使っていない、って
事ですから。
----
一般に、チューニングをする場合、車でも何でもそうですが、
「一旦走らせて」
みます。その際にデータを取得します。topの値、psの値、vmstat, netstat
等の値(これらはオプションを変えると出てくる値が大幅に変化するので注
意が必要)、あるいは /proc 下のファイルイメージをごっそりとる場合もあ
る。サーバとクライアントの両方で Wireshark を動かしてパケットを取得
する事もやる。
次に、「今、走らせた」結果の『何が』不満なのかを明確にする。応答が遅
いのが不満なのか、データ転送速度が遅いのが不満なのか。もちろん「両方」
と言うこともあるでしょうが、両方同時には直せないので
『まずは第一番目に注目するべき点』
を決めます。
で、注目するべき点が決まったら、「それを端的に現しているデータ」は何
か、考えます。ファイルの転送速度が遅いなら、通信の bit/secとか、
frame/secとかpacket/secなんかでしょうか? 応答速度の場合、クライアン
ト側から見る必要がありますが、クライアントのprocess monitor のリクエ
スト発行に対するReply Timeでしょうか? そういった
『目印』
を決めます。
この目印が「どうなったとき」が不満で、「どうなったとき」が満足なのか、
を決めたら、次に最初に取得したデータと『目印』との相関を取り捲ります。
もうそれはそれは計算機パワーに物を言わせて (^^;)。相関係数(r)という世に
も便利なものがあるので、これ自身か、r^2 の値を調べます。相関係数って
何?と言う人は統計学の教科書か、せめて STATISTICS HACK という本(英語
のタイトルですが、中身は邦訳されています)を見てください。
# 「そういう便利な数字がある」としか私も説明できん。
で、相関係数が強い相関を示しているパラメータを見つけ出して、『目印』
が「不満」側に落ちるとき、そこのパラメータが「どうなる」のかを調べま
す。ただし、「相関」は「因果」ではないので、
『目印の値が不満側に落っこちた』から『パラメータの値が悪くなった』
のかもしれません。逆かもしれません。今調べているのは、まだ「因果」ま
でたどり着いていません。
で、いよいよパラメータの値が「よくない」時に『何ゆえにその値が悪くなっ
たのか』を調べます。ここでいよいよ内部構造を知って、因果関係を求める
わけです。
これは「内部構造を知る」事が問題の全てになりますので、一番ハードな割
りに「チューニング法」の説明としてはあっさりとせざるを得ないポイント
でもあります。ようするに
『自分が使っているシステムの内部構造を勉強せいっ!!』
と言っているだけですからね (^^;)
で、因果律がわかって、変更するべきパラメータがわかったら、それを変更
して…で、最初に戻ります。測定して、目標を決めて、相関を求めて…これ
を永久に繰り返します。
これらをポエミーな漫画にすると、「湾岸ミッドナイト」っていうタイトル
になります(^^;)。
----
奥山 健一[煤背会:No.0x00000001]
#URL http://www.dd.iij4u.or.jp/~okuyamak/
# http://developer.osdl.org/dev/doubt/
#今日のお言葉『酸化チタン』:確か光で水を分解できたよね…
#空気中の湿度を分解して水と酸素にしてくれないかなぁ(T.T)。
samba-jp メーリングリストの案内