最近、FreeBDS 8.0-RELEASE、amd64、メモリ4GBな環境で、ZFSを使い始めました。
「一度に2つ以上の変更をしてはいけない」といった原則がありますが、スピードの早い時代、そんな悠長なこともやってられません。
今回は
- 新しいパソコン
- はじめて使う64bit環境(amd64)
- リリースされたばかりの新バージョンのOS (8.0-RELEASE)
- はじめて使うZFS
ということで、新しいことづくめ。そんな要因からか、kernel panicがあったり、よくわかんない不調があったりと、ZFSが原因かどうかはわからないのですが、なかなかの駄々っ子ぶり。
まずは、ハードディスクの障害を疑って、smartctl -t long /dev/ad6 といったコマンドで、ハードディスクの自己診断テストを実行。
まったくエラーは無し。
つぎにチューニングすればいいのかな?と思い、ドキュメントを見ていて気がつきました。
では、/boot/loader.confになにやら追加してましたが、これは、amd64版の場合、FreeBSD 7.2以降から不要だと書いてありました。だから、削除。
そして、なんとなく/etc/sysctl.confに以下を追加。
kern.maxvnodes=400000
そしてその場でsysctl kern.maxvnodes=400000を実行。たしかデフォルトは100000だったかな?
あとはこれまでと同じ、動作テストを実行。
ZFSなところをNFS exportして、クライアントからどんどこファイルを書き込んだり、make buildworldしてみたり。
なんだか、今回は調子がよくて、まったくびくともしません。当たり前のように動いています。buildworld、buildkernel、installworld、installkernelすべてできました。
1つ気になるのは、vfs.numvnodesの値。
動作テスト実行中に、こんなperlスクリプトで、vfs.numvnodesの値を5秒間隔で記録しつづけてみました。
#! /usr/bin/perl
use strict;
my $LOG = "/var/log/numvnodes.log";
open( my $fp, ">$LOG" ) || die "open $LOG";
while (1) {
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =
localtime();
my $n = `sysctl vfs.numvnodes`;
$n =~ s/.*: //;
my $tmp = sprintf("%02d:%02d:%02d %d\n", $hour,$min,$sec,$n);
printf $fp $tmp;
print $tmp;
sleep 5;
}
値が、ほぼ常に、増加し続けるんですね。そういうものなんでしょうか。
これがある程度いったところで、また調子悪くなるとかだったら、いやだなぁ。
■ 関連記事
0 件のコメント:
コメントを投稿