merging planetlab and the cloud - ieice the institute of ...nv/2nd-andy.pdf · openstack,...

20
Merging PlanetLab and the Cloud Andy Bavier Princeton University NV Symposium, Kyoto Japan 24 August, 2012

Upload: others

Post on 29-Jun-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

Merging PlanetLab and the Cloud

Andy Bavier Princeton University

NV Symposium, Kyoto Japan 24 August, 2012

Page 2: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

PlanetLab �  Begun in 2002, used by thousands of researchers

�  Fundamental idea: stronger science �  Demonstrate that research really works

�  Scalability, robustness, real workloads

24 August, 2012 NV Symposium, Kyoto Japan 2

Page 3: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

A Distributed “Cloud” �  PlanetLab: distributed virtualization of compute

and network resources

�  Slices �  Service “sandbox” �  Programming environment

�  Network overlays �  Transport, topology

�  Network substrate

24 August, 2012 NV Symposium, Kyoto Japan 3

Page 4: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

Software: MyPLC �  Anyone can create a private PlanetLab

�  PlanetLab node software

�  PLC management framework + API �  Image, configure physical nodes

�  Create / delete VMs

�  Monitoring tools

�  Examples �  VINI (virtual networks)

�  MeasurementLab (network measurement) �  VICCI (Cloud research)

24 August, 2012 NV Symposium, Kyoto Japan 4

Page 5: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

Issues… �  PlanetLab is a decade old – it looks dated

�  Overlap with IaaS Cloud management platforms �  OpenStack, Eucalyptus, CloudStack, OpenNebula, etc.

�  Virtualization: Linux Vserver �  In 2002 was most mature technology

�  Small developer base, requires custom-built kernel

�  Newer virtualization technologies: Xen, KVM, LXC, etc.

�  PlanetLab is designed for overlay networks �  Widespread research interest in SDN (e.g., OpenFlow) �  Does not offer deep network programmability

24 August, 2012 NV Symposium, Kyoto Japan 5

Page 6: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

Retiring MyPLC �  PlanetLab platform is still useful for research

�  PlanetLab architecture remains sound �  Slices and overlays are still useful abstractions �  The GENI architecture is based on PlanetLab �  At a high level most Clouds resemble PlanetLab

�  Problem: stale implementation �  Open-source IaaS Cloud stacks can also manage VMs �  Decreasing value in maintaining MyPLC

�  Solution: merge MyPLC and OpenStack �  MyPLC becomes a collection of software add-ons to the

OpenStack toolset

24 August, 2012 NV Symposium, Kyoto Japan 6

Page 7: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

Goals �  Modest:

�  Keep PlanetLab relevant for research (e.g., GENI)

�  Reduce our maintenance burden �  Target our development towards creating real value

�  Leverage the OpenStack developer community �  Donate core PlanetLab technologies to the Cloud

�  Ambitious: �  Establish a tech transfer path for the PlanetLab

community’s research innovations

�  Participate in the SDN + Cloud revolution

24 August, 2012 NV Symposium, Kyoto Japan 7

Page 8: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

Strategy �  Management: merge PLC => OpenStack ecosystem

�  SDN: adopt Open vSwitch and Quantum for virtualizing the network

�  Compute virtualization: Linux Containers (LXC)

24 August, 2012 NV Symposium, Kyoto Japan 8

Page 9: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

Management: OpenStack �  Open source Cloud software

�  Infrastructure as a Service (IaaS) => provision VMs

�  Collection of “cloud services” �  Tenant-facing API: logical abstractions �  Backend implementations of API

�  Components: �  Nova – Compute as a Service

�  Swift, Glance – Storage as a Service �  Quantum – Network as a Service

24 August, 2012 NV Symposium, Kyoto Japan 9

Page 10: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

Conceptual Cloud Arch

24 August, 2012 NV Symposium, Kyoto Japan 10

Page 11: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

Nova Coverage

quantum

24 August, 2012 NV Symposium, Kyoto Japan 11

Page 12: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

Merging PlanetLab �  Map PlanetLab to OpenStack concepts

�  E.g., slice => tenant, site => availability zone

�  Identify critical gaps in Nova coverage that are filled by PlanetLab modules �  Security, robustness in a distributed environment

�  Imaging and configuring physical nodes �  User-facing dashboard, PLCAPI

�  Logging and monitoring

�  Package PlanetLab modules as OpenStack projects

24 August, 2012 NV Symposium, Kyoto Japan 12

Page 13: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

SDN: Quantum �  Where will SDN play out in the Cloud?

�  Network as a Service (NaaS)

�  Quantum: OpenStack core project (Folsom) �  Tenants can create virtual networks, control addressing �  Quantum API + pluggable controllers => many backends

�  Can leverage Open vSwitch (Linux software bridge) �  OpenFlow, tunneling, QoS, monitoring, …

�  PlanetLab goals: �  Provide per-slice virtual topologies �  Allow experimentation with SDN inside a PlanetLab slice

24 August, 2012 NV Symposium, Kyoto Japan 13

Page 14: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

Virtualization: LXC �  PlanetLab uses lightweight OS containers

�  Scalability: 100’s of slices on a single node

�  Historically: Linux VServers �  Custom kernel, few developers

�  Now: Linux Containers �  Similar to VServers �  Already in mainline Linux kernel

�  Better hardware support, security fixes, etc.

�  Contribute our expertise to making LXC more robust

24 August, 2012 NV Symposium, Kyoto Japan 14

Page 15: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

PlanetLab Networking �  VServer has minimal network virtualization

�  All slices have same IP address, share port space

�  Single shared stack, per-slice traffic isolated only

�  LXC allows customization of network stack �  Each slice has its own network namespace �  Can customize at L2 and above: per-slice virtual

devices, routing table, firewall, bridging, TCP parms

�  Leverage Open vSwitch �  Flexibly supports connecting VMs to the network

24 August, 2012 NV Symposium, Kyoto Japan 15

Page 16: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

PlanetLab Classic �  Single public IP address

�  Each slice has a private IP address (10.0.0.0/8)

�  Connect to external network via NAT

�  BUT can also bind directly to external ports

�  Everything that used to work still works…

NIC

Slice 1 Slice 2 Slice 3

vSwitch

NAT

IP routing

24 August, 2012 NV Symposium, Kyoto Japan 16

Page 17: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

Measurement Lab �  Gather data on ISP

performance

�  Joint project with Google and New America Foundation

�  Each slice has a public IP address

�  Virtual interfaces bridged at L2 to external NIC

NIC

Slice 1 Slice 2 Slice 3

vSwitch

24 August, 2012 NV Symposium, Kyoto Japan 17

Page 18: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

VINI �  Virtual L2 topology inside

a slice

�  Tunnel L2 over L3 (EGRE)

�  vSwitch binds virtual interfaces in slices to specific EGRE tunnels �  Show up as virtual

interfaces in Linux

�  Multiple virtual interfaces per slice

�  SIGCOMM 2006 NIC

Slice 1 Slice 2 Slice 3

vSwitch

EGRE 4

EGRE5

EGRE6

24 August, 2012 NV Symposium, Kyoto Japan 18

Page 19: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

InstaGENI �  Virtual L2 topology inside

a slice

�  Use VLANs for L2 sandbox

�  vSwitch binds virtual interfaces in slices to specific VLANs �  Show up as virtual

interfaces in Linux

�  Multiple virtual interfaces per slice

NIC

Slice 1 Slice 2 Slice 3

vSwitch

VLAN4 VLAN5 VLAN6

24 August, 2012 NV Symposium, Kyoto Japan 19

Page 20: Merging PlanetLab and the Cloud - IEICE The Institute of ...nv/2nd-andy.pdf · OpenStack, Eucalyptus, CloudStack, OpenNebula, etc. ! Virtualization: Linux Vserver ! In 2002 was most

Summary �  Our mission: continue to provide value to the

networking research community �  SDN, GENI, NV, FI, etc.

�  Next step: align PlanetLab and the Cloud �  Management: OpenStack + Quantum

�  Virtualization: LXC + Open vSwitch

�  Create a robust, scalable, wide-area IaaS Cloud based on OS containers and virtual switches

24 August, 2012 NV Symposium, Kyoto Japan 20