Sunday, October 18, 2009

Computer::MailServer - 仮想マシン上でメールサーバを構築

Postfix+Dovecotを使って、自宅にてメールサーバを立ち上げようと思っています。
メールサーバをHigh Availabilityな構成にしたい気持ちはあるのですが、
メンテナンスの手間だったり機材の費用だったりの問題で、
自宅で実現するにはちょっと敷居が高いです。

ということで考えた構成がこれです。
まずRAIDを組んでいないWindowsPCに、VMware Playerを使ってCentOSを走らせます。
仮想マシンのディスクはqemu-imgで作ります。
作るディスク(vmdkファイル)はCentOS用ひとつと、spool・home用のディスクをふたつです。
CentOS用ディスクのファイルとspool・home用のディスクのファイルをそれぞれ一つ、
WindowsPCにおいておきます。
もう一つのspool・home用のディスクのファイルをNAS上に置いておきます。
NASじゃなくとも別のディスクに置いておけばOKだとは思いますが、
うちの場合、

・WindowsPCに乗っているもう一枚のディスクは、Windowsを入れているディスクと
 使用開始時期が同じなので、壊れる時期が近そうだから怖い
・BUFFALOのRAID1 NASがあるから、耐故障性を上げるためにNASを利用したい

という理由でNASに置いておきます。
eSATAのRAIDディスクがあればね、そちらに置くのがよいのでしょうけど、
うちの構成としてはこれでいきたいと思いました。


spool・home用のディスクのファイルを二つ用意したのは
Software RAID1を使うためなのですが、
実はCentOSのインストールを済ませたあとに追加するというお話になりまして。

CentOSを仮想マシンとして入れていた理由は、VPNサーバを立てたかったからなのです。
なのでXも入れていません。

そんなわけで、こちらのサイトを参考に、コマンドラインでSoftware RAIDを構築しました。

ネットワークはギガビットですし、おもな用途がメールサーバなので、
まぁパフォーマンスは特に問題にならないかと思っています。
あとOSを入れてるディスクのvmdkのバックアップを取っておけば、
WindowsPCが壊れても、他のWindowsPCにVMware Playerをインストールすれば
すぐ復旧できます(バックアップはRAID1のディスクに保管しておきます)。
なんせspoolとhomeは別のディスクに分散させてミラーリングさせてますから。
一応UPSはかましているので、あと怖いのはLANケーブルの断線とかぐらいですかね。
予備持っていない・・・こともないですけどCAT5eだったっけか?違ったような。

お酒を飲みながらやっておりまして、
ちょっとめんどくさくなってきたので(笑)ここで中断です。
実際に稼働させて、メールの送受信のテストまではやれていないのです。
ま、ドメインは既に取得済みですし(still-ai.netではなく、お仕事用のやつ)、
午前中に内部DNSサーバで名前解決できるよう設定しておきましたし、
あとはPostfix、Dovecotの設定をすませて、ルータに穴あけて、動作確認ですね。

お金があれば、サーバ用途のタワー型マシンを二台買って、
heartbeat+drbdとかやればいいのかな。
これから冬ですからいいですけど、夏の室温がほんとやばいので、
あんまし機材を増やしたくない私としては、
この方法でメールサーバを運用していこうかと思います。

No comments: