- PR -

XenServerでの一番簡単なネットワーク構築方法

1
投稿者投稿内容
会議室デビュー日: 2009/03/28
投稿数: 2
投稿日時: 2009-03-28 12:19
みなさま、お世話になります。

前任者が突然退職し、なんとネットワーク関連のスキルのない私が、
現在発注中のサーバマシン(Dell T300)2台でLANを構築することになってしましました。

社内のLAN内のサブネットワークなのですが、
グローバルIPアドレスが1つとサブドメイン1つが割り振られている状態です。
(これは、独立のネットワークを組めるということでしょうか)

2台のサーバは、それぞれXenServerでVM10程度作成してwebサーバとして利用する事になっています。

サーバー名をXen_s01、Xen_s02 VMにそれぞれs01vm1、s02vm1・・・のようにホスト名をつけ運用します。

まず、最低限必要なものは、ルーターだということは解るのですが、
静的IPマスカレードで各サーバにプライベートIPを振るだけでなんとかそれぞれのVMからWeb公開が出来るのでしょうか。

XenServer自体も初めてで、VMのプライベートIPがルーター側で設定出来るのかも実はよくわかっていません・・。

あとはDNSサーバーも必要ですか?

サブドメインが割り振られてはいますが、VMのWeb公開は別レジストラで取得したドメインでそれぞれ運用する予定です。
こちらは、レジストラでDNSの設定が出来ますが、WAN以下の名前解決がどうなるのか、
この辺も併せてご教授いただけませんでしょうか。

本当に質問さえ解っていただけるように書き込めない状態で、本当に申し訳ありませんが、どうぞ宜しくお願いいたします。
kaz
ぬし
会議室デビュー日: 2003/11/06
投稿数: 5403
投稿日時: 2009-03-28 19:12
こんばんは.

まず,仮想化しない場合のそれらのサーバの構成は想像できますか?
仮想化してもそれらと概ね同じようなものです.

Xen は C*trix のものですか?
それとも一般的な Linux Distribution のもの?
2台あるようですが,冗長化するのでしょうか?
機器の性能がわかりませんが,10VMs は結構多いように思えますけど,
サイジングは適切ですか?

物理的な network interface が複数装備されているなら,
内部用と global 用に分けると良いと思います.
物理的に分けた network をそれぞれ
firewall の dmz/internal 用の port に接続するとわかりやすいでしょう.

個人的には,global 用の VM にはそのまま global IP address を
設定した方がわかりやすいと思います.
伝統的な手法で NAT/NAPT を使うのも良いでしょうけど,
dns での名前解決とか考えると面倒かもしれません.
※よくご存じであればどちらでも.

network を物理的に分けられれば,仮想化しない場合と同じように考えられます.
Xen の中で VLAN を分けることもできますが,
その場合もわかりにくくなると思いますので,今の段階ではお奨めしません.
※今後いろいろと学ばれた後に変更すればよいと思います.
IP address はそれぞれ静的に割り当てて固定して設定することをお奨めします.
router の機能を使わずに,仮想環境上に直接設定しましょう.

global 向けの名前解決は dns server でやるとして,
dns server も仮想環境でしょうか?
内部向けの名前解決は必要ないのでは?
IP address で接続すればよいと思いますが,
敢えて名前解決したいのであれば,
dns server で global/内部向けそれぞれの名前解決をすれば良いと思います.

と,とりあえず思いついたことを.
さしあたりいろいろやってみて,ご自分でわからないことや
うまくいかないことを具体的にして,ここに書き込まれることをお奨めします.
「こうやったらこうなった」とか「こうしようと思ってこうしたらできない」とか
書いていただくと,もっと具体的なやり取りができると思います.
たらお
大ベテラン
会議室デビュー日: 2006/12/25
投稿数: 206
お住まい・勤務地: 東京・永代通り
投稿日時: 2009-03-29 10:52
まずは、お疲れ様です。
果てしなき創造の世界へようこそ。
とは言っても手法は確立してますが。

構成的には、一般的にkazさんの説明どおりだと思います。
ごく一般的な構成を書いて見ます。
レイアウトの都合で、インターナルとDMZをひねって書きます。

コード:

 (ユーザPC)
   |
   |
(インターネット)──[DNS:レジストラ]
   |
   |GIP
  [ルータ]NAT設定 TCP:80,443,20-21 をサーバへ
   |
   |
[ファイアウォール]──(インターナル) #この接続はオプションですね
   |DMZ
   |
  [HUB]──Xen_S01──┐  ↑インターナルへ
   └──Xen_S02──[HUB]─┘帯域重視の場合は、DMZ2とか




胆になるのは、ユーザのリクエストは、全てひとつのGIPへ向けて飛んできますが、
このリクエストのHTTPヘッダを見て、それぞへのサーバIPへスイッチする機能を、
どこに実装するのかということになります。443は1台だけに限定かも。

・ルータでも可能ですが、機種依存し、あまりお勧めではありません。
 ルータはNAT時のスループットが高く安価なものを選択して、
 ルーティングとNAT以外の仕事をさせたくないですね。

・ファイアウォールでも可能です。最近では負荷分散なども柔軟に対応できます。
 各仮想サーバをリニアにActive-Active冗長するなら必須でしょう。
 サーバ側での冗長設定が不要になります。図のDMZ2構想にもマッチします。

・WebサーバのバーチャルHOSTを利用する。
 あまり仮想化のメリットを感じませんが、枯れた手法ですね。
 メインのWebサーバで受けて、リダイレクトする手法です。

・仮想サーバの1台を負荷分散にしちゃう。
 時間の制限がゆるければ、ぜひ取り組みたいところです。
 学習的な要素が高ければ、これもありだと思います。

ということで、ポイントになるのは、冗長構成の要件ですね。
Active-Standbyで良いのか、Active-Activeなのか、
将来のスケールアップ時の冗長をどう見据えるのか、

また、本件の仮想化により、従来のバーチャルHOSTとの差別化をどう考えるのか?
その差別化のメリットは、仮想化の工数をペイできるのか?
その辺が見えてないと、ただ仮想化してマシン負荷増やしてることに;。

_________________
_福田太郎_
会議室デビュー日: 2009/03/28
投稿数: 2
投稿日時: 2009-03-30 03:29
kazさま、たらおさま

ご返信、本当にありがとうございます。

お二人のご回答を参考に、解らないことや理解できないことを一日かけてネットで検索などさせていただきました。

今回、CitrixのXenServerでVMは全てWebサーバとして利用したい考えです。

営利目的のものでは全くないのですが、イメージとしてはVM毎に貸し出すレンタルサーバとお考えいただくとかなり近いかもしれません。

各VMには、これもレンタルサーバで良く実装されているPlesk control panelを入れます。
Plesk上からWebアプリケーションに使うMySQL等の設定などの他、BINDも弄れるようですし、利用可能なIPの選択などもGUIで設定可能なようです。

2基のサーバはActive Standbyで冗長化して利用するつもりでしたが、
kazさまのおっしゃるとおりに、ハードサイジング的に10VMsが無理なら、2基併用で10程度に分けて使わなくてはならないかもしれません。
冗長化はそのご予算をつけて導入したいと思いますが、
当面そうなるとGIPが最低もう一つは必要ですね。

さて、たらおさまのおっしゃることを参考に、
サーバIPへスイッチする方法として、
ハード型ファイアーオールのL4/L7スイッチというものを探し出したのですが、
こちら、非常に高価なものばかりで残念ながら手が出そうにありません。
(300万円以上しています・・)

そこで、何とか他の方法をといろいろ考えてみると、
上記のような負荷分散処理が出来ない場合、
やっぱり、グローバルに公開をするならVMそれぞれにユニークなGIPはどうしても必要なのじゃないだろうかと・・行き着いております。

もし、kazさまのおすすめ通り、VM毎にGIPを設定することが可能な場合、今度はNICはVMの数だけ必要ですか?
また、WAN側ポートが複数付いたルータなども見たことがないので、
ルータも複数必要になってきますでしょうか?

kazさまのおっしゃるとおり実際にやりながら質問させていただくのが良いのだろうとは思いますが、
最低限必要なものが解ってきませんと、不安でなりません。

今は、考えればどんどん不安になるばかりです。

当初の質問通り、「一番簡単なネットワーク」で結構ですので、
もうしばらくお知恵をお貸しいただきますようお願いいたします。

また、必要な構成で具体的な機器のメーカー等も併せてお教えいただけますと大変ありがたいです。

どうぞみなさま宜しくお願いいたします。
kaz
ぬし
会議室デビュー日: 2003/11/06
投稿数: 5403
投稿日時: 2009-03-30 13:00
こんにちは.
引用:

兎さんの書き込み (2009-03-30 03:29) より:

今回、CitrixのXenServerでVMは全てWebサーバとして利用したい考えです。

営利目的のものでは全くないのですが、イメージとしてはVM毎に貸し出すレンタルサーバとお考えいただくとかなり近いかもしれません。

各VMには、これもレンタルサーバで良く実装されているPlesk control panelを入れます。
Plesk上からWebアプリケーションに使うMySQL等の設定などの他、BINDも弄れるようですし、利用可能なIPの選択などもGUIで設定可能なようです。


なんか複雑な気分になる software の名称が出てきたので.
bind は確かに操作できますけど,Plesk が動いている node のものを操作するのでは?
その場合,各 VM 毎に bind が動いていることになると思いますが,
そういうことを意図していますか?
引用:

冗長化はそのご予算をつけて導入したいと思いますが、
当面そうなるとGIPが最低もう一つは必要ですね。


そこは最初から念頭に置いた方がよいかもしれませんよ.
まあ,計画的に「需要が生じてから」でも良いかもしれませんが,
複数の virtual nodes が動く単一の phygical node が壊れたらどうなるか?
これを想像してなお,必要ないという判断ならそれでも良いでしょう.

global IP address は必要ないのでは?
Xen そのものには global な通信はさせませんよね?
Guest OS に付与する数だけあればよいと思います.
引用:

もし、kazさまのおすすめ通り、VM毎にGIPを設定することが可能な場合、今度はNICはVMの数だけ必要ですか?
また、WAN側ポートが複数付いたルータなども見たことがないので、
ルータも複数必要になってきますでしょうか?


Guest OS に global IP address を個別に付与するとして,
network address は分けるのでしょうか?
同じ network address であれば,単一の phygical な
network interface があれば問題ありません.
つまり,network segment 毎に物理的な network interface を準備すればよいです.
その場合,上位の network 機器には port が一つあれば良いでしょう.

router の WAN 側 port が複数必要な理由は良くわかりません.
dmz の間違いでは?
※dmz - WAN 間は透過する前提で書かせていただいています.

firewall や router 上で NAT するのであっても物理的な理屈は同じですね.

機能を満たすために最低限必要なのは
・Xen が動く server
・内部/外部向けに結線する際の cable
・firewall(router の役割)
・dmz 接続用に Xen ×2 と firewall を接続する switch
・内部接続用に Xen ×2 を接続する switch
くらいで実現できてしまうのではないかと.
性能は無視していますか,負荷分散や VLAN の分割などが必要であれば
適時検討すれば良いと思います.
できればもう一台 server を用意して,iSCSI target にでもして,
shared storage として Xen の冗長化に用いると幸せになれるように思われます.
1

スキルアップ/キャリアアップ(JOB@IT)