XenServerでサーバ仮想化+DeleGateでグローバルIPひとつを使い回す

『社内に開発環境がない!』
ということで、なるべくコストをかけずに開発環境を量産してみた。

概要

今回やることの全体図はこんな感じ。

  • 無線LANルータのNAPT、多機能ゲートウェイ/プロキシサーバのDeleGate、サーバ仮想化技術のCitrix XenServer5を利用。
  • XenServerは無償のExpress Editionを利用。同時実行VM数や、使用できる物理メモリ容量、使用できる物理CPU数に制限があったり、XenCenterから複数のXenServerを管理できない、ライブマイグレーションができないなどの制限があるけど、、開発環境を作る上では十分な機能を備えてる。
  • DeleGateを通して各仮想マシンSSHで行けるようにする(無線LANルータのNAPTでもできるけど、DeleGateの練習も兼ねて)。
  • DeleGateのリバースプロキシ機能によって、HTTP(80)、HTTPS(443)*1を別サーバ・複数ドメインで外部公開する。
  • 仮想マシンのホスト名やIP割り当てはわかりやすいように次のようなルールにした。
物理サーバ VMのホスト名 IP割り当てルール
xensv01 vm1x- + OS名 192.168.11.11〜
xensv02 vm2x- + OS名 192.168.11.21〜
xensv03 vm3x- + OS名 192.168.11.31〜
  • ノートパソコンにインストールしたXenCenterを使って、各XenServerを管理する。

無線LANルータ

わかりやすく、無線LANルータのWAN側IPにドメインを振っておく。dev.hoge.jp
NAPT機能を使って、WAN側へのアクセスを192.168.11.2へ流すように設定。


続きはこちら。

DeleGateのインストールと設定

DeleGate 9.9.0のインストールと設定 - yuhei.kagaya

*1:HTTPSのプロトコル的に、複数の証明書を1つのIPで公開することが無理。。。