openstack workshop (networking/storage)
TRANSCRIPT
API to create virtual networksSoftware defined!
Modular and multi-tenant arch (nova-network wasn’t)API=service, implementation=vendor
Plugins make it technology agnostic
IPAM, load balancer, VPN … Services provided by Network node
Neutron: Managing networks
5
Neutron concepts
Network An isolated L2 network segment (similar to a VLAN) for a shared L2 domain
Subnet A block of IP addresses and associated configuration state, like default GW and DHCP. This is also known as the native IPAM (IP Address Management) provided by the networking service for both tenant and provider networks.
Port A port is a connection point for attaching a single device, such as the NIC of a virtual server, to a virtual network. The port also describes the associated network configuration, such as the MAC and IP addresses to be used on that port.
Provider Network OpenStack administrator creates provider networks. These networks map to existing physical networks in the data center.
Security Groups A security group acts as a virtual firewall for your compute instances to control inbound and outbound traffic. Security groups act at the port level, not the subnet level. Therefore, each port in a subnet could be assigned to a different set of security groups.
http://docs.openstack.org/networking-guide/intro_os_networking_overview.htmld
What can users do with Neutron?
Create multi-tenant networks with private IP and overlapping space
Connect workloads to each network
Interconnect networks with routers
Provide external connectivity (e.g.
Internet) to workloads
7
Networking Architecture (reference architecture)
http://docs.openstack.org/security-guide/networking/architecture.html
8
Neutron Plugin Architecture (Modularity and Complexity!)
Core (L2) Service Plugins
Plugins
Monolithic ML2 LBaaS FWaaS
Driver3Driver1 Driver2
Feature set
Scale
Performance
High Availability
Manageability
Network topology
9
Plugin is …. Everything (and it matters!)
Source: Nir Yechiel, “OpenStack Networking with Neutron: What Plugin Should I Deploy?”
10
Physical Service Placement (generic)
10
Neutron Server
Core APIs API Extensions
Plugins
SDN Service (e.g. PLUMgrid Directors)
Neutron agent
Neutron agent
Nova compute
VM VM
Controller Node
Compute Nodes
Neutron agent
Nova-computeVM VM
Network Node (optional)
Internet
11
Physical Service placement (Reference)
From http://docs.openstack.org/security-guide/networking/architecture.html…focuses on a standard architecture that includes a cloud controller host, a network host, and a set of compute hypervisors for running VMs.
Each network has different accessibility requirements!
Object Store
Highly Scalable
Durable
Highly Concurrent, eventually consistent
Open source
Runs on commodity hardware
17
What is Swift?
But you can't:
mount it
have file hierarchies (?) Store objects sized > 5GiB (WIP)
Proxy service (Front-end proxy)
Back End (Back end)
Account service
Container service
Object service
Consistency service (Auditors and Replicators)
19
Swift Processes
20
Swift naming hierarchyhttps://swift.example.com/v1/account/container/object
Source: https://swiftstack.com/openstack-swift/
Block storage = your own volume/disks
Only and API with several reference implementation
Much like a Remote File System (DFS)
implementation thus use NFS, Ceph, CIFS
A different storage view
Volumes attach to VM instances
Boot from volume
Volumes have a life-cycle independent of VM instances
29
Cinder
30
Architectural view (HP hellion specific)
https://docs.hpcloud.com/commercial/GA1/1.1commercial.-vsa-overview.html
Default LVM, can be Ceph etc.