2010年7月8日
すでに賞味期限切れですが公開しておきます。
このバージョンはFreeNAS 0.7.1(7S) および 0.7.2 に搭載されているものです。
Windows Server 2008 R2 ではこれがなくても動くようになっているはずです。
for FreeBSD 7.3 or later
パッチファイル:fbs73-hv-20100528.patch.gz
for FreeBSD 8.1 or later
パッチファイル:fbs81-hv-20100528.patch.gz
パッチ済みカーネルの作成とインストール(8.1の実行例):
# cd /usr/src
# gzcat < /path/to/fbs81-hv-20100528.patch.gz | patch -p1
# make buildkernel
# make installkernel
# shutdown -r now
vmwp.exeの終了のしかた:
1.タスクマネージャを起動します。
2.プロセスタブを開きます。
3.表示(V)>列の選択(S)で「コマンドライン」のチェック入れて表示します。
4.イメージ名の部分をクリックしてソートします。
5.vmconnect.exeの後ろにホスト名、仮想マシン名、オプションと続くので、
停止したい仮想マシンのコマンドラインにあるGUIDを見つけます。
6.同じGUIDのvmwp.exeがありますので、右クリックして
「プロセスの終了(E)」を選択します。

(クリックで拡大)
タグ: FreeBSD, Hyper-V, patch
カテゴリー: FreeBSD, Windows, 仮想化 | コメントはまだありません »
2010年7月7日
istgtも七夕エディションに(謎)
isbootとの組み合わせで気づいた点を修正しました。
また、一か月ほどWindows7のディスクレス環境を支えて来れたというのを
踏まえてPortsの更新も行います。
ちなみに4KBとか小サイズIOを大量に投げるとギガビットイーサの遅さも
相まって、ありえないほどの遅延が生じます。
これは今後の課題と言うことで。
参考用:
http://shell.peach.ne.jp/aoyama/archives/1077
http://shell.peach.ne.jp/aoyama/archives/1107
http://shell.peach.ne.jp/aoyama/archives/1114
istgt (tarball): istgt-20010707.tar.gz
作成方法:
# cd /path/to/work
# tar zxf /path/to/istgt-20100707.tar.gz
# cd istgt-20100707
# ./configure
# make
# make install
# make install-doc
デーモンの再起動方法:
# /usr/local/etc/rc.d/istgt restart
MD5 (istgt-20100707.tar.gz) = 2774a6487b65a182648503eb76c2c4a3
SHA256 (istgt-20100707.tar.gz) = 98b910da623a127f575e35f45dfc7f8f5ec3334fc260b28cbd31b83ec32ca868
主な修正点:
DefaultTime2Waitの比較を最大値を取るように修正
ターゲットが存在しない場合に検索した記録を残すように修正
タグ: FreeBSD, IPv6, iSCSI, MCS, MPIO, ZFS
カテゴリー: FreeBSD, IPv6, ZFS, iSCSI | 3件のコメント »
2010年7月6日
ZFSで4KBドライブを使った処理を改善しました。
SVN変更点は以下を参照してください。
http://freenas.svn.sourceforge.net/viewvc/freenas/branches/0.7/?view=log
あくまで動作確認用ですのでテスト環境以外への導入はサポートできません。
SVN5255版に新チップ識別用コードの追加および
以下のバックポートドライバが含まれています。
なにか問題があれば報告をお願いします。
This unofficial version is using for test only.
It includes SVN r5255 + identifier fix
+ backport drivers + some ATA fixes.
If you have a problem, please report me about it.
Unofficial only:
ATI IXP700/IXP800 AHCI, IXP700 IDE
Intel ICH10 AHCI
NVIDIA MCP65/MCP67/MCP77/MCP79/MCP89 AHCI, MCP79 IDE
Realtek 8102EL/8168DP/8111DP/8168E/8111E GbE
Marvell 88SX6042/88SX7042/88SX6102/88SX6111/88SX6141
em driver 7.0.5/1.0.1 (Intel PRO/1000 family)
ixbge driver 2.2.0 (Intel 10 Gigabit family)
re 2010/05/07 (Realtek 8169/8111 etc.)
msk 2010/05/04 (Marvell Yukon)
ntfs-3g 2010.3.6
警告:ZFS version 13 にアップグレードすると過去の版で利用不可になります。
WARNING: If upgraded to ZFS version 13, you can not use from old version.
for 32bit version
7S-FreeNAS-i386-LiveCD-0.7.2.5255.iso
for 64bit version
7S-FreeNAS-amd64-LiveCD-0.7.2.5255.iso
※アップグレード手順はこちらを参考にしてください。
http://shell.peach.ne.jp/aoyama/archives/1038
MD5 (7S-FreeNAS-i386-LiveCD-0.7.2.5255.iso) = e15f8b979aae9b0e68176181b82a8dfb
SHA256 (7S-FreeNAS-i386-LiveCD-0.7.2.5255.iso) = a239cf7c45e66b0dce48e5c47c886774c5dcfa1f3a1aefd3d9cfb8fd7ef6d925
MD5 (7S-FreeNAS-amd64-LiveCD-0.7.2.5255.iso) = da14408dcc33e4ad746e54204ba7f103
SHA256 (7S-FreeNAS-amd64-LiveCD-0.7.2.5255.iso) = 01ea3fe2a2fd861c9fc92bff950c03e74789a0186d08302523e6f4b961ff086e
タグ: FreeNAS, iSCSI, ZFS
カテゴリー: FreeBSD, ZFS, iSCSI | 2件のコメント »
2010年7月4日
mutexを保持したままスリープしてしまう問題を修正しました。
また、FreeBSD8以降の場合はmaxio=1MBと設定するようになりました。
(効果がいまいち不明・・・。同時に256ブロック/128KBしかこない)
ddコマンドをバックグラウンドで4個同時に動かすと、
Read 120MB/s, Write 84MB/s ぐらいは出るようです。
作成・アップグレード方法:
# cd /usr/src
# tar xvf /path/to/iscsi-2.2.4.tar.gz
# tar xvf /path/to/isboot-0.2.2.tar.gz
# make buildkernel
# make installkernel
or
# cd /usr/src/sys/modules/iscsi/isboot
# make obj
# make depend
# make clean
# make all
# make install
インストール後に、新モジュールを適用する為にサーバを再起動してください。
ログで iSCSI boot driver version 0.2.2 が表示される事を確認してください。
主な修正点:
FreeBSD8.0以降はmaxioを1MBに設定
SCSIオートセンス機能を追加
タグ数をiSCSIコマンド数で調整するように変更
デフォルトタグ数を32に変更
iSCSI処理中にCAMロックを保持しないように変更
パフォーマンス(ダイジェストなし):
# dd if=/dev/da4 of=/dev/null bs=1m count=1k
1024+0 records in
1024+0 records out
1073741824 bytes transferred in 14.374117 secs (74699672 bytes/sec)
# dd if=/dev/zero of=/dev/da4 bs=1m count=1k
1024+0 records in
1024+0 records out
1073741824 bytes transferred in 17.823493 secs (60243064 bytes/sec)
Read: 74MB/s Write: 60MB/s (at bs=1m)
ダウンロードリンク:
http://www.peach.ne.jp/archives/isboot/isboot-0.2.2.tar.gz
ダウンロードリンク(for testing purpose only):
http://www.peach.ne.jp/archives/isboot/demo/FreeBSD-7.3-RELEASE-amd64-isboot-0.2.2.iso
http://www.peach.ne.jp/archives/isboot/demo/FreeBSD-7.3-RELEASE-i386-isboot-0.2.2.iso
http://www.peach.ne.jp/archives/isboot/demo/FreeBSD-8.1-RC2-amd64-isboot-0.2.2.iso
http://www.peach.ne.jp/archives/isboot/demo/FreeBSD-8.1-RC2-i386-isboot-0.2.2.iso
http://www.peach.ne.jp/archives/isboot/demo/unionfs-mkisboot.sh
gPXE + isboot + istgt(参考用):
http://lists.freebsd.org/pipermail/freebsd-scsi/2010-June/004432.html
タグ: FreeBSD, iSCSI
カテゴリー: FreeBSD, iSCSI | コメントはまだありません »
2010年7月3日
どうもiBFTが破損しているとカーネルごとお亡くなりになるようなので、
ロード処理を対応してみました。
処理のボトルネックになっていたコマンド実行数の制限を無くす為に、
キューイング処理を追加しました。
これにより読み込み速度が61MB/sから74MB/sに13MB/s程度改善しました。
また、R2Tコマンド、およびimmediateなしモードに対応したため、
istgt以外のiSCSIターゲットとの互換性が大幅にアップしています。
8.1-RC2が公開されたので、そちらの統合版も作成しました。
※FreeBSDのCAMの制限なのかVFSの制限なのか不明ですがTL>64KBで
処理をしてくれないようです。
CAM用のタグも64個用意しているけどdd bs=1mでは2個しか使っていないように
見えます。対処方法があったら教えてください。
istgt以外のiSCSIターゲットとの接続がうまくいかない場合は、
ブログコメントにでも残して頂けると助かります。
作成・アップグレード方法:
# cd /usr/src
# tar xvf /path/to/iscsi-2.2.4.tar.gz
# tar xvf /path/to/isboot-0.2.1.tar.gz
# make buildkernel
# make installkernel
or
# cd /usr/src/sys/modules/iscsi/isboot
# make obj
# make depend
# make clean
# make all
# make install
インストール後に、新モジュールを適用する為にサーバを再起動してください。
ログで iSCSI boot driver version 0.2.1 が表示される事を確認してください。
主な修正点:
CHAP/Mutual CHAPに対応しました。
タスクキューを実装しました。
immediateなしモード及びR2Tコマンドに対応しました。
iBFTチェックサムが破損している場合もモジュール登録するようになりました。
パフォーマンス(ダイジェストなし):
# dd if=/dev/da4 of=/dev/null bs=1m count=1k
1024+0 records in
1024+0 records out
1073741824 bytes transferred in 14.374117 secs (74699672 bytes/sec)
# dd if=/dev/zero of=/dev/da4 bs=1m count=1k
1024+0 records in
1024+0 records out
1073741824 bytes transferred in 17.823493 secs (60243064 bytes/sec)
Read: 74MB/s Write: 60MB/s (at bs=1m)
ダウンロードリンク:
http://www.peach.ne.jp/archives/isboot/isboot-0.2.1.tar.gz
ダウンロードリンク(for testing purpose only):
http://www.peach.ne.jp/archives/isboot/demo/FreeBSD-7.3-RELEASE-amd64-isboot-0.2.1.iso
http://www.peach.ne.jp/archives/isboot/demo/FreeBSD-7.3-RELEASE-i386-isboot-0.2.1.iso
http://www.peach.ne.jp/archives/isboot/demo/FreeBSD-8.1-RC2-amd64-isboot-0.2.1.iso
http://www.peach.ne.jp/archives/isboot/demo/FreeBSD-8.1-RC2-i386-isboot-0.2.1.iso
http://www.peach.ne.jp/archives/isboot/demo/unionfs-mkisboot.sh
gPXE + isboot + istgt(参考用):
http://lists.freebsd.org/pipermail/freebsd-scsi/2010-June/004432.html
タグ: FreeBSD, iSCSI
カテゴリー: FreeBSD, iSCSI | コメントはまだありません »
2010年7月1日
更新>FreeNAS 0.7.2 5255版
7S/8Sから簡単にマージできるのものをSVNに取り込みました。
残りのものも準備中ですが、いろいろあってすぐには無理かも。
とりあえず、trunkが0.8用に再作成されました。
0.8出るまでの空白期間を埋めるのとiSCSIのテストに活用すると言う主目的は
実行してきたから、まぁ、あとはどうにかなるでしょう。
SVN変更点は以下を参照してください。
http://freenas.svn.sourceforge.net/viewvc/freenas/branches/0.7/?view=log
あくまで動作確認用ですのでテスト環境以外への導入はサポートできません。
SVN5252版に新チップ識別用コードの追加および
以下のバックポートドライバが含まれています。
なにか問題があれば報告をお願いします。
This unofficial version is using for test only.
It includes SVN r5252 + identifier fix
+ backport drivers + some ATA fixes.
If you have a problem, please report me about it.
Unofficial only:
ATI IXP700/IXP800 AHCI, IXP700 IDE
Intel ICH10 AHCI
NVIDIA MCP65/MCP67/MCP77/MCP79/MCP89 AHCI, MCP79 IDE
Realtek 8102EL/8168DP/8111DP/8168E/8111E GbE
Marvell 88SX6042/88SX7042/88SX6102/88SX6111/88SX6141
em driver 7.0.5/1.0.1 (Intel PRO/1000 family)
ixbge driver 2.2.0 (Intel 10 Gigabit family)
re 2010/05/07 (Realtek 8169/8111 etc.)
msk 2010/05/04 (Marvell Yukon)
ntfs-3g 2010.3.6
警告:ZFS version 13 にアップグレードすると過去の版で利用不可になります。
WARNING: If upgraded to ZFS version 13, you can not use from old version.
for 32bit version
7S-FreeNAS-i386-LiveCD-0.7.2.5252.iso
for 64bit version
7S-FreeNAS-amd64-LiveCD-0.7.2.5252.iso
※アップグレード手順はこちらを参考にしてください。
http://shell.peach.ne.jp/aoyama/archives/1038
MD5 (7S-FreeNAS-i386-LiveCD-0.7.2.5252.iso) = 1418f24442639543d2bb7340d95946bf
SHA256 (7S-FreeNAS-i386-LiveCD-0.7.2.5252.iso) = 92ca2a8f91378152d9c61c0d9fd41e961f8c8d334b30d4045607e7876544d950
MD5 (7S-FreeNAS-amd64-LiveCD-0.7.2.5252.iso) = 699cf42251d8fb25b016f71135765129
SHA256 (7S-FreeNAS-amd64-LiveCD-0.7.2.5252.iso) = 38f4f21d920066b947888e72f6d01d24a0fcd2683774f43c92748ac2adebbc43
タグ: FreeNAS, iSCSI, ZFS
カテゴリー: FreeBSD, ZFS, iSCSI | コメントはまだありません »
2010年6月27日
リカバリモードの処理を改善しました。
ターゲットの消失が一時的に起きても依然のように即パニックになる可能性が
ほぼなくなったと思います。
現在はCAM用mtxとタスク用mtxの取得順序の問題で、根本的なレース状態の
解決にはなっていません。今後の検討課題です。
CAMをロックしたままタスク用mtxをmsleepで待ちたいです。
根本的にこのロジックがダメなのでしょうか?
カーネルランドに詳しい人で、もしここを見ている人がいたら教えてください(切実)
作成・アップグレード方法:
# cd /usr/src
# tar xvf /path/to/iscsi-2.2.4.tar.gz
# tar xvf /path/to/isboot-0.1.3.tar.gz
# make buildkernel
# make installkernel
or
# cd /usr/src/sys/modules/iscsi/isboot
# make obj
# make depend
# make clean
# make all
# make install
インストール後に、新モジュールを適用する為にサーバを再起動してください。
ログで iSCSI boot driver version 0.1.3 が表示される事を確認してください。
主な修正点:
セッションリカバリの処理方法を改善しました。
ソケット消失時に処理がストールする事があったのを修正しました。
ダウンロードリンク:
http://www.peach.ne.jp/archives/isboot/isboot-0.1.3.tar.gz
ダウンロードリンク(for testing purpose only):
http://www.peach.ne.jp/archives/isboot/demo/FreeBSD-7.3-RELEASE-amd64-isboot-0.1.3.iso
http://www.peach.ne.jp/archives/isboot/demo/FreeBSD-7.3-RELEASE-i386-isboot-0.1.3.iso
http://www.peach.ne.jp/archives/isboot/demo/FreeBSD-8.1-RC1-amd64-isboot-0.1.3.iso
http://www.peach.ne.jp/archives/isboot/demo/FreeBSD-8.1-RC1-i386-isboot-0.1.3.iso
http://www.peach.ne.jp/archives/isboot/demo/unionfs-mkisboot.sh
タグ: FreeBSD, iSCSI
カテゴリー: FreeBSD, iSCSI | コメントはまだありません »
2010年6月26日
動かないとか思った人すみません。修正版を即上げなおしたので、
不幸にもダウンロードしてしまった人は闇に葬ってください(汗)
それだけではなんですから、FreeBSD 7.2 および 8.1-RC1のISOイメージに
isboot-0.1.2を統合した版を作りましたので、良かったら試してみてください。
作成スクリプトも上げておきますが、自己責任でよろしくお願いします。
IntelのiSCSI機能(iBFT)サポートNICはここで調べてください。
http://www.intel.com/support/network/adapter/pro100/sb/CS-028681.htm
起動に成功するとこんな感じのログ画面になります。
Boot NIC: em0 と Boot device: da1 の行にに注目。
この例だと em0 をiBFTで設定されたNIC0を用いて初期化します。
iBFTの仕様上IPv6でもIPv4でも行けるはずですが、IPv6は未確認です。
そしてda1を起動用として認識しているので、ここにインストールすれば、
NICのBIOSから起動して、isboot.koが引き継いで、OSを起動という
流れになります。
最終的にはisboot.koからiscsi_initiator.koに引き継ぎを出来ると
完璧なのだけど、現時点では出来ません。理由は前回書いた通り。
既存環境をiSCSIターゲットに移すにはloader.confで指定するか、
シェルから kldload isboot.ko を実行すると、設定がロードされて
デバイスが使えるようになるのでdump/restoreなどの方法でコピーします。
注意点としては、インストール中に起動NIC(例の場合はem0)にIPアドレス等を
設定しない事です。問題が発生する可能性があります。
isboot.koが作成するTCPコネクションはクリティカルパスですので、
経路消失した場合の動作は保障できません。
—————————————————————
iSCSI boot driver version 0.1.2
IS: Initiator name: iqn.2007-09.jp.ne.peach:pluto
NIC0: IP address: 192.168.3.48
NIC0: Prefix: 24
NIC0: Gateway: 0.0.0.0
NIC0: MAC address: 00:15:17:97:85:ab
TGT0: Target IP address: 192.168.3.36
TGT0: Target Port: 3260
TGT0: Target LUN: 2
TGT0: Target name: iqn.2007-09.jp.ne.peach:isboot1
Boot NIC: em0
Configure IPv4 by NIC0
Attempting to login to iSCSI target and scan all LUNs.
… cut …
da0 at isboot0 bus 0 scbus0 target 0 lun 0
da0: <FreeBSD iSCSI DISK 0001> Fixed Direct Access SCSI-5 device
da0: 40960MB (83886080 512 byte sectors: 255H 63S/T 5221C)
da1 at isboot0 bus 0 scbus0 target 0 lun 2
da1: <FreeBSD iSCSI DISK 0001> Fixed Direct Access SCSI-5 device
da1: 10240MB (20971520 512 byte sectors: 255H 63S/T 1305C)
da2 at isboot0 bus 0 scbus0 target 0 lun 3
da2: <FreeBSD iSCSI DISK 0001> Fixed Direct Access SCSI-5 device
da2: 1024MB (2097152 512 byte sectors: 64H 32S/T 1024C)
… cut …
Boot device: da1
—————————————————————
ダウンロードリンク:
http://www.peach.ne.jp/archives/isboot/demo/FreeBSD-7.3-RELEASE-amd64-isboot-0.1.2.iso
http://www.peach.ne.jp/archives/isboot/demo/FreeBSD-7.3-RELEASE-i386-isboot-0.1.2.iso
http://www.peach.ne.jp/archives/isboot/demo/FreeBSD-8.1-RC1-amd64-isboot-0.1.2.iso
http://www.peach.ne.jp/archives/isboot/demo/FreeBSD-8.1-RC1-i386-isboot-0.1.2.iso
http://www.peach.ne.jp/archives/isboot/demo/unionfs-mkisboot.sh
最新版をご利用ください。
タグ: FreeBSD, iSCSI
カテゴリー: FreeBSD, iSCSI | コメントはまだありません »
2010年6月25日
更新>FreeNAS 0.7.2 5252版
isboot-0.1.1 のデモを兼ねて作成しました。
ActiveDirectory問題を修正中です。先が長いです。
変更点:
arc_max < 1024MB の領域で arc_min = arc_max / 4 に再調整
ユーザ・グループの作成・更新ができない問題修正
ActiveDirectory認証を使うとsshdがクラッシュする問題修正
isboot-0.1.1を同梱(おそらくiBFT対応FreeBSD起動イメージは世界初です)
iSCSIターゲットへのインストール、起動を暫定的に対応。
(iSCSIの不具合等ありましたら報告お願いします)
SVN変更点は以下を参照してください。
http://freenas.svn.sourceforge.net/viewvc/freenas/branches/0.7/?view=log
あくまで動作確認用ですのでテスト環境以外への導入はサポートできません。
SVN5226版にHVパッチと以下の新チップ識別用コードの追加および
以下のバックポートドライバが含まれています。
なにか問題があれば報告をお願いします。
This unofficial version is using for test only.
It includes SVN r5226 + Hyper-V patch + identifier fix
+ backport drivers + some ATA fixes.
If you have a problem, please report me about it.
Unofficial only:
ATI IXP700/IXP800 AHCI, IXP700 IDE
Intel ICH10 AHCI
NVIDIA MCP65/MCP67/MCP77/MCP79/MCP89 AHCI, MCP79 IDE
Realtek 8102EL/8168DP/8111DP/8168E/8111E GbE
Marvell 88SX6042/88SX7042/88SX6102/88SX6111/88SX6141
em driver 7.0.5/1.0.1 (Intel PRO/1000 family)
ixbge driver 2.2.0 (Intel 10 Gigabit family)
re 2010/05/07 (Realtek 8169/8111 etc.)
msk 2010/05/04 (Marvell Yukon)
ntfs-3g 2010.3.6
警告:ZFS version 13 にアップグレードすると過去の版で利用不可になります。
WARNING: If upgraded to ZFS version 13, you can not use from old version.
for 32bit version
7S-FreeNAS-i386-LiveCD-0.7.2.5226-p4.iso
7S-FreeNAS-i386-LiveCD-0.7.2.5226-p4a.iso
修正版をご利用ください。
for 64bit version
7S-FreeNAS-amd64-LiveCD-0.7.2.5226-p4.iso
7S-FreeNAS-amd64-LiveCD-0.7.2.5226-p4a.iso
修正版をご利用ください。
※アップグレード手順はこちらを参考にしてください。
http://shell.peach.ne.jp/aoyama/archives/1038
MD5 (7S-FreeNAS-i386-LiveCD-0.7.2.5226-p4.iso) = 778b088edf3b414e03eaa70762dcdcf2
SHA256 (7S-FreeNAS-i386-LiveCD-0.7.2.5226-p4.iso) = 5e9e4afc82a5bcfc45ef61f32cf46e7f99a8aa656edd35c41b40ca392e8dbc53
MD5 (7S-FreeNAS-amd64-LiveCD-0.7.2.5226-p4.iso) = a87c36dc0de83421d9ac162930fbd500
SHA256 (7S-FreeNAS-amd64-LiveCD-0.7.2.5226-p4.iso) = 8f25513d7b0e8afb2ce95541ddc9d38201d6b3f82d2c745288ba14cd1d02ccfb
追記:
i386版でloader.confから読むとクラッシュする問題があったため
isboot-0.1.2に差し替えました。
MD5 (7S-FreeNAS-i386-LiveCD-0.7.2.5226-p4a.iso) = e2db342d6e2130ef911b1089de167a67
SHA256 (7S-FreeNAS-i386-LiveCD-0.7.2.5226-p4a.iso) = 642e9c30af3c555f9d1ea435d88ebbb8f3ce0d3bb12b5530c76a524f6e63541a
MD5 (7S-FreeNAS-amd64-LiveCD-0.7.2.5226-p4a.iso) = 174de4a193cb0b8f42b9a08c5351ad10
SHA256 (7S-FreeNAS-amd64-LiveCD-0.7.2.5226-p4a.iso) = 92def87652e90b7907dd0ebb851e3580bf813f1f7cda9a9d72463ff7efc9f90f
タグ: FreeNAS, iSCSI, ZFS
カテゴリー: 未分類 | コメントはまだありません »