XtreemFSをFreeBSDで動かす(6) 書き込み速度の改善

どうもFreeBSD+OpenJDKのバグで、Selector.select(int)がタイムアウト前に返ってくる模様。 このせいでMRCやOSDのあるスレッドが空回りしてCPUを食いつぶすことがある。(よくある) これを直してやって、7.4MB/sまで改善した。(前回は6MB/s) # dd if=/dev/zero of=/mnt/xtfstest/test bs=65536 count=4096 4096+0 records in 4096+0 records out 268435456 bytes transferred in 36.120514 secs (7431662 bytes/sec) 2016/05/31追記: 上記はiSCSI+ZFS+SSD ZILでの測定結果。 気になって夜も眠れないので、UFS on SSDにOSDを置いて計ってみたら、6.7MB/sになった。 遅くなってるけど、きっと測定誤差だと信じたい。(だとすると改善も誤差だけど……) # dd if=/dev/zero of=/mnt/xtfstest/test bs=65536 count=4096 4096+0 records in 4096+0 records out 268435456 bytes transferred in 39.965025 secs (6716759 bytes/sec) 正直なところ心が折れそうだけど、GlusterFSは(xattrが必要だから)zfsのzilで加速、とかができないし、微妙に柔軟性が足りない気がするのでもう少しがんばりたい。

XtreemFSをFreeBSDで動かす(5) 書き込み速度測定

またESXi用に使おうと思って、とりあえず書き込み速度を計ってみた。 結果、6.8MB/sという非常に悲しい数字をもらった。 ちなみに、rc.confの記述内容がxstreemfs_*_enableとかになってたので、xtreemfs_*_enableに修正している。

XtreemFSをFreeBSDで動かす(4)

やっとxtfsutilを直した。最新はea0bf85。 次はレプリケーションのテストか耐障害性のテストをしたい。 けどそろそろMacBookにVM 3台乗せてテストするのは辛くなってきたな……。

XtreemFSをFreeBSDで動かす(3)

FreeBSD向けのバグもいろいろ直したので、今回は冗長構成にしてみる。 packaging/freebsd/make-package.shでpkg用パッケージも作れるようにしておいた。 GlusterFSのときに作ったものを流用して作ったけど、manifestの書き方がどうも間違ってる気がする。けど今のところ動いてるので放っておく。 あ、xtfsutilが動かないバグはまだ直してないよ。

XtreemFSをFreeBSDで動かす(1)

昨日の続きをちょっとだけ。 成果物は例によってGitHubにて。(@f22dea0) インストール先を/から/usr/localに変更。 /etc/xosは/usr/local/etc/xosに。しかし/var/lib/xtreemfsはそのまんま。 Linux init.d scriptをFreeBSD rc.d scriptに変換。/etc/rc.confに以下の記述が必要。 xstreemfs_dir_enable=”YES” xstreemfs_mrc_enable=”YES” xstreemfs_osd_enable=”YES” とりあえず起動はした。 http://<hostname>:30636/ でMRC、http://<hostname>:30638でDIR、http://<hostname>:30640でOSDの状態が無事見えたので、そこそこ動いてはいるのだろう。 明日以降はfuseでマウントして遊んでみる予定。

XtreemFSをFreeBSDでビルドする

まだまだ長い旅路の途中。 成果物はGitHubの2510/xtreemfs (freebsd branch)に。 # pkg install bash gmake openjdk8 apache-ant python27 cmake boost-all fusefs-libs # mount -t fdescfs fdesc /dev/fd # git clone https://github.com/2510/xtreemfs # setenv JAVA_HOME /usr/local/openjdk8 # gmake ANT_BIN=/usr/local/bin/ant PYTHON=python2.7 CC=cc CXX=c++ (中略) BUILD SUCCESSFUL # gmake ANT_BIN=/usr/local/bin/ant PYTHON=python2.7 CC=cc CXX=c++ install # sh /etc/xos/xtreemfs/postinstall_setup.sh 今日のところはビルドだけ。 またそのうち、ね。 # /etc/init.d/xtreemfs-osd start /etc/init.d/xtreemfs-osd: line 19: […]