Mais conteúdo relacionado
Semelhante a Quantum Networks (20)
Mais de OpenCity Community (20)
Quantum Networks
- 1. Architecture of Quantum Folsom Release
Yong Sheng Gong (龚永生)
gongysh@cn.ibm.com
gongysh #openstack-dev
Quantum Core developer
© 2012 IBM Corporation
- 2. Agenda
■ OpenStack and Quantum
■ Quantum Architecture
■ Quantum models
■ communications among quantum components
© 2012 IBM Corporation
- 3. Agenda
■ OpenStack and Quantum
■ Quantum Architecture
■ Quantum models
■ communications among quantum components
© 2012 IBM Corporation
- 4. OpenStack: core projects that form a complete IaaS solution
Compute (Nova)
Provision and manage
virtual machines
Dashboard (Horizon)
Self-service portal
Image (Glance)
Catalog and manage
server images
Identity (Keystone)
Unified authentication,
integrates with existing
systems
Network(Quantum)
provide "network
connectivity as a
service"
Object Storage (Swift)
petabytes of secure,
reliable object storage
adapted from:
http://26a0ff8ca8ba32139f7d-db711c577a50b6bdc946ea71aaca027d.r97.cf1.rackcdn.com/openstack-conceptual-arch-folsom.jpg / Block Storage
4 (Cinder) © 2012 IBM Corporation
- 5. Quantum-NaaS
*-as-a-Service Capability OpenStack Service
Compute Nova
Swift (Objects)
Storage Cinder (Block)
Glance (Images)
identity Keystone
Network Quantum
© 2012 IBM Corporation
- 6. Openstack architecture
OpenStack
Network API
OpenStack
Network API
quantum-server
REST
l3-agent
Queue
plugin-agent
quantum
database
dhcp-agent
OpenStack
Identity API
© 2012 IBM Corporation
- 8. Quantum uses network virtualization
1.Hypervisor
2.nova-scheduler
3.nova-computes
1.quantum-server
2.plugin
3.agents
8 © 2012 IBM Corporation
- 9. Agenda
■ OpenStack and Quantum
■ Quantum Architecture
■ Quantum models
■ communications among quantum components
© 2012 IBM Corporation
- 10. One of Deployment Models
■ Management network. Used for
internal communication between
OpenStack Components. The IP
addresses on this network should
be reachable only within the data
center.
■ Data network. Used for VM data
communication within the cloud
deployment. The IP addressing
requirements of this network
depend on the Quantum plugin in
use.
■ External network. Used to
provide VMs with Internet access
in some deployment
scenarios. The IP addresses on
this network should be reachable
by anyone on the Internet.
■ API network. Exposes all
OpenStack APIs, including the
Quantum API, to tenants. The IP
addresses on this network should
be reachable by anyone on the
Internet. This may be the same
network as the external network,
as it is possible to create a
quantum subnet for the external
network that uses IP allocation
ranges to use only less than the
full range of IP addresses in an IP
block.
from http://docs.openstack.org/trunk/openstack-network/admin/content/connectivity.html © 2012 IBM Corporation
- 11. Another one of Deployment Models
DHCP L3
Multi-host -> Multi-L3 Nodes?
© 2012 IBM Corporation
- 12. Components of quantum
■ Quantum server
Implement Qauntum API and its
l3-agent
extensions
Enforce network model
Quantum • Network, subnet, and port
IP addressing to each port
server & plugin
Plugin ■ Plugin agent
agent Run on each compute node
Connect instances to network port
■ DHCP agent
In multi-host mode, run on each compute
node (deferred)
Start/stop dhcp server
DHCPagent Maintain dhcp configuration
DB Queue L3-agent
To implement floating Ips and other L3
features, such as NAT
One per network
■ Queue
Enhance communication between each
Note: we can share DB service and Queue components of quantum
with other OpenStack stack services ■ DB – persistent network model
12 © 2012 IBM Corporation
- 13. Layers in Quantum server
vendor can add extensions
Quantum API and extensions to provide more features
Common service
(Validation, Authn, Authz)
Quantum Core
Plugin API vendor specific plugin or open source plugin:
1. linux bridge plugin
2. openvswitch plugin
Plugin 3. nicira
4. …
DB device
13 © 2012 IBM Corporation
- 14. Agenda
■ OpenStack and Quantum
■ Quantum Architecture
■ Quantum models
■ communications among quantum components
© 2012 IBM Corporation
- 16. Network and physical bindings
network
Physical network Virtual network
Identified by name Model in quantum
Network binding
Tenant network provider network
GRE and local bindings have VLAN
no physical network
Flat
GRE
Local binding are for
local
devstack single box playing
Linux bridge plugin has no
GRE support
Difference between provider network and tenant network?
© 2012 IBM Corporation
- 17. Other ways to view networks
internal
Private internal networks Shared internal networks
Only fixed Ips
are allocated
from there.
external
we can create
floating ips and Private external networks shared external networks
router gateway
on it, They
should be able
to access
public network
Other tenants
private Only owner tenant shared besides the owner
can create ports tenant can create
on it. ports on it.
© 2012 IBM Corporation
- 18. A network sample for fixed ips
Host A
network A
local Vlan ID 1 network C
local Vlan ID 3
int-br-eth1
patch-tun
br-int patch-port
veth
int-br-eth2
network B
local Vlan ID 2
phy-br-eth1 patch-int
phy-br-eth2
Physnet1 vSwitch Physnet2 vSwith
br-eth1 br-eth2 br-tun
GRE
eth1 eth2
VM ports
Physical net1 physical net2
vlan ID 1000 Flat host B
DHCP ports
host C
host C
local vlan id <-> tunnel id done by br-tun flow
local vlan id <-> physical net vlan id done by physical net and br-int vSwitch © 2012 IBM Corporation
- 19. Floatingip and Router
Vm
10.0.1.5/24
gw: 10.0.1.1/24 Floating ip fixed
port on fixed ip
network
Floatingip port Router interface
10.0.1.1/24 In general,
gw_port The port acting as
7.0.1.2/24 router interface
Floating ip: should has gateway
7.0.1.4/24 address of subnet
External network internal nework
router
external network
vswitch br-ex Vm
20.0.1.5/24
eth0 gw: 20.0.1.1/24
l3_agent
Router is used for VM to access outside and
allow VMs on different subnets or networks access each other
Floating IP is used for outside to access VM
© 2012 IBM Corporation
- 20. A network sample for fixed ips and routers
Host B Host A ovs-quantum-agent
L3-agent
ovs-quantum-agent network A network A
network C
dhcp-agent local Vlan ID 3 local Vlan ID 2 local Vlan ID 1 network C
local Vlan ID 3
br-int br-int
external network B
local Vlan ID 1 network B
network D local Vlan ID 2
binding: local
Physnet1 vSwitch Physnet2 vSwith Physnet1 vSwitch Physnet2 vSwith
br-ex br-tun br-tun
br-eth1 br-eth2 br-eth1 br-eth2
GRE GRE
eth0 eth1 eth1
eth2 eth2
VM ports
public net Physical net1
DHCP ports vlan ID 1000
physical net2
Flat
Router interface
ports
Router gateway
and flaoting ip
ports
© 2012 IBM Corporation
- 21. Agenda
■ OpenStack and Quantum
■ Quantum Architecture
■ Quantum models
■ communications among quantum components
© 2012 IBM Corporation
- 22. AMQP communication among quantum components
Dhcp agent
quantum-server
get_active_networks
get_network_info
get_dhcp_port
release_dhcp_port
release_port_fixed_ip
update_lease_expiration
Plugin agent Quantum rest api
(resource CUD)
get_device_details
update_device_down network_delete tunnel_update port_update
tunnel_sync
q-agent-notifier- q-agent-notifier- q-agent-notifier-
Quantum network-delete_fanout tunnel-update_fanout port-update_fanout
Exchange:
topic fanout fanout fanout
q-agent-notifier- q-agent-notifier- q-agent-notifier-
Queue: q-plugin notifications.info tunnel-update_fanout port-update_fanout
network-delete_fanout
_{uuid4} _{uuid4} _{uuid4}
Comsumer: quantum-server Dhcp agent Plugin agent
© 2012 IBM Corporation
- 23. Data flow of booting a virtual server among quantum components
© 2012 IBM Corporation
- 25. Backup – San Diego design summit
http://wiki.openstack.org/Summit/Grizzly/Etherpads
© 2012 IBM Corporation