Category Archives: XtreemFS

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で加速、とかができないし、微妙に柔軟性が足りない気がするのでもう少しがんばりたい。

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

XtreemFSをFreeBSDで動かす(3)

FreeBSD向けのバグもいろいろ直したので、今回は冗長構成にしてみる。

packaging/freebsd/make-package.shでpkg用パッケージも作れるようにしておいた。
GlusterFSのときに作ったものを流用して作ったけど、manifestの書き方がどうも間違ってる気がする。けど今のところ動いてるので放っておく。

あ、xtfsutilが動かないバグはまだ直してないよ。

Continue reading XtreemFSをFreeBSDで動かす(3)

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: /etc/init.d/functions: No such file or directory

Continue reading XtreemFSをFreeBSDでビルドする