ひとりごと

翌日:[2009-01-12]  前日:[2009-01-10] 表示単位 :

ついったー[おとなり日記] かがみさん Y.Kumagaiさん

2009/01/11 (日)

・ メモリてんこ盛り

メモリ

iSCSIドライブでしかもZFSなんだからサーバーにはたくさんメモリがいるよね!? ってことで、せっかくamd64化したのだからと メモリをたくさん積んでみることにしました。2GBのモジュール4つで計8GBです。同じパーツは先日買ったばかりなのですが、さらに値段が下がっていて 今回は ¥3,980 x 2でした。8GBなんてスゴい量のメモリを積んでも1万円でおつりがくるなんてスゴい時代になってますよね。

そして、DRAMといっしょにUSBメモリも買ってみました。うちのHP Proliant ML110 G5 には箱体内部にUSBポートがあるのです。

USBポート

ここにUSBメモリを差すとこうなります。

090111-5

もちろんUSBメモリからのブートも可能。ZFSで使う場合、障害時に交換が簡単なのはHDD全域をZFSプールにするやり方。それだとどうしてもミラーに使うドライブの他に起動ドライブが必要になります。以前はHDDを使っていたのですが、消費電力の問題もあって今回は4GBのUSBメモリを買ってみました。高速版と書いてあったのですが、リード20MB/s,ライト6MB/s程度であんまり速くなかったです。実際に使われるのはカーネルのロードまでで速度は重要ではないのでこれでもなんとか使えるでしょう。

ということで、ZFS化の準備はすべて整いました。iSCSIブートが今のところ出来ないことを考えればメモリは8GBも必要なかったかもしれませんが、これでダメなら諦めがつきます(^_^)。前回は残念な結果に終わりましたが、はたして今回は無事ZFSに移行できるでしょうか。

[つっこみ]

・ インテルサーバーアダプタ

デスクトップ・アダプタ

iSCSIブートで一番てっとり早いのはインテルのNICを使うこと。インテルのNICはうちのサーバに刺さってるのですが、これは安物なのでダメで、必要なのは「サーバ・アダプタ」という名称のものとなります。ということで早速お買い上げ、インテル PRO/1000 PT サーバ・アダプタ EXPI9400PT 。イマドキのNICとしては非常に高くて ¥11,645でした。

比較

ちなみに、これは手元にあったデスクトップアダプタ(EXPI9300PT ¥6,000ぐらい)との比較。どっちがどっちかわかります? わかんないですよね。てゆーかハードウェアは全く一緒なのでは?(^_^) まぁ高価なNICには値段相応の付加価値を付けるってのは理解できなくもないのですが、私の用途ではサーバに使ってるのが「デスクトップ・アダプタ」で、デスクトップPCに使おうとしてるのがiSCSI起動できる「サーバ・アダプタ」ってのがなんとも妙なところです。

さて、サーバ・アダプタを使うと付属のツールを使ってiSCSI起動用のROMを有効にできます。下でハマった通り大きいiSCSIディスクを作成してWindowsが起動できるかどうか実験してみました。あらかじめROMでIPアドレス等の設定を済ませているので、ドライバさえ組み込めばインストール・起動可能なはずです。

Windows Vista
付属のCDに入ってる32bitドライバだとドライバの読み込みまでは出来るが、iSCSIディスクを見つけてくれない。インターネットで最新版を取り寄せて使ってみると、WindowsServer用なためか、ドライバの読み込みすらできない。
Windows7(beta)
新しいOSなら動いたりして?とか思いましたが、残念ながら上と同じ。
WindowsXP
こちらは動作事例があったので動くはず・・・と思いきや、なぜか WindowsXPのCDから起動直後に 'INF file txtsetup.sif is corrupt or missing, status 2. Setup cannot continue. Press any key to exit.' の表示が出てインストール出来ず。手元のインストールCDはSP1,SP1a,SP3がありましたが、ぜんぶダメ。あれれ!?
Windows Server 2008
んじゃサーバだと動くじゃろということでやってみましたが、Vistaと同じ結果になりました。
Windows Server 2003
これは対応OSなので問題ない・・・はずだったのですが、唯一iSCSIディスクを見つけたものの 別のエラーが出てやっぱりインストーラーが停止。

ということで、原因はよくわかんないのですが、せっかくサーバー・アダプタを買ったのに今のところ何の役にもたっていません(苦笑)。Windows Server 2003 で使えないのはさすがにおかしいので、「BIOS設定のところでなんか間違えてる」「iscsi-targetに問題がある」「試験で使った安物PCが変てこ仕様」のどれかでしょう。はたしてこのNICが期待通り動作する日は来るのでしょうか?

□ 関連記事

[つっこみ]
01/19( 通りすがりさん )
自分はDellサーバから外したPTですが、
 Intelの最新2.2.96だとCtrl+Dの画面が出ず
 DellのIntel_LAN_10.0_DOSUtil_A00とかにある2.0.8で正常動作(Win2008ブート)
でした。
Win7はNG他OSはまだ未検証ですが、古いバージョンの方が良い場合があるかも?
01/20( たかたに )
どうもありがとうございます。うちのPTにはCDが付いてたのでCtrl+Dを出すことは困らなかったのですが、確かにWindowsのドライバは版によって挙動が違うので、もっと古いのでやってみるのも良いかもしれません。こんど挑戦するときは試してみますね。
[つっこみ]

・ 謎ファイル

iSCSIの実験中に気がついたこと。

iscsi-target を動かすと、指定した大きさファイルが即座に作成されます。Windowsのインストールを行うにはそこそこの空き容量が必要ですが、作成場所のファイルシステムの空きは30GB弱でした。

toriyu# df /var/smb
Filesystem  1K-blocks     Used    Avail Capacity  Mounted on
/dev/ad1s1e  50777034 17653268 29061604    38%    /var/smb

そこで、iSCSIのドライブを25GBで指定してファイル iscsi-target を起動しました。

toriyu# ls -l
total 48
-rw-r--r--  1 root  wheel  26843545600 Jan 11 14:26 iscsi-target0

念のために空き容量を確認するために df コマンドを再度実行してみました。

toriyu# df /var/smb
Filesystem  1K-blocks     Used    Avail Capacity  Mounted on
/dev/ad1s1e  50777034 17653316 29061556    38%    /var/smb

えーと、えーと、48KBしか減ってません

あり? 操作を間違えたのでしょうか? 桁を間違えてないか、単位を間違えてないか何度も何度も確認しました。でも間違っていませんでした。別の方法でも確認してみました。

toriyu# ls -s
total 48
48 iscsi-target0

toriyu# du -ks /var/smb/iscsi
50     /var/smb/iscsi

ファイルシステムが壊れてるのでしょうか? 一度 umount して fsck してみましたが、特にエラーは表示されません。はて? なんじゃこりゃ? と困っていたのですが、調べてみるとこういうのは穴あきファイル(sparse file)というのだそうです。

穴あきファイルとは、内部に NULL データを含むファイルで、なおかつディスク上には一部データの実体が存在しないファイル、である。

だそうで、ファイルサイズを超えてシークしたあと書き込みすれば作成されるとか。そんなとこにシークしたらエラーにになったり、書き込み出来たとしたら間のデータは不定になるような気がしますが、「何もない」ことがちゃんと管理されてるのですな。

てことで実験。

toriyu# dd if=/dev/zero of=Hugefile seek=1 bs=1000G count=0
0+0 records in
0+0 records out
0 bytes transferred in 0.000019 secs (0 bytes/sec)

toriyu# ls -l
total 64
-rw-r--r--  1 root  wheel  1073741824000 Jan 11 14:55 Hugefile

toriyu# ls -s
total 64
 64 Hugefile

ほほぉ、こんなのがあったのですねー。知っててもあまり得することは無いかもしれませんが、知らないとおもっきりハマるわけで(←経験者)、良い勉強になりました。

[つっこみ]
01/11( かがみ )
そういえば、昔、フロッピーディスク上に 2G のファイルを作ってみた記憶が。このフロッピーは最新型なので 2G まで OK ですなんて嘘つきました (^^
01/12( たかたに )
なんと極悪・・・いえ何でもないです(^_^)。
余談ですが、上の Hugefile を置いたまま ZFS 化の為に dump/restore したところ、このファイルのとこで詰まって進まなくなっちゃいました。共用サーバーで同じことやるとすんごい迷惑でしょうね(^_^)。
[つっこみ]

翌日:[2009-01-12]  前日:[2009-01-10] 表示単位 :
※このページへのリンクは自由です。リンクの方法については[つっこみ]で表示されるページの最後をごらんください。
たかたに(takatani@mars.dti.ne.jp)