openstackネットワーク実装の現状と運用 自動化開発の実際 第一部:...

24
2015/7/22 ユニアデックス株式会社 吉本 昌平 OpenStack最新情報セミナー(2015年7月) 夜の部 『OpenStack+SDN最新動向』 OpenStackネットワーク実装の現状と 運用自動化開発の実際 0 第一部: OpenStackネットワーク実装の現状

Upload: virtualtech-japan-inc

Post on 10-Aug-2015

1.129 views

Category:

Technology


1 download

TRANSCRIPT

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

2015/7/22

ユニアデックス株式会社吉本 昌平

OpenStack最新情報セミナー(2015年7月)夜の部 『OpenStack+SDN最新動向』

OpenStackネットワーク実装の現状と運用自動化開発の実際

0

第一部: OpenStackネットワーク実装の現状

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

会社概要

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月期) *旧ネットマークス分含む

日本ユニシスグループの『インフラトータルサービス』企業

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

吉本 自己紹介

どんな人?›MSX → IBM PS/V Master → PC自作→ NE (ASP)→ PG(Linux)→ NE (企業コア)→ 企画 (仮想化 → SDN → IoT)

日々の仕事›エバンジェリスト/アーキテクト

趣味›PC自作

›コンピュータ全般

›写真

›車

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

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

ネットワークノード

コンピュートノード

ストレージノード

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

OpenStackを実運用する上でのネットワーク面での課題

冗長化

ソフトウェア処理負荷の分散

物理スイッチの設定

離れたフロアや遠隔データセンタとの接続

ネットワーク状況の可視化

4Copyright©2015 UNIADEX, Ltd. All rights reserved.

OpenStackはネットワークが苦手

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

標準OpenStackで実装できるネットワーク

標準Neutronで構成できるのはごく基本的なネットワークのみ

5Copyright©2015 UNIADEX, Ltd. All rights reserved.

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

Kiloリリースでの変更点

L3-HA(ルータ冗長化)が正式採用

›JunoまではExperimental

サブネット割り当て›あらかじめ定義したアドレスプールからサブネットを作成

ML2 階層的ポートバインディング›スループット改善、VLAN4K問題対応

LBaaS バージョン2 API›SSL/TLSなど実用的な機能追加

6Copyright©2015 UNIADEX, Ltd. All rights reserved.

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

L3 HA

KeepalivedによりL3 agentを冗長化

›ルータごとにVRRPハートビートによる死活監視

ゲートウェイのVIP移動によるフェールオーバー›Masterとbackupの違いはIPアドレスが付いているかどうかだけ

›9・10ページ

スプリットブレイン対策のため3台以上の構成推奨›次頁以降は二台構成で説明

7Copyright©2015 UNIADEX, Ltd. All rights reserved.

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

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

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

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

network1GRE tunnel

Compute

ノードへCompute

ノードへ

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

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

network1GRE tunnel

169.254.192.11 169.254.192.12ha-xxx

ha-xxx

VRRPハートビート

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

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

network1GRE tunnel

169.254.192.11 169.254.192.12ha-xxx

ha-xxx

qg-xxx 133.1.1.1

10.0.0.1

qg-xxx

qr-xxxqr-xxx

ここにアドレス付いてる方がマスター

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

テナントB

テナントC

テナントA

L3 HA 詳細(1)

network2

qrouter-AAABackup

network1

qrouter-BBBMaster

qrouter-CCCMaster

qrouter-DDDBackup

qrouter-AAAMaster

qrouter-BBBBackup

qrouter-CCCBackup

qrouter-DDDMaster

VRRP

VRRP

VRRP

VRRP

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

VRRP

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

フェールオーバーの動き

network1 network2

Neutron-l3-agent

Keepalived-state-change

KeepalivedNeutron-l3-

agentKeepalived-

state-changeKeepalived

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

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

Neutron PluginによるSDNコントローラとの連携

15Copyright©2015 UNIADEX, Ltd. All rights reserved.

NeutronL3 Agent ネットワークノード

Horizon

Neutron-Server

Neutron API

Neutron-Plugin

コントローラノード

コンピュートノード

NeutronL2 Agent

物理機器

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

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

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

Neutron Pluginの実装

17Copyright©2015 UNIADEX, Ltd. All rights reserved.

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

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

NeutronL3 Agent

NeutronL2 Agent

L2機器

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

SDN製品によるNeutron実装 連携/代替パターン

19Copyright©2015 UNIADEX, Ltd. All rights reserved.

Cisco ACI

SDNコントローラ

コンピュートノード

APICController

OpFlex

Nexus9000等

Horizon

Neutron-Server

Neutron API

Neutron-Plugin

コントローラノード

SDN API

Cisco ACI

›ホスト内L2処理はNeutron/OVSを利用。ホスト間L2,L3、L4-7はSDN側で処理。

API

NeutronL2 Agent

DevicePack

L4-7機器

APIC WebUI

L3処理

L2 処理

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

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 処理

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

Neutron Pluginによる商用ロードバランサとの連携

21Copyright©2015 UNIADEX, Ltd. All rights reserved.

LoadBalancer

Neutron

LBaaS Driver

HAProxy

LBaaS Driver

A10vThunder

HAProxy

LBaaS neutron-lbaas.confprovider=“xxxx.A10”

プールメンバー

VIPモニタ を登録

REST API

CLI

Horizon管理画面

Agent

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

SDN、OpenStack、自動化実装の関係

22Copyright©2015 UNIADEX, Ltd. All rights reserved.

(運用自動化) オーケストレーター

OpenStack Heat等

A運用自動化

B運用自動化

C運用自動化

SDNスイッチ

SDNスイッチ

サーバ ストレージ

新機能①

新機能②

新機能①

新機能②

新機能③

SDNコントローラ OpenStack Nova等APIAPI

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

Copyright©2015 UNIADEX, Ltd. All rights reserved.23

SDN, OpenStackへ関わる全ての皆様へ感謝いたします