Windowsサーバを構築するとき、ちょっと考えてしまうのが「Cドライブの容量をどうするか」です。
マイクロソフトから、「このサーバOSはこのくらいの容量のディスクにインストールしてください」的な指標が出ているのですがそれは最低値なので、当然それ以上の容量が要ります。
OSの他にはアプリケーションが入りますね。
サーバOSにいれるアプリケーションはだいたい容量がでかいです。
普段クライアントPCしか触っていない人には、ちょっとびっくりすることもあるかも知れませんね。
他にはなにがあるでしょう。
ログはログサーバに送ってしまうのでサーバ自身には貯まらない前提としましょう。
でも、収集するログってほんとに「すべてのログ」ですか?
ログのローテーションを「すべてのログ」に対して行えますか?
そもそもどんなログが出るのか網羅出来ているでしょうか。
そのサーバを何年使用するつもりなのか、も把握しておく必要があります。
OSのログだけならそんなに気にすることもないのですけど、アプリケーションのログファイルも結構見過ごせるものではありません。
必要であれば構築前にベンダーにそのアプリケーションはどういったログが出力され、クライアント数n台の環境ならどの程度のログファイルが発生するのか、また退避する際にはアプリケーションを終了する必要があるのかなど聞いておく必要があるでしょう。
ディスク容量を論じる際に気にかけなければならない項目がOSサイドでまだ存在します。
仮想メモリファイルとメモリダンプです。
・仮想メモリ
実装された物理メモリだけでサーバの動作をまかない切ることは出来ません。
そのためHDD上に予約された空間を作成し、必要に応じてメモリとして使用します。
昔のOSでは(システムドライブには仮想メモリをおかずにそれ以外のドライブに設定するべき」となっていました。
これは近年では(WindowsOSの場合)OSに自動的に設定させるほうがパフォーマンスが良いとされています。よって現在は無視してよいでしょう。
・メモリダンプ
これはサーバがクラッシュした場合に障害調査のためメモリ上に載っていたデータを次回起動時にダンプファイルとしてHDDに吐き出す設定を指します。
推奨値は「完全メモリダンプ」となるのですが近年は大変たくさんのメモリを搭載するサーバが増えてきました。
このメモリダンプを完全メモリダンプにするとメモリ搭載量と同じだけのディスク容量が必要となります。
つまりCドライブに完全メモリダンプを吐くように設定してしまうと、クラッシュ後の起動時にシステムドライブに数十GBのファイルを作成してから起動することとなります。
理想は「システムパーティションが置かれていない別ドライブのパーティションに設定すること」ですが、そんなものはないということもありますので次善の策として「システムパーティションではないシステムドライブ(Dドライブなどとして設定)が考えられます。
*「パーティション」「ドライブ」などがよくわからない方は別途説明するので教えて下さい。
データベースサーバというのがありまして、その名の通りデータベースが起動しています。
設計上「データベースサーバ」とされているものは何らかのアプリが必要とするDBを提供することを前提としているのでそのように設計されています。
具体的には、ストレージ製品のほうであらかじめ専用パーティションを何TBとか作成しておき、それをEドライブ等としてマウントさせるわけです。
そして肝心のデータベースソフト(OracleとかMSSQLとかPostgresとか)はそのEドライブにインストールするといった運用ですね。
もちろんサーバを利用する何年かの間にどれほどDBが肥大するのかを計算したうえでパーティションサイズを決定します。
と、ここまでは良いのですが問題は設計時に想定していなかった(想定から漏れていた)DBです。
よくあるのはバックアップソフトですね。
数多のバックアップソフトはだいたい内部にDBを持っています。
バックアップソフト本体インストール前に、SQLExpressをインストールするようになっていたりしますね。
このDB、どこに配置されるかというとだいたいはApplicationRoot(端的に言えば「C:¥Program Files¥~~」です。)
もちろんインストールする際に、どこにインストールしますかと聞いてくれるのですけどおおむね既定値「C:¥Program Files¥~~」で進められてしまいます。
このままで運用を続けると、Cドライブはあっという間に埋め尽くされ、あるいはフラグメントが発生し(最近のOSはうまくやってくれるようですがそれでも)一気にサーバパフォーマンスが落ちてしまうことでしょう。
こういった場合は別パーティションにインストールすることをおすすめ致します。
もしもあなたが構築要員で、バックアップソフトウェアのインストールを任されて、設計書を見ながらインストールしているけどもインストール場所について設計されていない、または既定値でインストールするよう求められていたとしても、DBを入れる際にはリーダーに相談してみてください。