この章では、さまざまな用途に応じて、NetServer で Linux を使用する場合のサイジングに役立つ事項を取り上げます。
このようなことは少々冒険が伴うと考える必要があります。 また、実際に、試してみるほかに方法はありません。 しかし、過去のソリューションの実例から得られた経験を使用して、有益なルールをいくつか示すことができます。
伝統的な Unix サーバーのサイジングに有効なルールの、かなり多くのものが Linux の場合にも適用できるでしょう。たとえば、Intel プラットフォームの現時点でのアーキテクチャは 32 ビットで、使用されるバイナリが小さいため、CISC システム(Linux 環境での多数派)に必要なメモリ・リソースは、RISC システムに比較して 2.5 倍少なくて済むなどです。 これは、ディスクやスワップ領域にも影響を与えます。
たとえ、どのようなシステムでも、ソリューションのボトルネックを明らかにすることを考慮しなければなりません。そうすれば、システム全体での最も弱い点が決定されます。
特に、次のような点を調べてみる必要があります。
ディスクの数と速度(10.000 rpm のディスクの I/O レートは最大 15 MB/s に達します)
SCSI コントローラの数と速度(LC2000 - LH3/4/3000/6000 の Ultra2 LVD の I/O レートは最大 80 MB/s に達します)
低速の周辺機器(DAT、DLT、CD-W など)を追加する際には、コントローラが低速の互換モードになり I/O 性能が劇的に低下するのを避けるため、SCSI カードのサポートを追加する。
また、マシンの拡張機能を疑ってみる必要もあります。 実際に、1 台のサーバーの容量を増大するよりも、新たにサーバーを追加する方がメリットのある場合がよくあります。 第一の理由は金銭的なもので、既に陳腐化したシステムのアドオンのコストは新しいシステムのコストと変わらないなど、システムのコストはどんどん低下しています。 メンテナンスにかかるコストも同じです。 第二の理由は技術的なもので、最新のテクノロジを使用し、より安定した強力なマシンを使用する方が大きなメリットが得られることがあります。 たとえば、Ultra2 LVD が出現したとき、40 MB/s Ultra Wide SCSI のサーバーをアップデートするコストと余り変わらないのであれば、80 MB/s SCSI バス速度のメリットが享受できる新しいテクノロジのサーバーを購入する方が魅力的でした。 したがって、最初からサーバーのサイジングを正確に行うには、その予想耐用年数(現時点では、通常は 3 年)を考慮する必要があります。
また、同じように、デュアル・プロセッサ・マシンを 1 台使用するかシングル・プロセッサ・マシンを 2 台使用するかも、詳細に検討する価値があります。 2 台のシステムを使用すれば、ディスク・コントローラやディスク・セットの数も 2 倍、また、RAM のバスも 2 つに分離され、性能は向上しますが管理が複雑になります。 一方、単一のシステムなら管理は簡単で、プロセッサ間の通信も高速に行われます。これはアプリケーションによっては必須の場合があります。ただし、システムの脆弱性は増加します(ハードウェアに障害が発生するとダウン・タイムが発生します)。また、マルチ・プロセッサ・モデルでは、システム・レベルでのプロセッサ間の通信が必要で、本質的なロスが発生します。 この問題は、主として、新しいサーバーを追加するのではなく、マシンに後から(必然的に時代遅れの)プロセッサを追加する場合に考慮すべき問題です。
メモリの面では、現時点の Linux の安定したカーネルでは、最大 64GB まで管理することができます。Linux では、主として、システム・パフォーマンスを劇的に改善するキャッシュ・ディスクの構成に基づいて、搭載したメモリから最大の容量が使用されます。サーバーにスワップが発生すると劇的にパフォーマンスが低下するため、そのような場合は搭載する RAM の容量を増やすのが賢明です。NetServer の最小 RAM 容量(64 または 128MB)は通常のシステムの使用に適合しているため、特に増やす必要はありません。運用サーバーではグラフィカルな環境は使用されないことを考慮する必要があります。スワップに関しては、Linux では、RAM のほかにサーバーで使用可能な完全な仮想メモリとして使用されます。基本的なルールとして、RAM と同じ容量のスワップ空間を用意し、必要に応じてシステムが実効プロセスのほとんどすべてをディスクに格納できるようにすることをお勧めします。System V Unix(HP-UX など)の場合の RAM 容量の 2 倍のルールは Linux には適合しません。Linux では、非アクティブ・プロセスをディスクにスワップして、最大の RAM 容量を使用できるようにしています。スワップを使用していても、それがメモリの不足を示しているのでも、パフォーマンスの低下を意味するものでもありません。
Linux での HP NetServer の使用形態に基づく推奨事項を下記に示します。同一のサーバー上にいくつかのサーバー機能を構築できます。その場合は、そのサービスに必要なリソースを追加する必要があります。
考慮すべき一般的ルールは、次のとおりです。
同時接続ユーザー数は、サーバー上の全ユーザー数の半分と見なします。
使用に耐える Linux サーバーに必要な最小 RAM 容量は 32MB で、NetServer の最小 RAM 容量(64MB)には十分余裕があります。 ただし、このマシン上で KDE または Gnome を使用するために X-Window を使用する場合は、さらに 64MB、つまり最小容量として合計 96MB の RAM が必要です。
使用に耐える Linux サーバーに必要な最小ディスク容量は 2GB で、NetServer の最小ディスク容量(9GB)には十分な余裕があります。
Raid 1 を使用する場合は、実際に必要なディスク容量の 2 倍の容量が必要です。 Raid 5 を使用する場合は、実際に必要なディスク容量のほかに、ディスクを 1 台追加する必要があります。
特別な場合(計算サーバー)を除き、スワップの容量は RAM 容量と同じにします。
使用に耐える Linux サーバーに必要な最小プロセッサは Pentium 133 で、NetServer の最小プロセッサ(Pentium II 450)には十分な余裕があります。
サーバー上でクライアントを実行する各 X-Window ユーザーに対して、平均 2MB が必要です。
このタイプのマシンには、トラフィックを円滑化するため、クライアント数に応じてネットワーク・カードを追加すると効果的です。