2015/7/22
ユニアデックス株式会社
吉本 昌平
OpenStack最新情報セミナー(2015年7月)
夜の部 『OpenStack+SDN最新動向』
OpenStackネットワーク実装の現状と
運用自動化開発の実際
0
第一部: OpenStackネットワーク実装の現状
会社概要
1Copyright©2015 UNIADEX, Ltd. All rights reserved.
社名 ユニアデックス株式会社
代表者 代表取締役社長 入部 泰(いりべ やすし)
住所/TEL 〒135-8560 東京都江東区豊洲1-1-1
03-5546-4900(大代表)
設立 1997年3月4日
資本金 7億5,000万円
従業員数 3,174名(2014年12月1日現在)
売上高 1,278億円(2014年3月期) *旧ネットマークス分含む
日本ユニシスグループの『インフラトータルサービス』企業
吉本 自己紹介
どんな人?
›MSX → IBM PS/V Master → PC自作
→ NE (ASP)
→ PG(Linux)
→ NE (企業コア)
→ 企画 (仮想化 → SDN → IoT)
日々の仕事
›エバンジェリスト/アーキテクト
趣味
›PC自作
›コンピュータ全般
›写真
›車
OpenStackの主要コンポーネント
3Copyright©2015 UNIADEX, Ltd. All rights reserved.
ボリューム オブジェクト
Neutron L2/L3Agent
Nova
コントローラーノード
ポータル画面
Horizon
仮想マシン管理
ネットワーク管理
Nova
ユーザ認証管理
リソース計測VMイメージ管理
オーケストレーション
Keystone Neutron
Ceilometer
Heat
Glance
データベース管理
Trove
AMQP
(RabbitMQ/QPID)
Cinder Swift
SDN製品or
ビッグデータ解析
Sahara
MySQL
ネットワークノード
コンピュートノード
ストレージノード
OpenStackを実運用する上でのネットワーク面での課題
 冗長化
 ソフトウェア処理負荷の分散
 物理スイッチの設定
 離れたフロアや遠隔データセンタとの接続
 ネットワーク状況の可視化
4Copyright©2015 UNIADEX, Ltd. All rights reserved.
OpenStackはネットワークが苦手
標準OpenStackで実装できるネットワーク
標準Neutronで構成できるのはごく基本的なネットワークのみ
5Copyright©2015 UNIADEX, Ltd. All rights reserved.
Kiloリリースでの変更点
L3-HA(ルータ冗長化)が正式採用
›JunoまではExperimental
サブネット割り当て
›あらかじめ定義したアドレスプールからサブネットを作成
ML2 階層的ポートバインディング
›スループット改善、VLAN4K問題対応
LBaaS バージョン2 API
›SSL/TLSなど実用的な機能追加
6Copyright©2015 UNIADEX, Ltd. All rights reserved.
L3 HA
KeepalivedによりL3 agentを冗長化
›ルータごとにVRRPハートビートによる死活監視
ゲートウェイのVIP移動によるフェールオーバー
›Masterとbackupの違いはIPアドレスが付いているかどうかだけ
›9・10ページ
スプリットブレイン対策のため3台以上の構成推奨
›次頁以降は二台構成で説明
7Copyright©2015 UNIADEX, Ltd. All rights reserved.
L3 HA 構成例
8Copyright©2015 UNIADEX, Ltd. All rights reserved.
コントローラーノード
Horizon
Nova
Neutron-server
Keystone
ネットワークノード ネットワークノード コンピュートノード
Nova-computekeepalived
Neutron-
openvswitch-agent
Neutron-
openvswitch-agent
Neutron-l3-agent
Neutron-dhcp-
agent
Neutron-metadata-
agent
keepalived
Neutron-
openvswitch-agent
Neutron-l3-agent
Neutron-dhcp-
agent
Neutron-metadata-
agent
L3 HA 詳細(1)
133.1.1.1
Namespace:
qdhcp-b2f5dbb6-...
Namespace:
qrouter-674d7792-...
br-ex
network2
Network
Namespace
OVS intrnal port
OVS patch port
Open vSwitch
169.254.192.12
10.0.0.1
10.0.0.2
br-int
br-tun
qg-xxx
ha-xxx
qr-xxx
tap-xxx
Namespace:
qdhcp-cb9cddf6-...
Namespace:
qrouter-674d7792-...
br-ex
169.254.192.11
10.0.0.3
br-int
br-tun
qg-xxx
ha-xxx
qr-xxx
tap-xxx
network1
GRE tunnel
Compute
ノードへ
Compute
ノードへ
L3 HA 詳細(2)
133.1.1.1
Namespace:
qdhcp-b2f5dbb6-...
Namespace:
qrouter-674d7792-...
br-ex
network2
Network
Namespace
OVS intrnal port
OVS patch port
Open vSwitch
10.0.0.1
10.0.0.2
br-int
br-tun
qg-xxx
qr-xxx
tap-xxx
Namespace:
qdhcp-cb9cddf6...
Namespace:
qrouter-674d7792-...
br-ex
10.0.0.3
br-int
br-tun
qg-xxx
qr-xxx
tap-xxx
network1
GRE tunnel
169.254.192.11 169.254.192.12
ha-xxx
ha-xxx
VRRPハートビート
L3 HA 詳細(3)
Namespace:
qdhcp-b2f5dbb6-...
Namespace:
qrouter-674d7792-...
br-ex
network2
Network
Namespace
OVS intrnal port
OVS patch port
Open vSwitch
10.0.0.2
br-int
br-tun
tap-xxx
Namespace:
qdhcp-cb9cddf6...
Namespace:
qrouter-674d7792-...
br-ex
10.0.0.3
br-int
br-tun
tap-xxx
network1
GRE tunnel
169.254.192.11 169.254.192.12
ha-xxx
ha-xxx
qg-xxx 133.1.1.1
10.0.0.1
qg-xxx
qr-xxxqr-xxx
ここにアドレス付い
てる方がマスター
テナントB
テナントC
テナントA
L3 HA 詳細(1)
network2
qrouter-AAA
Backup
network1
qrouter-BBB
Master
qrouter-CCC
Master
qrouter-DDD
Backup
qrouter-AAA
Master
qrouter-BBB
Backup
qrouter-CCC
Backup
qrouter-DDD
Master
VRRP
VRRP
VRRP
VRRP
VRRP
フェールオーバーの動き
network1 network2
Neutron-l3-
agent
Keepalived-
state-change
Keepalived
Neutron-l3-
agent
Keepalived-
state-change
Keepalived
sending 0 priority
VRRP pri=0 14:05:51.638
14:05:51
Wrote state backup
accepted
Handling notification
Notified
Child process died
Entering BACKUP
STATE
Transision to
MASTER StATE
Entering MASTER
StATE
Wrote state master
accepted
Handling notification
Notified
VRRP pri=50 14:05:52.443
VRRP pri=50 14:05:54.444
14:05:51.643
14:05:51.645
14:05:51.648
14:05:51.764
14:05:52
14:05:52
14:05:52
14:05:54
notify
notify
14:05:54.446
14:05:55.218
14:05:54.492
14:05:54.497
Neutron PluginによるSDNコントローラとの連携
15Copyright©2015 UNIADEX, Ltd. All rights reserved.
Neutron
L3 Agent ネットワークノード
Horizon
Neutron-
Server
Neutron API
Neutron-
Plugin
コントローラノード
コンピュートノード
Neutron
L2 Agent
物理機器
Neutron PluginによるSDNコントローラとの連携
16Copyright©2015 UNIADEX, Ltd. All rights reserved.
SDN API
SDNコントローラ
コンピュートノード
仮想スイッチ
Controller
API OpenFlow etc….
物理機器
Horizon
Neutron-
Server
Neutron API
Neutron-
Plugin
コントローラノード
API
Neutron Pluginの実装
17Copyright©2015 UNIADEX, Ltd. All rights reserved.
SDN製品によるNeutron実装 連携パターン
18Copyright©2015 UNIADEX, Ltd. All rights reserved.
Big Cloud Fabric
SDNコントローラ
コンピュートノード
Controller
OpenFlow etc…
Horizon
Neutron-
Server
Neutron API
Neutron-
Plugin
コントローラノード
SDN API
BigSwitch Networks
›Neutron L3/L2 が動作する為に必要な物理ネットワークを自動構成
API
Neutron
L3 Agent
Neutron
L2 Agent
L2機器
SDN製品によるNeutron実装 連携/代替パターン
19Copyright©2015 UNIADEX, Ltd. All rights reserved.
Cisco ACI
SDNコントローラ
コンピュートノード
APIC
Controller
OpFlex
Nexus9000等
Horizon
Neutron-
Server
Neutron API
Neutron-
Plugin
コントローラノード
SDN API
Cisco ACI
›ホスト内L2処理はNeutron/OVSを利用。ホスト間L2,L3、L4-7はSDN側で
処理。
API
Neutron
L2 Agent
DevicePack
L4-7機器
APIC WebUI
L3処理
L2 処理
SDN製品によるNeutron実装 代替パターン
20Copyright©2015 UNIADEX, Ltd. All rights reserved.
Nuage VSP
SDNコントローラ
コンピュートノード
Nuage VSC
IPネットワーク
Horizon
Neutron-
Server
Neutron API
Neutron-
Plugin
コントローラノード
SDN API
Nuage Networks VSP
›Neutron Plugin経由でほぼ全てのネットワーク機能をSDN側が代替
Nuage VSD
API
Nuage VRS
L3処理L2 処理
Neutron Pluginによる商用ロードバランサとの連携
21Copyright©2015 UNIADEX, Ltd. All rights reserved.
Load
Balancer
Neutron
LBaaS Driver
HAProxy
LBaaS Driver
A10
vThunder
HAProxy
LBaaS neutron-lbaas.conf
provider=“xxxx.A10”
プール
メンバー
VIP
モニタ を登録
REST API
CLI
Horizon
管理画面
Agent
SDN、OpenStack、自動化実装の関係
22Copyright©2015 UNIADEX, Ltd. All rights reserved.
(運用自動化) オーケストレーター
OpenStack Heat等
A運用
自動化
B運用
自動化
C運用
自動化
SDN
スイッチ
SDN
スイッチ
サーバ ストレージ
新機能
①
新機能
②
新機能
①
新機能
②
新機能
③
SDNコントローラ OpenStack Nova等
APIAPI
Copyright©2015 UNIADEX, Ltd. All rights reserved.
23
SDN, OpenStackへ関わる全ての皆様へ感謝いたします

OpenStackネットワーク実装の現状と運用 自動化開発の実際 第一部: OpenStackネットワーク実装の現状 – OpenStack最新情報セミナー 2015年7月