2011年12月23日金曜日

Windows Server on Dell PowerEdge インストール記

Windows Server 2008 R2 を Dell PowerEdge R210 II にインストールする機会があり、私なりに苦労したのでまとめてみます。

構成

本体 Dell PowerEdge R210 II
RAIDカード LSI MegaRAID SAS 9260-4i
HDD Seagate Cheetah 15k.7 600GB * 2 (RAID1)
OS Windows Server 2008 R2 Standard Edition
リモート管理コンソール DELL iDRAC6 Enterprise
起動モード UEFI

私にとっては、初 SAS RAID、初 UEFI、初iDRAC6、初 Windows Server 2008 R2 と初体験だらけでした。

RAID カード設定

LSI MegaRAID は、起動時に WebBIOS という設定画面が使えますが、これが起動しませんでした。 Preboot CLI は使えるんですが、これはドキュメントがなく、ヘルプを出しても説明なしにコマンドの羅列だけ5画面ぐらいスクロールするので、使い物になりません。途方にくれました。

まず、 FreeDOS を使ってファームウェアアップデートを試みました。 USB メモリにインストールする方法 を参考にしました。ただ、Disk Explorer を使うのではなく、 .iso イメージを仮想ドライブとしてマウントすると、中にファイルシステムが見えるのでそれを使いました。 KERNEL.SYS と COMMAND.COM の2つで動きます。 コマンドの出力が長いので、 MORE.EXE も入れておいたほうが無難だと思います。

次にファームウェアのアップデートです。 LSI の Web はナビゲーションがわかりづらいですが、必要なのは最新版のファームウェアと、 DOS 用の MegaCLI です。 USB メモリのルートディレクトリに必要なファイルをコピーします。 更新方法は LSI の Knowledge Base に書かれています。 -NoVerChk はダウングレードの時にしか必要じゃないっぽいので更新のためのオプションは LSI の Knowledge Baseに書かれています。

megacli -adpfwflash -f mr2108fw.rom -a0
megacli -adpfacdefset a0

で大丈夫です。工場出荷時設定に戻さないとシステム起動しなくなるとか怖いこと書いてあるので、従ったほうが無難です。私はうっかり忘れましたが大丈夫でした。ダウングレードの時の話みたいです。ファームウェアを上げれば WebBIOS 使えるようになるかなと思って試したんですけど、だめでした。もし積極的に上げる理由がなければ、触らなくてもいいかもしれません。

で、再起動したら次はアレイの構築です。これも MegaCLI を使って行います。参考にしたのは HWRAID の Wiki です。MegaCLI のリファレンスも参考になります。

まず、

megacli -PDlist -a0

でドライブ一覧を出力出力します。 DOS には grep なんて洒落たものはないので、目grep で「Enclosure Device ID:」と「Slot Number:」が含まれている行を探します。これがドライブの識別番号になります。台数多ければ、ログが USB メモリに保存されているので、それを持ってきて他の環境で grep したほうがいいでしょう。

次に

megacli -CfgLdAdd -r1 [0:0,0:1] -a0

のように、論理ボリュームを追加します。 0:0 となっている左側が Enclosure Device ID 、右側が Slot Number です。私の場合は Enclosure Device ID は 252、 Slot Number は 0 と 1 でした。環境によって異なると思います。 -r の後に来るのが RAID レベルです。 -r0 だと RAID 0 になります。その他はデフォルト設定で、ディスクの全容量を使ってアレイが構築されます。細かい設定は Windows が起動してから確認しようと思いました。

デフォルトでは RAID カードにバッテリがつながっていないと、書き込みキャッシュが無効になっています。私は UPS つなげているので、書き込みキャッシュを有効にしました。

megacli -LDSetProp CachedBadBBU -LALL -a0

これで有効になります。無効にするときは -LDSetProp NoCachedBadBBU です。

以上で Windows のインストーラーから認識できる論理ボリュームが完成しました。次に、 OS のインストールに移ります。

Windows Server のインストール

iDRAC6 には、ネットワーク越しに仮想的に CD/DVD を認識させる仮想メディア機能がついています。これを使いました。

仮想メディア機能で、OS ディスクをマウントします。これでサーバーをリセットすると、 Windows のインストーラーが起動します。この時に UEFI モードにしておかないと、 UEFI 対応としてインストールされません。なお、 Windows Server 2008 R2 のインストーラーは特に追加のドライバ無しで、RAID アレイを認識しました。

ドライブの選択画面では、未フォーマットのドライブがひとつ見えます。「ここに Windows をインストールすることはできません」のようなエラーメッセージが表示されますが、無視します。パーティションはお好みで切るといいですが、私はそのまま使いました。なお、UEFI では起動ドライブに管理用パーティションが2つ作成されます

あとは普通に OS がインストールされますが、再起動したら仮想メディアを終了させてください。ディスクをマウントしたままだとブートローダーのあとに「STOP 0xc0000178」でシステムが停止します。ぐぐるとディスクが読めないっぽいことが書かれていますが、原因がわからなくて2度もドライバ変えたりしてインストールしなおしました...

以上で OS が起動します。あとは Windows の世界です。おつかれさまでした。

2011年12月15日木曜日

サーバー用 HDD 事情 2011年年末バージョン

最近サーバーを構築する機会があったのですが、ストレージをどう用意したらいいのかさっぱりわからなかったので、だいぶ苦労しました。苦労した内容をまとめてみます。

SAS vs SATA

SASの特徴: 速い、高信頼、高い
SATAの特徴: 安い、安い、安い

これに集約されると思います。バックアップとして使うならともかく、メインのストレージとして利用するのに SATA は選択肢に入ってこないと思います。 Non-recoverable error rate だって SAS のほうが1桁低いです。

SAS RAID事情

サーバーで使うなら RAID 必須になってきます。今回はシャーシと予算の都合で HDD が2台しか入らないので、RAID 1 を構築することにしました。ところが、SATA と違ってぐぐってもさっぱり情報が見つかりません。

RAID にはソフトウェア RAID とハードウェア RAID がありますが、パフォーマンスを重視するならハードウェアRAID一択です。ただし、Dell の PERC H200 のようにキャッシュメモリが載っていない安物カードだと、パフォーマンスが全然出ませんので、きちんとキャッシュメモリが載っているものを選びましょう。1万5000円ぐらいから見つかります。RAID5 や 6 を構築するときは、おそらくコントローラーの性能がかなり響いてくると思うので、ここでけちってはいけません。

よく使われているメーカーは LSI か、Adaptec だと思います。Adaptec は PMC という会社に買収されてしまいましたが、ブランドは残っています。

(2011/12/21 追記)Adaptec はまだ UEFI に対応していないそうで、最近のマザーボードとの組み合わせだと起動しないかもしれません。私もはまりました。 LSI は対応しています。サーバー用だと LSI が最大勢力のようです。あと Areca というメーカーも最近メジャーで、チップは LSI なんですが DIMM を差し替えてキャッシュを 4GB まで増設できたりといった特徴があります。

お金が許すなら LSI Logic のほうが速いようです。Akiba PC Hotline! に 現行最速クラスのRAIDカード「LSI MegaRAID SAS 9265-8i」を試す という記事がありますので参考にしてください。

今回は Adaptec RAID 6405 をチョイスしました。3万円強で買えます。

ちなみに Dell の PERC H シリーズは、LSI Logic のOEM だそうです。DELLサーバのRAIDコントローラ~その2~ が詳しいです。

SAS ケーブル

SAS は SATA と異なり、RAIDカードのコネクタとHDDのコネクタが一対一には対応しません。
Adaptec のケーブル一覧 に写真付きで載っていますが、だいたいは4叉(ファンアウト)ケーブルを使います。つまり、基本的にはRAIDカードのコネクタ1つにつきHDDが4台接続できるわけです。

LSI Logic も Adaptec も、メーカーサイトに、対応しているケーブルが書かれてあるので、それに従います。大体の場合、コントローラー側は SFF-8087 というコネクタで、HDD 側は SFF-8482 というコネクタになっています。

SATA と SAS の互換性ですが、SAS が SATA の上位互換になっています。SFF-8482 には SAS と SATA 両方の HDD が接続できます。SATA のコネクタには SAS HDD は接続できません。SAS のコネクタをよく見ると、電源部分とデータ部分の間にノッチがついています。これで識別しています。

SFF-8482 には single port 対応のものと dual port 対応のものがあります。dual port はその名の通り、信号線が2系統になっていて、電源部分とデータ部分のノッチに信号線が載っています。これを使うと、一台のHDDを複数のコントローラーに接続したりできるそうですが、自分で HDD 買ってくるような用途では使わないと思います...

SAS HDD事情

SAS に接続できるストレージには大きく分けて、3.5インチ HDD、2.5インチ HDD、SSD があります。

SSD は HDD じゃないだろうというツッコミはありますが、最近では HGST や Seagate などの HDD メーカーもどんどん発売しています。容量も 800GB 程度までありますので、資金が許すなら選択肢に入るのかも? ただ、ぐぐっても売ってるところ見つからないので、普通には買えないのかもしれません。

3.5 インチと 2.5 インチですが、最近は徐々に 2.5 インチが幅を効かせているようです。といってもちょいと複雑で、単純には言えないところがあります。

まず、HDD の用途には二種類あって、ひとつは容量を稼ぐためのもの、もうひとつは性能も大事なものです。

容量を稼ぐ場合は、2TB とか 3TB の 3.5インチ HDD を使うのが良いようです。これらは SATA で普通に買える HDD と大差ありません。これは単純にディスク面積が広いほうが有利なので、 3.5 インチが使われています。

性能を稼ぐためには台数を増やすのが手っ取り早いので、10,000rpm 以上の 2.5 インチ HDD を複数台数用意するようです。消費電力も 2.5 インチのほうが小さいですし、例えば Seagate の場合は Cheetah 15K.7(3.5inch) より Savvio 15K.3(2.5inch) のほうがスペックが良いです。Cheetah 15k.7 が2009年の製品だというのもありますが... 新製品が発売されないということは、需要が減ってきているんでしょう。

あと、実は 3.5 インチといいつつ 10,000rpm 以上の HDD は、プラッタの大きさがかなり小さいですので、それだったら 2.5 インチシャーシでギリギリまで使うほうが良いという判断もありそうです。

性能と容量のバランスの良い、2.5インチ 10,000rpm HDD もあります。 Savvio 10K.5 は 900GB まで用意されています。3.5 インチの Cheetah より容量が多いです。新しい製品なので高密度なんでしょうね。

ちなみに今はタイ洪水のせいで、2.5 インチ HDD の入手性が悪いようです。あと私が勉強不足だったので、普通に Cheetah 15K.7 を注文してしまいました...

RAID と UPS


普通のパソコンだと UPS 積みませんが、 RAID カードを装着して、しかも大容量キャッシュが搭載されている場合だとバッテリバックアップは重要です。

大抵のファイルシステムは、突然電源断が起こっても一貫性を保ち、データの消失が発生しないように設計されています。デスクトップパソコンが UPS なくても安心して使えるのはこのためです。

しかし、これには「OS がディスクに書き込んだと思った内容は、確実に書きこまれている」という大前提があります。

RAID カードのキャッシュは、OSが「書きこめ」と言ったものもキャッシュして、高速化します。そのため、電源断が起こった際にデータの消失、ファイルシステムの破壊が起こる可能性があります。かと言って書き込みキャッシュを無効化してしまうと、 RAID カードの高速性が半減してしまいます。

RAID カードの中には自前でバックアップシステムを持っているものもありますが、結構なお値段がしますので、それだったら PC ごと UPS でバックアップしたほうが良いと思います。2万円ぐらいからありますし、APC の 1U 用でも管理ソフト込で5万円強です。

まとめ


SAS RAID カードはケチらない。ケーブルはメーカーの対応表とにらめっこ。 HDD はメインとしては 2.5インチ 10,000rpm ぐらいが容量、性能のバランスが良いが、洪水のせいで買えない。 UPS を付ける。

2011年12月4日日曜日

イベント会場でモバイルWi-Fiを使ってはいけない理由

昨今ポケット Wi-Fi を始めとするモバイルWi-Fiルーターをお使いの方が増えています。日常とても便利なのですが、人が多く集まるイベント会場で使うと会場の無線LANが使えなくなり、迷惑になることがあります。
イベント会場に無線LANがある場合は、そちらを使うようにして、モバイルWi-Fiルーターの電源はOFFにしましょう。
ではなぜ、モバイルWi-Fiルーターを使ってはいけないのでしょうか?

重ならずに使えるチャンネルは少ない

2.4GHz の無線LANでは、1〜13チャンネルが使用出来ます。ところが、実際にはそれぞれ左右に2チャンネルずつ重なっているので、5チャンネル分専有してしまうのです(11g/11n では少し違いますが、やはり重なりがあります)。

(図は Michael Gauthier による。 CC-BY-SA)
そのため、実際に同時に使えるチャンネル数は最大3チャンネルになってしまいます。「最大に」がポイントで、誰かが4チャンネルを使った場合は1チャンネルと6チャンネル、両方と干渉してしまうので、さらに効率は落ちてしまいます。
イベント会場では主催者が注意深く割り当てたチャンネルを使用すべきです。

モバイルWi-Fiルーターは通信速度が悪い

無線LANでは、ひとつの周波数を利用者全員で使用します。簡単にいえば 300Mbps を10人で使うと一人30Mbpsになります。ところが、低速で通信している人がいると、その人は多くの時間を使うので、他の人が使える時間が減ってしまいます。3Gの通信速度が遅い場合でも、無線LANが遅いと余分に時間がかかるので、やはり他の人が使える時間が減ってしまいます。
ポケットWi-Fiは、多くの機種で 54Mbps までの 11g しか対応していませんし、11n に対応した最新機種でも 72Mbps しか対応していません。一方、多くのノートパソコンは 11n の 144Mbps に対応しています。
会場内で高速なアクセスポイントが提供されている場合は、そちらを使うほうが電波の利用効率が上がります。

アクセスポイントが増えると、余分な信号が増える


無線LANのアクセスポイントは、誰もつながっていなくても1秒間に10回程度「ビーコン」と呼ばれる電波を出しています。これにはSSIDや通信速度など、APの情報が含まれています。
つまり、アクセスポイントが増えれば増えるほど、ビーコンが多くなって電波を無駄に使ってしまうのです。SSID をステルスにしても、SSIDが空になるだけで実際にはビーコンは出たままになっています。
さらに、無線LANクライアントがアクセスポイントの検索を行うと、検索パケットがアクセスポイントの数だけやり取りされてしまいますので、接続を行わなくても無駄に電波を使ってしまいます。
アクセスポイントの数は必要最低限にするのが、電波の利用効率向上につながります。

会場では 5GHz 帯が使えることがある

無線LANには大きく分けて 2.4GHz帯と 5GHz帯があります。
周波数が過密なのは 2.4GHz帯で、5GHz帯は比較的余裕があるのですが、残念ながら一部を除いて屋外で使うことができません。そのため、モバイルWi-Fiルーターは2.4GHzのみの対応となっています。
もし会場で 5GHz帯のアクセスポイントが用意されていれば、2.4GHz帯との負荷分散を行うことができますので、収容人数が格段に上がります。

まとめ

無線LANは電波を使います。電波は空間に均等に広がっていくので、どうしてもお互いに影響を及ぼします。限られた周波数をできるだけ効率良く使うことが、みんなの幸せにつながります。
イベント会場では、モバイルWi-Fiルーターの電源はお切りいただき、会場の無線LANをお使いください。

この文章は Creative Commons 3.0 BY-SA Unported によりライセンスされます。