Upload
virtualtech-japan-inc
View
1.760
Download
5
Embed Size (px)
DESCRIPTION
- デモのゴール --- Neutronが作るネットワークを、複数のコマンドライ ンを組み合わせることで再現する --- インスタンスに見立てたインターフェースから、外部 ネットワークに見立てたインターフェースへのPing疎 通を確認する --- 2テナント構成 本資料の5章以外のドキュメントはこちらにあります。 http://www.slideshare.net/VirtualTech-JP/20140929-rev-r
Citation preview
Copyright©2014 UNIADEX, Ltd. All rights reserved. 0
5章君にもできる
Neutronになってみよう
Photo by Juhan Sonin https://www.flickr.com/photos/juhansonin/1778188040
Copyright©2014 UNIADEX, Ltd. All rights reserved. 1
君にもできる! にゅーとろん君になってみよー!!
NeutronがOpen vSwitchやnetwork namespaceを操作してネットワーク構成する
Open vSwitchやnetwork namespaceはコマンドラインで操作できる
実はNeutronはコマンドを叩いている
この後デモ実施!!
N
https://github.com/openstack/neutron/blob/master/neutron/agent/linux/ip_lib.py#L77
Copyright©2014 UNIADEX, Ltd. All rights reserved. 2
デモの流れの説明
デモのゴール
›Neutronが作るネットワークを、複数のコマンドラインを組み合わせることで再現する
›インスタンスに見立てたインターフェースから、外部ネットワークに見立てたインターフェースへのPing疎通を確認する
›2テナント構成
Copyright©2014 UNIADEX, Ltd. All rights reserved. 3
デモ環境
Virtual BoxのVMに以下を準備
Ubuntu 14.04
Open vSwitch 2.0.2
ruby 1.9.3 + graphviz 2.36.0 ※Ubuntu14.04の標準リポジトリから導入
可視化ツール(独自)›コマンドラインから得られる情報をもとに、内部ネットワーク構成を自動的に描画する。 graphviz を利用
コマンド入力ツール(独自)›シェルスクリプト
Copyright©2014 UNIADEX, Ltd. All rights reserved. 4
前の章とデモ内容のマッピング 外部ネットワークとインスタンスはネームスペースとVeth Pairを利用して擬似的に再現
外部ネットワーク
インスタンス
10.0.0.3
10.0.0.2
Namespace:qdhcp-b2f5dbb6-...
10.0.0.1
192.168.2.1
Namespace:
qrouter-674d7792-...
br-ex
テナント
br-int
br-int
br-ex
router
外部ネットワーク
インスタンス
DHCP
今回のデモでの図示
Copyright©2014 UNIADEX, Ltd. All rights reserved. 5
にゅーとろん君 デモスタート!
ここから先は、コンソールと可視化ツールの画面に切り替え
お手元の資料の[1-xx] はステップ番号で、デモのスクリプトで実行するステップに対応
Copyright©2014 UNIADEX, Ltd. All rights reserved. 6
初期状態Namespaceは存在
せず
可視化ツールでは、ip linkで見える4つのデバイスのみ描
画
Copyright©2014 UNIADEX, Ltd. All rights reserved. 7
[1-1]Namespace追加
Namespaceを二つ作成仮想ルータ用とDHCP用
qrouterはルータとして使うため
ip_forwardを有効
Namespace一覧
Copyright©2014 UNIADEX, Ltd. All rights reserved. 8
[1-2]OVSのブリッジを作るovsのブリッジを二つ作成。
1.外接用(br-ex)
2.内部ネットワーク用(br-int)
ovsのブリッジ状態
確認
Copyright©2014 UNIADEX, Ltd. All rights reserved. 9
[1-3]veth pairを作るNamespaceとブリッジを接続するVeth pairを二組
各インターフェースの状態表示
Copyright©2014 UNIADEX, Ltd. All rights reserved. 10
[1-5]veth pairをnamespaceに移す
Veth pairの一方をnamespaceに移動
Copyright©2014 UNIADEX, Ltd. All rights reserved. 11
[1-5]veth pairにアドレスを付与
veth pairの端点にIPアドレス付与
Copyright©2014 UNIADEX, Ltd. All rights reserved. 12
[1-6]veth pairをブリッジに接続veth pairの他方をブリッジに接続。テナント分けのために
VLAN Tag=1を付与
Copyright©2014 UNIADEX, Ltd. All rights reserved. 13
[1-7]veth pairを活性化
Veth pairをactivate
UP のステートで白抜き表示される
Copyright©2014 UNIADEX, Ltd. All rights reserved. 14
[1-8]Namespaceを追加
外部ネットワークとインスタンスとして利用するためにNamespace
を二つ追加
Copyright©2014 UNIADEX, Ltd. All rights reserved. 15
[1-9]veth pairを追加
Veth pairを3つ追加1.インスタンスとbr-int
2.仮想ルータとbr-ex
3.外部ネットワークとbr-ex
Copyright©2014 UNIADEX, Ltd. All rights reserved. 16
[1-10]veth pairをNamespaceに移動
Veth pairの端点を、それぞれqpublic, qvm1,
qrouter1に移動
Copyright©2014 UNIADEX, Ltd. All rights reserved. 17
[1-11]veth pairにアドレスを付与
それぞれにIPアドレスを付与する
Copyright©2014 UNIADEX, Ltd. All rights reserved. 18
[1-12,13]veth pairをブリッジに接続、活性化
反対側の端点をbr-int, br-exに接続し、Activate
Copyright©2014 UNIADEX, Ltd. All rights reserved. 19
[1-14]floating IPアドレスを付与qrouter1のbr-
ex側のインタフェースにIP
aliasでアドレスを付与
これはqpublicからqvm1にアクセスするための
floating IP
Copyright©2014 UNIADEX, Ltd. All rights reserved. 20
[1-15]DNATを設定外部ネットワークからqvm1にアクセスする
ためのDNAT
Copyright©2014 UNIADEX, Ltd. All rights reserved. 21
[1-16]SNATを設定qvm1からの戻りパケットのソースが
floating IP となるためのSNAT
Copyright©2014 UNIADEX, Ltd. All rights reserved. 22
[1-17]インスタンスにdefault gatewayを設定
qvm1のdefault
gatewayをqrouter1
に向ける。qpublicとqvm1の間
が開通
Copyright©2014 UNIADEX, Ltd. All rights reserved. 23
[1-18]テナントA 疎通確認
qpublicからqvm1のfloating IPである
192.168.101.11へのpingが成功
Copyright©2014 UNIADEX, Ltd. All rights reserved. 24
[2-1]Namespaceを作る
同じ手順でもう一つのテナントを作成。VLAN tag=2を
利用
Copyright©2014 UNIADEX, Ltd. All rights reserved. 25
[2-3]veth pairを作る
Copyright©2014 UNIADEX, Ltd. All rights reserved. 26
[2-4]veth pairをNamespaceに移す
Copyright©2014 UNIADEX, Ltd. All rights reserved. 27
[2-5]Veth pairにアドレスを付与
VLAN tag=1のテナントと同じアドレスが利用できる
Copyright©2014 UNIADEX, Ltd. All rights reserved. 28
[2-6]veth pairをブリッジに接続
Copyright©2014 UNIADEX, Ltd. All rights reserved. 29
[2-7]veth pairを活性化
Copyright©2014 UNIADEX, Ltd. All rights reserved. 30
[2-8]Namespaceを作る
VLAN tag=2のテナントに接続したインスタンスとしてqvm2を作成
Copyright©2014 UNIADEX, Ltd. All rights reserved. 31
[2-9]veth pairを作る
Copyright©2014 UNIADEX, Ltd. All rights reserved. 32
[2-10]veth pairをNamespaceに移す
Copyright©2014 UNIADEX, Ltd. All rights reserved. 33
[2-11]veth pairにアドレスを付与
Copyright©2014 UNIADEX, Ltd. All rights reserved. 34
[2-12,13]veth pairをブリッジに接続、活性化
Copyright©2014 UNIADEX, Ltd. All rights reserved. 35
[2-14]floating IPを付与
Copyright©2014 UNIADEX, Ltd. All rights reserved. 36
[2-15]DNATを設定
Copyright©2014 UNIADEX, Ltd. All rights reserved. 37
[2-16]SNATを設定
Copyright©2014 UNIADEX, Ltd. All rights reserved. 38
[2-17]インスタンスにdefault gatewayを設定
これで、2つのテナントのインスタンスから外部ネットワークへの通信が可能となった
Copyright©2014 UNIADEX, Ltd. All rights reserved. 39
[2-18]テナントB 疎通確認