拡張ゾーンで、複数の物理NICを、それぞれ仮想マシンに割り当て外部と通信させることは可能でしょうか?

584 views
Skip to first unread message

田中温子

unread,
Oct 15, 2015, 10:53:40 PM10/15/15
to 日本CloudStackユーザ会
お世話になります。田中と申します。

表題の通り、CloudStackの拡張ゾーンで、複数の物理NICを、それぞれ仮想マシンに割り当て外部と通信させる構成を構築したいと考えています。
そもそも可能なのか、可能な場合、設定方法についてご教授いただきたいです。

やりたいことは以下です。
・1つの拡張ゾーンで、パブリックネットワークを複数(192.168.2.0/24192.168.100.0/24)をつくり、仮想マシンAには192.168.2.0/24
仮想マシンBには192.168.100.0/24 のパブリックIPアドレスを付与したい
192.168.2.0/24192.168.100.0/24 は、別の物理NICを使いたい

現状、以下のように構築を行いました。

◆環境
OS: CentOS release 6.7
CloudStackのバージョン: 4.5.2-1

※管理サーバーとハイパーバイザーの2台構成

◆ハイパーバイザーサーバの物理的なNICとブリッジの状態

――――――――――――――――
    □   □  □  □
――――――――――――――――
      ①  ②  ③  ④

①cloudbr0 ・・・仮想サーバ用(192.168.2.0/24
②cloudbr1 ・・・管理・ストレージ用(172.16.1.0/24
③cloudbr2 ・・・仮想サーバ用(192.168.100.0/24
④cloudbr4 ・・・仮想サーバ用(192.168.200.0/24

◆ゾーン作成時の物理ネットワークの指定
Physical Network 1
 ゲスト:  cloudbr0
 パブリック: cloudbr0

Physical Network 2
 管理: cloudbr1
 ストレージ: cloudbr1

Physical Network 3
 ゲスト: cloudbr2

Physical Network 4
 ゲスト: cloudbr3

このように構築した場合、
Physical Network 1, Physical Network 3, Physical Network 4 の
パブリックのIPアドレスには、すべて
cloudbr0(192.168.2.0/24)のIPアドレスが割り当てられてしまいます。

本当は、Physical Network3, Physical Network4には、
cloudbr2(192.168.100.0/24), cloudbr3(192.168.200.0/24)の
IPアドレスが、パブリックIPアドレスとして割り振られ、
そのIPアドレス、物理NICを使って外部と通信させたいです。

ゾーンの物理ネットワークを確認すると、
Physical Network 1, Physical Network 3, Physical Network 4は
添付ファイルのような状態になっています。
Physical Network 3, Physical Network 4にもパブリックを割り当てたいです。

まず、このような構成は可能でしょうか?
また、どのような設定を行えば可能でしょうか?
PhysicalNetwork1.png
PhysicalNetwork3.png
PhysicalNetwork4.png

giraffe

unread,
Oct 17, 2015, 2:44:09 AM10/17/15
to 日本CloudStackユーザ会
田中さん

こんにちは。中谷と申します。

実現したい構成そのままは、できないと思います。


(1)ネットワークタイプの説明

Advance Zoneの場合、
Guest NetworkはVirtual RouterとVM間のネットワークです。
※ここで言うGuest Networkは正確にはIsolated Guest Network

Public NetworkはVirtual Routerと外部ネットワーク間のネットワークです。

例:
[VM]--Guest Network--[Virtual Router]--Public Network-->Internet


(2)Shared Network(共有ネットワーク)について


Public Networkは1つのゾーンにつき、1つだけ作成できます。

Shared Network(共有ネットワーク)は複数作成できます。
Shared NetworkはPhysical Networkに紐付できます。

ただしShared NetworkはVirtual Routerの機能が制限されます。
(DHCPとDNSのみなど)

例:

[VM]--Guest Network--[Virtual Router]--Public Network-->Internet
  |
Shared Network 1

[VM]--Guest Network--[Virtual Router]--Public Network-->Internet
  |
Shared Network 2

Shared Networkの登録方法は、
CloudStackのWebUIにadminでログイン後
ネットワーク->ゲストネットワークの追加
です。


(3)Public NetworkのIPアドレス範囲について

Public Networkは、Public NetworkのIPアドレス範囲を複数登録できます。
IPアドレス範囲ごとに、払い出すアカウントを限定できるので
例えば以下ができます。

IPアドレス範囲
 192.168.100.0/24…アカウントA
 192.168.200.0/24…アカウントB

登録方法は、
CloudStackのWebUIにadminでログイン後
インフラストラクチャ->ゾーン->物理ネットワーク->Physical Network->パブリック->IPアドレスの範囲

ただし、Physical Networkを分離するこはできません。
以下のようにVLANで分離します。

IPアドレス範囲(VLAN)
 192.168.100.0/24 (VLAN100) …アカウントA
 192.168.200.0/24 (VLAN200) …アカウントB

パブリックネットワークとして使用するNICの
対向スイッチのポートはVLANトランクで設定しておく必要があります。

※NICが複数あり、有効活用したい場合は、リンクアグリゲーション等で束ねて帯域を増やすことも検討できますが、VLAN分離は必須です。


補足情報を以下に書きました。


以上です。



2015年10月16日金曜日 11時53分40秒 UTC+9 田中温子:

田中温子

unread,
Nov 8, 2015, 7:24:03 PM11/8/15
to 日本CloudStackユーザ会
中谷様

田中です。
ご連絡ありがとうございます。

パブリックネットワークは1つのゾーンに対して1つであること、
物理的なネットワークそれぞれに、ネットワークを割り当てることはできず、
(VLAN分離が必須)ということで承知しました。

その上で、やりたいことを再度整理しました。

・1つの拡張ゾーンで、外部と通信するネットワークは
 192.168.2.0/24192.168.100.0/24としたい
・IPv6を使いたい(共有ネットワークでしか対応していないため共有ネットワーク使用)

その上で、上位のスイッチでVLANの設定を行い、
次のようにパブリックネットワーク、共有ネットワークの構築を行いましたが、
パブリックネットワークと通信がとれない状況となりました。
可能でしたら、
CloudStackの設定として誤りがないか?
他になにか必要な設定があるか?
考えられる問題はあるか?についてご教授いただけないでしょうか。



◆環境
OS: CentOS release 6.7
CloudStackのバージョン: 4.5.2-1

※管理サーバーとハイパーバイザーの2台構成

◆ハイパーバイザーサーバの物理的なNICとブリッジの状態

――――――――――――――――
    □   □  □  □
――――――――――――――――
      ①  ②  

①cloudbr0 ・・・仮想サーバ用(192.168.2.0/24、192.168.100.0/24)
                  ※上位のスイッチでそれぞれvlanid500と600を指定
②cloudbr1 ・・・管理・ストレージ用(172.16.1.0/24



◆ゾーン作成時の物理ネットワークの指定
Physical Network 1
 ゲスト:  cloudbr0
 パブリック: cloudbr0

Physical Network 2
 管理: cloudbr1
 ストレージ: cloudbr1

◆ゾーン作成時のパブリックネットワークの指定
ゲートウェイ: 192.168.2.1
ネットマスク: 255.255.255.0
VLANID: 500
範囲: 192.168.2.100~192.168.2.200

◆共有ネットワークの指定
ゲートウェイ: 192.168.100.1
ネットマスク: 255.255.255.0
VLANID: 600
範囲: 192.168.100.100~192.168.100.200
その他IPv6のIPアドレスの指定も

この状態で発生した状況は以下です。

・システムVMや仮想VMにパブリックネットワークの192.168.2.XのIPアドレスが
 割り振られるが、そのIPアドレスに対して通信できない
・KVM(virsh consoleコマンド)でConsole VMにログインしてどこへ通信できないのか
 確認すると、デフォルトゲートウェイ(192.168.2.1)にpingが通らない
・192.168.2.1はルーターについているIPアドレスで、ハイパーバイザーサーバ
 本体からだと通信は取れる

※パブリックネットワークのIPアドレス範囲指定の方法を
ご教授いただいたのですが、
IPv6アドレスを使いたいという要望があるため、
共有ネットワークを追加しています。

よろしくお願いします。

giraffe.forest

unread,
Nov 9, 2015, 6:51:59 AM11/9/15
to 日本CloudStackユーザ会
田中さん

中谷です。

アドバンスドネットワークでのシンプルな構成では
動作確認はとれていらっしゃいますか?
最初から複雑な構成を作成せず、
シンプルな構成からはじめて動作確認を一歩一歩実施してくことをお勧めします。

あと、以下の書籍がおすすめです。
http://cloudstack.jp/?page_id=332

また、以下のとおりにやると動く構成で作成できます。
http://www.slideshare.net/SatoruNakaya/cloudstackgettingstartedadvancedzonenakaya20150124

以上です。
--
このメールは Google グループのグループ「日本CloudStackユーザ会」に登録しているユーザーに送られています。
このグループから退会し、グループからのメールの配信を停止するには
cloudstack-j...@googlegroups.com にメールを送信してください。
その他のオプションについては https://groups.google.com/d/optout にアクセスしてください。
Reply all
Reply to author
Forward
0 new messages