Cuturnの適当日記

徒然なるままに適当に駄文を吐き出しております

仮想化しちゃいけないシステムって何だ

今仮想化しちゃいけないシステム、あるいは少なくとも1つの基盤上で、ホストとストレージが停止する可能性を考慮したシステムとして考えた時に、仮想化しちゃいけないシステムって何だろうなぁって思った。

1.NTPサーバ

時刻同期サーバを仮想化すると、結構よくわかんないことになりますね。一体NTPサーバはハードウェアを見てるのかソフトウェアを見てるのか…。仮想化していると、起動時にホストの時刻につられて超絶ずれたりする可能性もありますし、(でもそれってハードでもいっしょ?うーん)仮想化すべきじゃないんじゃないかなぁと思ってEB600とかお仕事用のどうでもいい基盤向けに買いました。

少なくともKVM上でNTPサーバを仮想化させて動作させたときに、一回妙な動きをしたことがあったので仮想化はやめてます。

2.DNSサーバ

ESXi⇒vCenter に関しては、登録されるときESXiホストにvCenterのIPアドレスを伝えるので例えDNSサーバが死んでいてもとりあえずは問題ないはず…。

vCenter⇒ESXiについてはそういえばDNS名で登録しているので(私はhosts使ってるけど)、DNSサーバが起動するまではvCenterからホストを管理できない可能性がある。

3.ADサーバ

これは沢山の人が仮想化するなって言っている。理由は、クローン時のIDの問題と時刻同期精度が低いという2つの理由が主だったか。そんなに時間がずれさえしなければ多分問題ないと思うんだけど。Windows
Server 2012以降はクローンに合わせてIDを変えてくれる機能があるのでvSphere 5.1 やHyper-V 2012では安心。

4.DHCPサーバ

これはすごく当たり前なのだが、DHCPサーバが仮想化されていたら、一体ホストが最初起動するときに何を見ればいいのか、という話。もちろんホストや仮想化基盤自体は固定IPだよというのであれば仮想化しても問題ないです。

5.その他時刻に対してシビアなシステム

気付いたら5分くらい遅れてるみたいなことが許容できないシステムは仮想化しちゃいけません。色々な兼ね合いでずれると思います。というかサーバの選び方やBIOSUEFI設定も考える必要があるかと思います。EIST切ろうぜ、とか。

      • -

今のところ上記の5パターンくらいに考えてますけど、監視サーバはどうかなぁとか、仮想ファイアウォールってありなのかなぁとか考えてます。まぁ少なくとも論理ネットワーク上でストレージとホストの間に仮想ファイアウォール挟むバカはいないと思いますから、問題ないとは思っていますが。

監視サーバはストレージが死ぬと死んでメールも飛ばなくなるという超危険性があるので、なるたけ冗長化して、かつ各々は別のストレージに置くかそもそもHDDに置くのが望ましいです。私はどうでもいい基盤を作ったときは、HDD上に置いてバックアップを共有ストレージ上に置いて、別ホストに2台構成で、としました。HAはできないですけどとりあえず2号機あるし、いいかなと。まぁこれはこれで1台まるっと死んだときクラスタ切り替えうまくいかなかったらどうしようみたいなどきどきがあるんですが…。