|
|
自宅サーバー用ハードウェアの準備
|
ハードウェアの準備専用のパソコンを準備する手持ちのパソコンを転用するケースと電源CPUとマザーボードメモリとグラフィックカードハードディスクモデムとルーターとハブネットワークカードとケーブルCD/DVDとフロッピードライブその他諸々サーバー専用機について |
数年前のCPUでもサーバーは動く!
意外に思われるかもしれませんが、
WBEL
や
CentOS
で、個人で運用する程度の
サーバー機
を準備する場合、そのサーバー機のエンジンともいえる
CPU
の性能は、
サーバー機というと、特殊な専用のCPUを持った高価で高性能なマシンを何台も積み重ねるくらいに大掛かりなもの、と思われがちですが、それは大量のユーザーを抱えているような大規模な商用 サーバー の話です。個人や仲間内で運用する程度のサーバーであれば、むしろ一般的なパソコンよりも低い性能でかまいません。 サーバー機を構成するうえでむしろ重要なのは、エンジンであるCPUそのものよりも、そのエンジンを搭載するシャーシ(車体)というべき マザーボード の仕様と性能になります。 一般的に、 ホスト機 を組み立てる場合の定石としては、 1.自分が必要としているパソコンの処理能力を想定する。 2.その処理能力にみあうCPUの性能を決める。 3.CPUのメーカー、種類、速度を絞り込む。 4.そのCPUが搭載できる適当なマザーボードを選ぶ。 5.その他のパーツ、 デバイス を選ぶ。 という順序になります。これはサーバー機を組み立てる場合でも変わりはないのですが、1〜3の項目については 「現行の性能のCPUであれば、 サーバー運用にはどれでも充分すぎるほどの高性能」
なので、特に性能を気にする必要はない、と考えていいということです。では、具体的にどの程度のCPU性能で良いかというと、例えば使用する
LinuxOS
が
CentOS5
CeleronやAthlonの1.6GHz程度以上 が目安となります。 パソコン歴の非常に長い方しかお解りにならないかもしれませんが、これは 2000年代前半のパソコンのCPU性能 です。今の標準的なマルチコアCPUに比べると、数分の一の性能しかありません。 なぜこの程度でも大丈夫なのでしょうか。 ホスト機上のCPUは、実は 常に全力で働いている訳ではありません 。 実際のところ、ホスト機が クライアント として使われている場合、電源が入っていてもユーザーが操作や指示をしなければ、CPUはずっと「休憩」したままです。例えば、手を休めてインターネットの記事を読んでいるとか、メールの内容を読んでいるとか、その返事の内容を考えているとか、そういう時間はCPUにとっては「休憩中」ということになります。 ところが、例えば、ワープロで文章を打つとか、インターネットでページを開くとか、メールを送信するとか、そういうふうにユーザーが具体的な作業を開始すると、CPUは休憩をやめて働きはじめます。そして処理が終了するとまたすぐに休憩に入ります。 |
||||||||
| これは想像ですが、普通のユーザーがごく普通にパソコンを使う場合、恐らくそのパソコンは全体の処理能力の5%程度しか使っていないのではないでしょうか。従って、そういう使い方をする範囲では、もうこれ以上CPUの性能が上がっても無意味なレベルまで来ていると言ってよいと思われます。 |
最近のパソコンのCPUは恐ろしいほど性能が良いので、その程度の「軽い」作業ばかりで使われているパソコンのCPUは、 「ちょこっと働いてしばらく休憩。ちょこっと働いてしばらく休憩。」 という具合で動いていることになります。 もちろん、 クライアント機 がこなさなければならない仕事には、もっともっとヘビーなものがあります。例えば画像や映像の処理や、三次元グラフィックスの計算などがそれです。 |
||||||||
| 例えば、わずか一分間の映像処理を考えてみても、それが一秒あたり30コマの映像だとすると、単純計算でも1800枚の静止画を処理するのと同じ仕事量が必要になります。 |
こういう 「重い」 仕事が入ると、CPUは休憩することなく全力で働くことになります。当然、CPUの処理能力が低いと、処理が終わるのに長い時間がかかることになります。特に最近のパソコンは、デジタルビデオの編集や、テレビ番組の受信、録画、編集などの機能が売りになっているようですから、CPUの高性能化はそういう需要に応えるための傾向と考えていいでしょう。 |
||||||||
|
|
一方、サーバ機として使用されてるホスト機のCPUは、どういう感じで働いているのでしょうか。 クライアント機として扱われるパソコンなどのホスト機と違い、サーバー機はユーザーに直接操作されることは稀です。サーバー機の仕事は、他のクライアント機からの要求に答えてデータの受け渡しを行う、という仕事がほとんどです。これはCPUにとっては「軽い」仕事です。 ただし、サーバー機は同時に複数のクライアント機からの要求に答えなければなりませんから、一つ一つの仕事は簡単でも、それを休みなく次々にこなしていかなければなりません。 また、サーバー機は余程特別な場合を除いて、映像処理や三次元グラフィックス処理といった、負荷の大きい処理をしなければならないケースはないといえます。 従って、サーバー機のCPUの働き方は、 「常に簡単な大量の仕事を休みなしにやっている。」 というイメージになるかと思います。という訳でサーバー機には、最近のクライアント用のパソコンに搭載されているような、 大量の処理を短時間で終わらせることができるような高速なCPUは必要ない。 というわけです。
|
||||||||
CPUは「消費電力」でチョイスしましょう家庭用 サーバー の運用程度ならば、数年前の性能の CPU でも充分。ということは、 現行のCPUならばどれでもいい。 ということに落ち着きそうです。 もちろん実用上は、性能が良過ぎて困るということはありません。ただ。ノンストップで動かしつづけなければならない「サーバー」を構築するにあたっては、 CPU性能はランニングコストに影響を与える 。 という点を考慮しなければなりません。 一般にホスト機は、高性能なCPUを使えば使うほど本体の消費電力は増えていきますから、経済的な面ではむしろマイナスになります。 これは想像ですが、 サーバー機 を必要最低限のCPUで動作させた場合と、消費電力を考慮していない高性能なCPUで動作させた場合で比較すると、月額で 電気代数百円〜千数百円は違う のではないでしょうか。 電気代というランニングコストだけではなく、例えば、不必要に高性能なCPUを搭載してしまうと、既存の電源ユニットでは容量が不足するかもしれませんから、容量の大きいものを調達しなければならない可能性があります。また、高性能なCPUはかなりの熱を発生しますから、既存の冷却ファンでは冷却不足に陥るかもしれません。これを交換するにももちろんお金がかかります。
また、容量の大きな電源ユニットや、風量の大きなCPUファンは少なからず静粛性
従って、サーバー機に用いるCPUは、長時間の連続動作が前提であることを考えると、むやみに高性能にしないほうがいいということになります。 先にも述べましたが、サーバー機の主な役目はデータの集配です。これには大してCPUのパワーは必要ではありません。 もちろん、たくさんのサーバー アプリケーション を一度に稼動したり、大勢の クライアント から一斉にアクセスが入ったりすると、それなりにCPUには負荷はかかります。 また、 サーバーサイドアプリケーション を多用する多機能な Webサーバー や、大量のメールを送受信する メールサーバー などを運用する場合でも、それなりにCPUに負担がかかります。 ところがクライアント用途で映像を処理したりすることに比べれば、それでも大した負荷ではありません。 ただ、先に挙げたような「低すぎる」性能の ホスト機 で、なおかつ状態のよいものはなかなか見当たらないかもしれません。また、次の マザーボード のセクションでも触れますが、古過ぎるホスト機は別の意味で問題を抱えてしまう可能性がありますので、ある程度の妥協は必要となります。 ただ、最近のCPUは 「処理速度を高めつつ消費電力を下げる。」 という方向性が強くなってきています。 例えばインテルの Core i3 、 Core i5 、 Core i7 、 AMDの Athlon 、 Phenom など最新のCPUでは、処理量あたりの消費電力はその一世代前の「速さだけを追求したCPU」に比べると格段に消費電力は少なくなってきています。 |
|||||||||
| もちろん以下に説明するように、新しいハードウェアを利用するときは互換性のリスクを伴いますので注意が必要です。 |
また、 WBEL や CentOS をはじめ多くの LinuxOS の ディストリビューション でも、これらの新しい仕様のCPUに対する最適化がかなり進んできているので、こういった新しいスタイルのCPUも狙い目になってきています。 というわけで、自宅用のサーバー機をCPUを基準として選ぶとすると、 2003〜2005年頃の「処理速度だけを追求したCPU」を避けて、その前後の世代のものをチョイスする。 ということになるでしょうか。
|
||||||||
マザーボードは最新版を避ける |
|||||||||
|
|
というよりマザーボードは、CPUだけではなく、接続し得る各パーツ類が「それぞれにバランスの取れた性能」に限定されているのが普通です。 例えば、高速なCPUを搭載できるマザーボードは他のパーツも高速なものを使うことが前提になっていて、一方で、低速なCPUを搭載することが前提のマザーボードは、それに見合う低速なパーツしか取り付けられないようになっているのが普通、という訳です。 しかし、 サーバー機 に古い規格のマザーボードを使うとき、一番問題になると思われるのは搭載可能なパーツの性能や種類ではなく、 搭載可能な メインメモリ 容量の上限 にあります。 例えば先に挙げた CeleronやAthlonの1.6GHz程度以上 というクラスのCPUが標準で搭載されるような世代のマザーボードの場合、メインメモリ搭載量の上限は恐らく 1 GB か、多くても 4GB です。 もちろん、これではWBELやCentOSでサーバー機が動作しないという訳ではありません。簡単な Webサーバー や メールサーバー を運用する程度ならば、これでも充分です。 しかしながら、他にも多くのサーバー アプリケーション 、特に動作負荷の大きい サーバーサイドアプリケーション を多用した動的な コンテンツ を提供する Webサーバー を運用するには、これでは充分ではなくなるかもしれません。 もしも将来的にそういう多機能サーバーを目指すのであれば(というより、そうでなければ自分でサーバーを持つ意味がありませんよね。)、 1GB は最低限の容量であって、少なくとも 2GB 。更に将来的なことを考えるのであれば、 4GB までは増設できるマザーボードを選んでおくべきでしょう。 |
||||||||
| 使えなくなったパソコンは「タダ」では処分できない世の中ですから、「安いから」といって安易に手を出さないほうが賢明です。 |
という訳で「現在手元にある古いパソコンを試しにWBELやCentOS用のサーバー機に転用する」、というような「とりあえず一台余っているから」という場合でない限りは、こういう「レベルが低すぎるクラス」のマザーボードや ホスト機 を調達するのは避けておいたほうがよいでしょう。 |
||||||||
|
2003〜2004年頃といえば、パソコンがただのインターネット端末から、本格的に映像を扱うマルチメディアツールへの変革期にあたり、各メーカーが大量のメモリを搭載できるマザーボードを次々に発表した時期にあたります。
その頃のマザーボードが大容量のメモリを搭載可能であるのは、主にそういう理由からだと想像されます。 |
一方、新たにマザーボードやホスト機を調達しようという場合には、実際にこの「搭載可能なメモリ容量」の部分で悩まなければならないことはありません。パソコンショップで調べてみると解りますが、数千円で買える片落ちの処分品を含めて、現在「新品として」入手可能なマザーボードは、ほぼ間違いなく 4GB 以上のメインメモリが搭載可能だからです。 サーバー機向きのマザーボードの狙い目は、実はそういう 片落ち品のマザーボード です。そしてできれば 最新のマザーボードは避けます。 片落ち品というと聞こえは良くありませんが、大体は発売から半年ないし一年を経過したもので、マザーボードにありがちな「初期不良」が解消されているケースが多いので、発売されたばかりの新製品よりもかえって安心して扱うことができます。
また、マザーボードに搭載可能なCPUは、マザーボードが新しいものほど高性能なものを要求します。その点、少し古めのマザーボードであれば、サーバー機として必要充分の性能でありながら値段の充分にこなれたCPUを搭載可能です。これは、購入費用の節約だけではなく、ランニングコストの節約にもつながります
片落ち品のマザーボードを利用するメリットはまだあります。それは、WBELやCentOSと ハードウェア との互換性に問題が発生し難いということです。 |
||||||||
| ファームウェア :ハードウェアの基本的な動作を制御するプログラム。これの修正が必要な場合、「ファームウェアの アップデート 」なる作業を行うことになりますが、方法が特殊なので結構面倒くさいです。また、作業をやり損なうと、メーカー修理になる可能性が高いので、はっきりいってやりたくない作業のベストワンですね。 |
最新のマザーボードは、まだ市場のスタンダードになっていない、新しい規格のハードウェアが採用されていることがあります。最新のハードウェアの場合、どうしても設計、仕様上のミスや、初期不良がつきまといます。 そういう場合はファームウェアのアップデートなどで対処することが多いのですが、これがまた結構面倒だったりします。 |
||||||||
| 先日仕事用で調達した最新のIAサーバーにRedHatLinuxのインストールを試みたところ、それに特殊な ネットワークインターフェース が オンボード でくっついていたたうえ、付属のLinuxOS用のデバイスドライバに不具合があって大変な思いをしました。 |
また、 OS の発表よりも新しい設計のハードウェアは、OSの カーネル がきちんと対応できない場合が多く、大抵は デバイスドライバ でコントロールすることになります。一方で、 IA のマザーボードは、 WindowsOS での使用が前提になっていますから、そのマザーボード用のデバイスドライバはWindowsOS用しか準備されていないことが多く、 LinuxOS での使用に制限があったり、全く使用できなかったりします。 製品というものは大体そうですが、 「適度に古い」 もののほうが規格がハッキリしていて他の製品との互換性も高く、不具合もかなり解消されているものです。 マザーボードの場合はそれがあてはまる典型的な例で、適度に古いマザーボードはWBELやCentOSの カーネル や デバイスドライバ が標準ですべて対応できる場合が多く、余計な悩みを抱えずに済みます。
|
||||||||
マザーボードの規格などマザーボード にはいくつか規格があります。規格といっても、動作や内部仕様の違いによるものというより、単純に大きさの規格だと考えてください。 |
|||||||||
| その他にも、キューブ型などの更に小さなケースに対応する特殊な規格のマザーボードも市販されていますが、こういうタイプは拡張性が極端に悪いことが多く、選択肢もほとんどありませんので サーバー機 用としてはふさわしくありません。 |
もっとも一般的なマザーボードは ATX と呼ばれる規格のもので、普通に入手できる最も大きなサイズです。 ATXは、高さ305mm(12インチ)、奥行き244mm(9.6インチ)。一般的な機能の拡張に使う PCIスロット が5、メモリスロットが3〜4程度あります。グラフィック機能は搭載していないのが普通で、 PCI Expressスロット 、 AGPスロット またはPCIスロットなどの拡張スロットに別売のカードを取り付けることになります。 ATXはサイズが大きいので、 ミドルタワー以上の大きさのケース でなければ格納できませんが、マザーボードの規格の中では最も種類が多く、セール品も豊富に出回っています。ミドルタワー以上のケースを使用するつもりであれば、迷わずこのタイプを選びましょう。ただし、グラフィック機能が搭載されていないものが多いので、これは別に入手しなければなりません。 次に種類が多いのは、 microATX と呼ばれる規格のものです。 microATXは、高さ244mm(9.6インチ)、奥行き244mm(9.6インチ)と、ATXよりも一回り小さく、その分拡張スロットも3程度、メモリスロットも2程度と少なめです。ただ、拡張性が低いことをカバーするために、グラフィックが オンボード であることが多いのですが、グラフィックの性能そのものは低めです。 microATXはもともとミニタワー型ケースやスリム型ケース用の規格なのですが、取り付け穴の位置には互換性があるため、ミドルタワーやフルタワーなどの大きなケースにももちろん格納できます。ただこの場合、ケースの中身はスカスカになります。 |
||||||||
| 例えば音楽をいい音で聴くためのサウンドカードとか、テレビを視聴するためのチューナーカードとかですね。そういうものはサーバーに取り付けても意味がないわけです。 |
一般的にいうと、 メインメモリ スロットや拡張スロットは多いほうが後々安心です。ただし WBEL や CentOS で サーバー を運用する場合、 クライアント機 のように パソコンを便利に使えるようにするための拡張カードを追加することはまずありません から、あまり大量に用意されていても意味がありません。 しかし例えば、 オンボード の ネットワークインターフェース がWBELやCentOSの カーネル や デバイスドライバ でうまく動作しない場合は、 BIOS を呼び出してそのオンボード機能を停止し、別の拡張カードを購入して PCIスロット に取り付け、使用せざるをえなくなるケースもあります。 その他にも、例えば ハードディスク の数を追加したくなって、将来ハードディスクインターフェース用のPCIカードの増設が必要になることは充分に考えられます。 ただ、それでもPCIスロットは3つもあれば充分ですから、実はmicroATXでも事実上困ることはまずありません。むしろmicroATXはオンボードグラフィックでありながらATXより価格が安い場合が多いので、ATX+グラフィックカードを購入というパターンよりも安上がりになります。 という訳で、そういった構成がサーバー用途として必要十分であるならば、実はmicroATXのほうがオススメかもしれません。 |
||||||||
| もちろん、最初から大量のメインメモリを搭載しておく予算があれば、メモリスロットの数は少なくても問題はありません。ただ、一本あたりの容量の大きな メモリモジュール は、それなりに高価です。 |
ただ、microATXはメモリスロットの数が少ないために、 「とりあえずメインメモリを1 GB で運用を始めておいて、足りなくなったら少しずつ買い足そう」 というようなステップアップが採りにくいという点には気をつけておく必要があります。 また、市販されているマザーボードの種類はmicroATXよりもATXのほうが圧倒的に多いので、選び易さからいえばATXのほうが有利といえます。 マザーボードには、大きさの規格のほかに、仕様上の規格もあります。その中で一番重要なのは 搭載可能な CPU の種類 です。 IA のマザーボード用のCPUは数社から販売されていますが、現実にはその大部分が米国インテル社製と、同じく米国AMD社製で占められていますので、実際にはどちらかのメーカーのCPUを選ぶことになります。 |
||||||||
| 2011年3月現在、現行の主なCPUソケットタイプは、インテル社製が LGA775 、 LGA1156 、 LGA1155 、 LGA1366 、AMD社製が socket939 、 Socket F 、 Socket AM2 、 Socket AM2+ 、 Socket AM3 などとなっています。各々の数字は、CPUから生えている「接続ピン」の数で、一般的にこれが多いものほど新しいタイプと考えて間違いありません。この部分が桁数の多い数字ではなかったり、アルファベットだったりする場合は、CPUソケットタイプをピン数で表す習慣ではなかった昔のタイプか、もしくはその逆で最新の規格と考えてください。 |
どちらのメーカーの製品も、用途に応じて色々な価格帯のCPUラインナップを揃えていますが、マザーボード側の「搭載可能なCPUの規格」に合わないものは当然使えません。 その規格には、 CPUソケットタイプ と呼ばれる、CPUとマザーボードの接続部の形状(接続ピンの数と配列)、と、内部動作の整合性による制限の二種類があります。 CPUソケットタイプは、現行品で各社数種類ずつ存在しますが、これは製品やカタログに明記してあるのでまず間違えることはありません。ただ、ソケットタイプが全く同じであっても、例えば、 「Aのマザーボードは、Pentium4の2.8GHzまでしか搭載できないが、Bのマザーボードは3.4GHzまで搭載可能」 のように、内部動作の整合性による制限を受けることがあり、これはある程度CPUの ハードウェア 上の仕様の違いが理解できなければ、容易に判断することはできません。 一般的には動作クロックが大きいCPUのほうが処理速度は速く、また消費電力は大きくなる傾向にあるのですが、このパートで先に説明したとおり、最近のCPUは内部構造の工夫で「処理速度を上げつつ消費電力を抑えた」タイプのものが出回っています。 |
||||||||
|
|
最新のCPUとそれが利用できるマザーボードを組み合わせるわけですから、それなりの出費は覚悟する必要はありますが、これで「24時間365日稼動」が前提のサーバーを運用することを考えると長い目で見れば電気代などの面でかえってお得かもしれません。 つまり、中途半端に古いマザーボードを選んでしまうと一世代前の「処理速度と引き換えに消費電力の大きなCPU」しか搭載できない可能性があり、 「サーバー用途として性能と経済性のバランスのとれたマザーボード」 というのは選定が難しくなってきているという現状があるわけです。 そこでお勧めは、 1.「省電力型のCPUが利用できない古いマザーボードでは、できるだけ動作クロックの低い(すなわち価格の安い)CPUと組み合わせて。」 2.「省電力型のCPUが利用できる新しいマザーボードでは、多少価格が高くても省電力型CPUと組み合わせて。」 という二種類の選定のいずれかになるでしょう。 その他に仕様上注意すべき点は、例えば接続可能な ハードディスク の種類と、 ネットワークインターフェース の規格です。 これらの規格がWBELやCentOSと互換性がなければ、このセクションの最初に説明したように、拡張カードでの対応を余儀なくされます。その場合は当然それなりの追加予算が必要になります。 そういう意味では「ハードウェアはちょっと苦手...」という方の場合、ここは安全に 1. を選択したほうが間違いはないと思います。
ハードディスクとネットワークインターフェースについては、
|
||||||||
その他細かいこと市販されている マザーボード の大半は台湾製です。 インターネットでマザーボードメーカーのオフィシャルサイトに行くと、中国語版と英語版のマニュアルでしたら大抵のものがダウンロードできます。場合によっては、日本語のマニュアルがダウンロードできることもありますので、選定の参考にしてください。 マザーボードのメーカー名は、あまり聴きなれないものばかりのはずです。従ってメーカーの名前から信頼性を推し量ることは初心者にとっては難しいことかもしれません。もちろん、品質の良い製品を作るメーカーのマザーボードは、パソコンショップやインターネット通販などでたくさん取り扱われています。 もし、自分で「これは」と思うマザーボードを見つけたら、それと同じメーカーの製品を通常の陳列棚から探してみてください。そこでかなりの数が見当たるようならばブランド的には合格、というので良いと思います。 |
|||||||||
| 後々のことを考えると、そういう付加機能はむしろあったほうがいいかもしれません。例えばサーバー運営を挫折して、仕方なくクライアント機に転用することだって、あり得ないわけではありませんから。 |
また、市販のパソコン用マザーボードは、 クライアント機 として使うことが前提になっています。従って、 サーバー機 ではまず必要のない機能や入出力ポート関係がいろいろくっついているのが普通です。 |
||||||||
| こういう付加的な機能はマザーボードの BIOS の設定で ハードウェア レベルで 無効 にすることができます。ハードウェアレベルで無効になったマザーボードの機能は、 WBEL や CentOS からみると「存在していない」訳ですからトラブルの原因になり得ません。これが「あっても邪魔になることがない」理由です。 |
例えば、 USB ポート、 IEEE1394 ポート、サウンド関係、無線 LAN 、ゲームポートなどがこれに当たると思われます。ただ、これらは「不要」ではあっても「邪魔」になることは滅多にありません。従ってこういう付加機能の部分は「あってもなくてもかまわない」と思います。 サウンドや無線LAN、ゲームポートが サーバー にとって不要であることは説明するまでもないと思います。しかし、外付け用の高速な ストレージデバイス の接続に利用できるUSBやIEEE1394は、単純に考えればサーバー機を利用するうえでも便利なもののはずです。もちろんこれらはWBELやCentOSでも標準でサポートされていますので、きちんと使うことができます。 しかしサーバーは本来、システムの堅牢性や セキュリティ を重視してディスクシステムを構築すべきものです。ですから安易に付け外しができるストレージデバイスを、サーバーのディスクシステムの一部にしてしまうのは好ましくない訳です。 USBやIEEE1394は、ホスト機に内蔵して使うことが前提のストレージデバイス用のポートに比べてはるかにトラブルが多く、また、トラブルが発生したときの対処も、 クライアント 用途が主目的の WindowsOS や MacintoshOS のように簡単ではありませんから、そういう意味でもサーバー上での使用は避けるようにしましょう。
|
|
|
ケースと電源
<<Previous
|
Next>>
メモリとグラフィックカード
|
| このサイトは既に更新を終了していますが、今のところ店じまいの予定はありません。 リンクフリー ですので、趣味や勉強のためでしたら、引用、転用、コピー、朗読、その他OKです。このサイトへのリンクについては こちら をご覧ください。 |
| ”Linux”は、Linus Torvalds 氏の各国における登録商標です。”Red Hat”及びRed Hatのロゴおよび Red Hat をベースとしたすべての商標とロゴは、各国におけるRed Hat, Inc. 社の商標または登録商標です。その他のプログラム名、システム名、製品名などは各メーカー、ベンダの各国における登録商標又は商標です。 |