15
Copyright©2016 NTT corp. All Rights Reserved. OpenStack Neutron ププププププププププププ ププププププププププ ププププププププププ NTT ププププププププププププププププ ププ ププ

OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向

Embed Size (px)

Citation preview

Page 1: OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向

Copyright©2016 NTT corp. All Rights Reserved.

OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向

日本電信電話株式会社NTT ソフトウェアイノベーションセンタ

市原 裕史

Page 2: OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向

2Copyright©2016 NTT corp. All Rights Reserved.

市原 裕史• 所属

• NTT SIC 第三推進プロジェクト• OpenStack Developer

• Neutron Core Reviewer 、その他プロジェクトへの貢献• 技術 : SDN/NFV 中心

• パブリッククラウドの開発• Linuxcon で DPDK の性能の発表• Neutron への機能提案

自己紹介

Page 3: OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向

3Copyright©2016 NTT corp. All Rights Reserved.

• マルチテナント環境でユーザに仮想 NW を提供する• 様々な NW リソースを提供

• スイッチ、ルータ、 VPN 、ファイアウォール、ロードバランサ

• 最新のユーザ調査で OpenStack ユーザの 93% 以上が Neutron を利用 [1]

• プラグイン機構を採用し、様々な SDN 製品と結合可能

OpenStack Neutron 概要

L2 スイッチ

仮想計算機

ルータ

VPN ファイアウォール

ロードバランサ

テナント A テナント B[1] ユーザサーベイ : https://www.openstack.org/assets/survey/October2016SurveyReport.pdf

Page 4: OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向

Core pluginService plugin

bgpvpn

dragonflow

kuryr

ale-omniswitch

arista

bagpipe

ciscocalico

brocade

bigswitch

OpenStack Big Tent or Incubation

Neutron

edge-vpn

fujitsu

hyperv

infoblox

midonet

mlnx

nec

nuage

odl

ofagent

onos

ovn

ovs-dpdk

plumgrid

powervm

vsphere

vmware-nsx

octavia

client

lbaas

vpnaas

fwaas

l2gw

dynamic-routing

sfc

lib

Neutron Stadium

specs

Page 5: OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向

5Copyright©2016 NTT corp. All Rights Reserved.

Neutron ソフトウェアスイッチ / ルータ

VM

コンピュートノード

VM

VM 仮想計算機

仮想スイッチ

vSwitch

vSwitch/bridge

VM

SR-IOV NIC

設定対象

ネットワークノード

bridge

Router

物理スイッチ

Router 仮想ルータ

OVSLinuxBridgeSR-IOViptables

namespacerouteiptables

Page 6: OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向

6Copyright©2016 NTT corp. All Rights Reserved.

Neutron ソフトウェアスイッチの歴史

Page 7: OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向

7Copyright©2016 NTT corp. All Rights Reserved.

• OpenStack Nova の仮想ネットワーク管理機能• リリース時〜 2012/9/27 の Folsom リリース• デフォルトドライバは Linuxbridge• ルータ機能・トンネリングはなし ( ネットワークノードもな

し )

Nova network

物理スイッチ

VM

コンピュートノード

VM

LinuxBridge

VM

nova-compute

VM

コンピュートノード

VM

LinuxBridge

VM

nova-compute

Page 8: OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向

8Copyright©2016 NTT corp. All Rights Reserved.

• 2012/9/27 の Folsom リリースから Nova から分離• (Devstack の ) デフォルトプラグインはOpenvSwitch

• Neutron 自身はデフォルトプラグイン / デフォルトドライバを持っていない

• OVS ではセキュリティグループに対応不可能だったため、 LinuxBridge+iptables を利用

Quantum(Neutron)

VM

コンピュートノード

VM

OVS

bridge bridge

LinuxBridgeiptables

VM 仮想計算機

仮想スイッチvSwitch/bridge

コンピュートノードプロセス

nova-computequantum-xxx-agent

Page 9: OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向

9Copyright©2016 NTT corp. All Rights Reserved.

NeutronOpenvSwitch

Page 10: OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向

10Copyright©2016 NTT corp. All Rights Reserved.

OpenvSwitch が利用者トップ

https://www.openstack.org/analytics

Page 11: OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向

11Copyright©2016 NTT corp. All Rights Reserved.

• 元々 Nova-network で Linuxbridge を使って運用していた人たちからは受けが悪かった

• 昔から安定した構成は Linuxbridge+VLAN という認識があった

• 2015 年頃からオペレータ会合で不満が噴出• OVS のポートを namespace 間で移動させるとクラッシュす

る issue が報告されて Kernel 含めて修正が必要となった• OVS 2.3.0+Neutron Juno で openvswitch-agent を再起動

すると OVS フローが全滅• OVS は問題の切り分けが難しくエンジニアの単価も高い

• OVS から Linuxbridge へ移行を宣言する人が多数出現

• Neutron コミュニティでも Linuxbridge サポートを強化

OVS への不満

Page 12: OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向

12Copyright©2016 NTT corp. All Rights Reserved.

• namespace や iptables を使うのをやめて OVS 機能をフル活用しようという議論に発展

• OVS+CT(Connection Tracking) による stateful firewall• OVS+OF(OpenFlow) による QoS• OF によるルーティングと OVS+CT による NAT• OVS ブリッジを分けずに 1 つに集約して高速化

• 更に OVN の開発も開始 (OpenDayLight はいずこ? )

OVS 路線変更

http://openvswitch.org/support/slides/OVN-Vancouver.pdf

Page 13: OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向

13Copyright©2016 NTT corp. All Rights Reserved.

• Stateful firewall はすでに Neutron で利用開始• DVR 、 SFC などの機能は OVS 限定で提供

• LinuxBridge で欲しいとの意見も多くあるが、フロー制御の代替となるものを用意しなければならないためなかなか取り組む人がいない

• ofctl を Ryu ライブラリで置き換え

現在の Neutron の OVS 利用

コンピュートノードネットワークノード

OVS

neutron-openvswith-agent

ofctl command Ryu Library

Page 14: OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向

14Copyright©2016 NTT corp. All Rights Reserved.

• OpenStack Neutron ではソフトウェアスイッチとして OpenvSwitch がデファクト

• 一方で Linuxbridge を利用する人も一定数いる

• OpenvSwitch の最新機能は順次 Neutron でサポートされていっている

• 今後は NAT へ拡大していくと予想

まとめ

Page 15: OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向

15Copyright©2016 NTT corp. All Rights Reserved.

• ML2 openvswitch driver• ML2 linuxbridge driver• networking-midonet• networking-ovs-dpdk

• ML2 openvswitch driver にマージされた

• networking-calico• networking-vpp• networking-6wind• contrail-neutron-plugin

付録 Neutron 対応ソフトウェアスイッチ/ルータ