Recommended
PDF
Open contrail days 2014 fall
PDF
Opencontraildays2014dist 140514051248-phpapp01
PDF
第20回 OpenStack勉強会 Neutron Deep Dive - DVR
PDF
PDF
Open contrailday 20150926
PDF
CloudStackとNetScaler連携tips
PDF
2016 interop sdi_showcase_contrail
PDF
OpenStack Neutronの機能概要 - OpenStack最新情報セミナー 2014年12月
PPTX
PDF
PDF
君にもできる! にゅーとろん君になってみよー!! 「Neutronになって理解するOpenStack Net - OpenStack最新情報セミナー ...
PDF
Cloud stack徹底入門7章 20130514
PPTX
PDF
Wakame-VDC / Open Source Conferense 2012 - Cloud (JP)
PPT
MQTT と Quickstart と NodeRED
PDF
Opencontrailの基本 for オープンソースカンファレンス2014 Kansai@Kyoto
PDF
Open contrailmeetup 20161207
PPTX
Contrail overview open stack days tokyo-feb2015
PDF
Contrail deploy by Juju/MAAS
PDF
20161129 neutron recent topic
PDF
PDF
OpenStack + OpenContrailで実現するマルチテナントIaaSのご紹介
PDF
Armored core vのオンラインサービスにおけるクラウドサーバー活用事例
PDF
Hydrogen → Helium での Linux kernel の違い
PDF
Horizon Quantum Integration grizzly
PDF
OpenStack Contribution Howto
PDF
20131011_openstack-neutron-vyattameeting
PDF
Horizon quantum-integration-grizzly
PDF
Quantum-grizzly-packet-filtering
PDF
【Cisco OpenStack Seminar 2015.10.26】 OpenStack as Strategy for future growth
More Related Content
PDF
Open contrail days 2014 fall
PDF
Opencontraildays2014dist 140514051248-phpapp01
PDF
第20回 OpenStack勉強会 Neutron Deep Dive - DVR
PDF
PDF
Open contrailday 20150926
PDF
CloudStackとNetScaler連携tips
PDF
2016 interop sdi_showcase_contrail
PDF
OpenStack Neutronの機能概要 - OpenStack最新情報セミナー 2014年12月
What's hot
PPTX
PDF
PDF
君にもできる! にゅーとろん君になってみよー!! 「Neutronになって理解するOpenStack Net - OpenStack最新情報セミナー ...
PDF
Cloud stack徹底入門7章 20130514
PPTX
PDF
Wakame-VDC / Open Source Conferense 2012 - Cloud (JP)
PPT
MQTT と Quickstart と NodeRED
PDF
Opencontrailの基本 for オープンソースカンファレンス2014 Kansai@Kyoto
PDF
Open contrailmeetup 20161207
PPTX
Contrail overview open stack days tokyo-feb2015
PDF
Contrail deploy by Juju/MAAS
PDF
20161129 neutron recent topic
PDF
PDF
OpenStack + OpenContrailで実現するマルチテナントIaaSのご紹介
PDF
Armored core vのオンラインサービスにおけるクラウドサーバー活用事例
PDF
Hydrogen → Helium での Linux kernel の違い
Viewers also liked
PDF
Horizon Quantum Integration grizzly
PDF
OpenStack Contribution Howto
PDF
20131011_openstack-neutron-vyattameeting
PDF
Horizon quantum-integration-grizzly
PDF
Quantum-grizzly-packet-filtering
PDF
【Cisco OpenStack Seminar 2015.10.26】 OpenStack as Strategy for future growth
PDF
2012/09/27 #ssmjp おうちOpenStack
PDF
PDF
20130724 openstack-3rd-anniversary-amotoki
PDF
PDF
20131212 Okinawa OpenDays OpenStack
PDF
PDF
PDF
PDF
20150713-OpenStack-5thbirthday-kilo-liberty-and-towards
PDF
Neutron Icehouse Update (Japanese)
PDF
PDF
20150713 OpenStack Translation in Japan
PDF
Neutron: br-ex is now deprecated! what is modern way?
PDF
Ansibleで味わうHelion OpenStack
Similar to 20121216 OSC Cloud OpenStack Quantum
PDF
PDF
OpenStackのQuantum(LinuxBridge Plugin)が実際どうやって仮想ネットワークを構成するのか説明する資料
PDF
PDF
OpenStack - SDNとオープンネットワーキングのすべて
PDF
OpenFlow in IaaS - Wakame
PDF
Wakame Project - 自作クラウド研究会
PDF
2012 OSC Kyoto / 2012 OSC Tokyo Fall - OpenStack vps kvm
KEY
Openvswitch vps 20120429資料
PDF
PDF
Vyatta and Virtualization 仮想環境でのVyatta
PDF
PDF
OpenStack + KVM + IPv6 = oname.com; Next Folsom/Grizzly Service development s...
PDF
20130312 OpenStack Day Tokyo プレゼン資料
PDF
「さくらのクラウド」におけるVyattaの活用事例
PDF
統合分散仮想ルータ - オープンルータ コンペティション2012
PDF
PDF
Whats new Apache CloudStack
PDF
API イントロダクション APIC-EM, Prime Infrastructure & CMX
PDF
120827 JAWS-UG Sapporo7 openswanでvpc
PDF
More from Akihiro Motoki
PDF
Kubernetes Upgrade survey (Dec 2023) results
PDF
20190722 OpenStack community past present future
PDF
20190722 Building handy CI with zuul and OpenStack
PDF
20190118-josug-open stack-community-goals
PDF
OpenStack Neutron IPv6 Lessons
PDF
OpenStack Atlanta Summit Report: Neutron, Nova and design summit sessions
20121216 OSC Cloud OpenStack Quantum 1. OpenStack が実現する仮想ネットワーク
~OpenStack Quantum の紹介~
Akihiro Motoki (@ritchey98)
OpenStack Quantum Core Developer
Japan OpenStack Users Group
Dec 16th, 2012
2. 自己紹介
• 元木 顕弘 Twiter: @ritchey98
• 某電気系メーカの研究所に所属
– IPルータ、広域Ethernet装置、迷惑メールフィルタなど
の開発をやっていました。
– 最近は OpenStack, OpenFlow 周りで活動しています。
• Linux JM Project
– 皆さん日本語マニュアル必要ですか。いつやめても
いいです (^^;
• OpenStack Quantum Core Developer
3. OpenStack Project と Quantum
*-as-a-Service Capability OpenStack Service
Compute Nova
Swift (Objects)
Storage Cinder (Block)
Glance (Images)
identity Keystone
Network Quantum
4. Quantum の目的 #1
• Network-as-a-Service (NaaS) を提供する
– テナントが自由なネットワーク操作を提供
• 複数のプライベートなネットワークの作成
• IPアドレスの制御
– 論理ネットワーク操作API
• 論理操作と物理操作を分離
• 物理レイヤーは Quantum (Plugin) が設定する
5. Quantum の目的 #2
• 複数のネットワーク技術に対応
– データセンタでは新たな要件が発生
• multi tenancy, remote data center, VM mobility, advanced
network services, …
– Nova は VLAN + Linux iptables のみが利用可能
– 新しいネットワーク技術に対応できるアーキテクチャ
• SDN/OpenFlow-based network
• Overlay tunneling (VXLAN, NVGRE, STT, …)
• L2 Fabric (Fabric Path, QFabric, …)
6. Quantum 仮想NWモデル
• テナントは複数の Network を作成できる
• Network には Subnet (CIDR, GW等) を関連付ける。
– 1つのNWに複数のSubnetを関連付けできる。IPv4+IPv6, IPv4 Address pool 等
– IPアドレスの払い出し (IPAM)
– テナント間での IP アドレス重複にも対応
• Networkに複数のPort を作成できる。(L2SWのポートのイメージ)
– VM の仮想NICはやルータのINF は Port と関連付けられる。
VM1 VM2 virtual server
Nova 10.0.0.2 10.0.0.3
virtual interface (VIF)
virtual port
Quantum Net1 L2 virtual network
10.0.0.0/24 IPv6 virtual subnet
7. Quantum でできること
TenantA-VM1 TenantA-VM2 TenantA-VM3
9.0.0.2 virtual server
10.0.0.2 10.0.0.3
virtual interface (VIF)
virtual port
Tenant-A Net1 Tenant-A Net2 L2 virtual network
10.0.0.0/24 9.0.0.0/24 virtual subnet
External SNAT for external traffic
Net Floating IP
88.0.0.0/18
• ネットワークの自由な作成
• IP overlapping Tenant Networks
• 複数 NIC を持った VM の)作成
• ルータ経由で Subnet 間通信
• Floating IP での外部からの接続 (Elastic IP@AWS)
8. Tenant View vs Infra View
Tenant-A
VM VM
net2 net1 R
VM VM
Internet
Tenant-A
VM
net1 R
VM
Tenatn View
Infra (Provider) View
VM VM VM VM VM VM
vSwitch vSwitch vSwitch
Internet
SW Data Center Network SW GW
9. Tenant View vs Infra View
• Quantum は論理操作をユーザに提供
• 物理操作はプラグイン or NW Controller が行う
Tenant-A
User VM VM
net2 net1 R
VM VM
Internet
Tenant-A
REST API VM
net1 R
VM
Tenatn View
Quantum Nova Infra (Provider) View
Plugin
VM VM VM VM VM VM
NW
Controller vSwitch vSwitch vSwitch
Internet
SW Data Center Network SW GW
10. Quantum API
• Network, Subnet, Port のそれぞれに対して
List, Create, Read, Update, Delete 操作を
REST API で行う。
– net-create, net-update, net-delete,
net-list, net-show
– subnet-create, subnet-update, subnet-delete,
subnet-list, subnet-show
– port-create, port-update, port-delete,
port-list, port-show
11. Quantum API (network)
$ quantum net-create net1
Created a new network:
+-----------------+--------------------------------------+
| Field | Value |
+-----------------+--------------------------------------+
| admin_state_up | True |
| id | a5d04085-3a15-470f-adca-b67c0958a829 |
| name | net1 |
| router:external | False |
| shared | False |
| status | ACTIVE |
| subnets | |
| tenant_id | c3ed8c16308642de9b15647759d9e5e9 |
+-----------------+--------------------------------------+
12. Quantum API (subnet)
$ quantum subnet-create net1 172.16.1.0/24
Created a new subnet:
+------------------+------------------------------------------------+
| Field | Value |
+------------------+------------------------------------------------+
| allocation_pools | {"start": "172.16.1.2", "end": "172.16.1.254"} |
| cidr | 172.16.1.0/24 |
| dns_nameservers | |
| enable_dhcp | True |
| gateway_ip | 172.16.1.1 |
| host_routes | |
| id | 736b30c1-5b83-4b52-b5ac-a397273cb240 |
| ip_version | 4 |
| name | |
| network_id | a5d04085-3a15-470f-adca-b67c0958a829 |
| tenant_id | c3ed8c16308642de9b15647759d9e5e9 |
+------------------+------------------------------------------------+
13. Quantum API (port)
$ quantum port-show 332d3288-5d7a-4ea9-8af6-9b5c82615bb2
+----------------+--------------------------------------------------------+
| Field | Value |
+----------------+--------------------------------------------------------+
| admin_state_up | True |
| device_id | d8b5dc3c-f73c-44bf-9c04-13f986cf5e6b |
| device_owner | compute:nova |
| fixed_ips | {"subnet_id": "d9054ffb-1a0d-41d1-835b-8758d11f0060", |
| | "ip_address": "10.0.0.3"} |
| id | 332d3288-5d7a-4ea9-8af6-9b5c82615bb2 |
| mac_address | fa:16:3e:20:b9:f6 |
| name | |
| network_id | 6d013e3f-7ea9-402c-9725-9cb693809988 |
| status | ACTIVE |
| tenant_id | 34657b6768184444af7b5081213e6e73 |
+----------------+--------------------------------------------------------+
14. 15. 16. 17. VM Launching (2)
nova boot --flavor 1 --image 58ba017b-dd22-492f-a826-b8c72a133be0
--nic net-id=45fe25eb-f5ef-43b1-b006-6878c1643111 server1
18. Quantum Architecture
• 物理ネットワークの制御は Quantum Plugin が行う。
• Plugin を切り替えることで、様々なネットワーク技術を利用
できる。現在は同時には一種類のみ利用可。
CLI / Dashboard (Horizon) / Orchestration Tool
Quantum API
Nova API
Nova
Quantum Nova Compute Nova Compute
Quantum Plugin
VM VM VM VM
Virtual Switch Virtual Switch
agent agent
Physical Network HW Switch
19. OpenStack と OpenFlow の連携
CLI / Dashboard (Horizon) / Orchestration Tool
Quantum API
Nova API
Quantum Nova
NEC OpenFlow Plugin
Nova Compute Nova Compute
OFC API VM VM VM VM
agent agent
OpenFlow Controller Virtual Switch Virtual Switch
OpenFlow Protocol
Network HW Switch
20. Quantum Plugin
• 現在 Mainline に入っているもの
• NW Controller なし
– Open vSwitch Plugin (VLAN, GRE)
– Linux Bridge Plugin (VLAN)
• SDN/OpenFlow 系
– Nicira NVP Plugin
– Ryu Plugin
– NEC OpenFlow Plugin
• Trema SliceableSwitch (OSS)
• ProgrammableFlow
– Big Switch Plugin
• その他
– Cisco Plugin : Cisco UCS と Nexus スイッチを利用
21. Quantum の機能ブロック
• Quantum Server
– 論理ネットワークの管理を行う
– Plugin は Quantum Server の一部
• Agent
– Quantum Server 以外のサービスプロセス。Quantum Server 以外の
サーバでも動作可能。
– Plugin の実現方式に応じて、必要に応じて使用する。
実現方式次第では Agent は不要。
• Plugin Agent
– vSwitch の情報取得、設定を行う
• DHCP Agent
– 仮想NW単位のDHCPサーバの管理を行う
• L3 Agent
– 論理ルータの操作を行う。論理ルータは、iptables を利用して実現
22. 機能ブロックと配置
External network
Management Network
eth0 eth2 eth0 eth0 eth0
Compute Node Compute Node
OVS
(br-ex)
Nova(CC)
Quantum DHCP agent Nova Nova
Server L3 agent Compute Compute
Plugin Agent Plugin Agent Plugin Agent
Network Node
OVS OVS OVS
(br-int) (br-int) (br-int)
Controller
Node
eth1 eth1 eth1
Data Network
23. 機能ブロックと配置
• Plugin Agent
– データトラフィックを扱うノードで動作させる必要あり
• Nova-compute ノード
• DHCP-agent が動作するノード
• L3-agent が動作するノード
• DHCP-agent, L3-agent
– いずれか一つのノードで動作させる必要あり
– L3-agent は外部ネットワークとの通信を行うため、
Nova-Compute ノードとは別ノードにするのが望まし
い。
– 現状、Nova-network の multi_host 構成は未対応
24. Quantum を使う上での注意点 (1)
• Network Namespace
– Linuxが持つネットワーク仮想化の機能で、1つの物理ホスト上に、
複数の独立したネットワーク機能を構成できる。
他の Namespace の影響を受けない。
– Quantumでは、IPアドレスが重複したネットワークを扱うために、
Network Namespace を利用しています。
起動したVMの動作確認に ping を打とうとした際に、
制御サーバから Ping を打っても届きません。
Network Namespace 内からコマンドを実行する必要があります。
ip netns exec <netns-name> ping 192.168.1.10
– 詳しくは “network namespace” で検索してください。
– 最近のUbuntu(12.04など)では問題なく動作しますが、
RHEL6/CentOS6系では現状は動作しません。
• Quantumの設定で Network Namespace を使用しないようにすることもできま
す。
25. Quantum を使う上での注意点 (2)
• ネットワークの操作は quantum コマンドで。
– nova-manage network は使わないで下さい。
create コマンド自体は成功して、list でも表示されますが、何の
意味もありません。Nova DBに書き込んでいるだけなので。
– Grizzly で、Quantum が有効になっていると、nova-manage
network でエラーが出るようになるかもしれません。
• KVM
– /etc/libvirt/qemu.conf に設定が必要です。
– Quantum では作成済みの tap device を指定してVMを起動しま
す。そのため、QEMU が tap device を操作できるように設定が
必要。
cgroup_device_acl = [
"/dev/null", "/dev/full", "/dev/zero",
"/dev/random", "/dev/urandom",
"/dev/ptmx", "/dev/kvm", "/dev/kqemu",
"/dev/rtc", "/dev/hpet", "/dev/net/tun",
]
26. 次期リリース Grizzly に向けて
• Closing gaps
– Nova との連携が十分でない機能の実現
– Quantum Security groups & metadata service
with overlapping IPs
– L3 forwarding 、DHCP機能の scalability 確保
• 負荷分散, nova “multi_host” flag 相当
• Advanced Services
– Load-balancing (LBaaS)
– VPN
27. 最後に
• Quantum を使うと、
– 仮想ネットワークを自由に作れるようになります。
自由なネットワークトポロジー。
– SDN/OpenFlow といった新しいネットワーク技術と
組み合わせて、従来のネットワーク制限を克服で
きます。
• 情報不足、機能不足な点も多いです。
– 日本OpenStackユーザ会の勉強会などもご利用
下さい。