This 2nd major State of the Stack address is a complete refresh of the spring 2013 edition, broadcast live on BrightTALK from the OpenStack Summit in Hong Kong.
(Replay: https://www.brighttalk.com/webcast/10353/92159)
Randy Bias, CEO and Co-founder of Cloudscaling examines the progress from Grizzly to Havana and delves into new areas like refstack, tripleO, bare metal server provisioning, the move from "projects" to "programs", and public/hybrid cloud compatibility. Check out the updated statistics on project momentum and look more closely at big upgrades in Havana, including OpenStack Orchestrate (Heat), which has the opportunity to change the game for OpenStack in the greater private and hybrid cloud game. We also discuss the "what is 'core'" debate and examine the idea that OpenStack is a kernel, not a complete cloud OS.
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
State of the Stack v2
1. @randybias
State of the Stack v2
An Update on Why OpenStack is The New Linux.
OpenStack Summit, Hong Kong
November 7th, 2013
CCA - NoDerivs 3.0 Unported License - Usage OK, no modifications, full attribution*
* All unlicensed or borrowed works retain their original licenses
3. Who
OpenStack Foundation Board of Directors
Prod. OpenStack pioneer, Cloudscaling:
Part of OpenStack community since July 2010 (launch)
Wins: KT, Internap, LivingSocial, Seagate & others
Advisor to dotCloud (docker.io)
Top 10 Cloud Computing Pioneer
3
4. My Bias
I run an OpenStack product company
... opinions expressed here are mine
Not the foundation, not the community, just one POV
I believe the pioneers to emulate are:
I have run big data centers
100K+ sq ft, 1,000s of physical servers, 100s of switches
4
5. 1
What is OpenStack?
2
Why the Success?
3
History & Momentum
4
OpenStack Governance
5
Stackology - OpenStack at 10km
6
Stacking it Up - a dive into the projects
7
Stack Gaps
8
Who’s using it and how?
9
RightScale - State of the Cloud Report
10
Summary
5
7. OpenStack From 10km
Your Applications
OPENSTACK
APIs
CLOUD OPERATING SYSTEM
OpenStack Dashboard
Compute
Networking
OpenStack Shared Services
Standard Hardware
7
Storage
8. OpenStack Mission
"To produce the ubiquitous Open Source cloud computing
platform that will meet the needs of public and private
cloud providers regardless of size, by being simple to
implement and massively scalable."
Code
Community
8
9. OpenStack Foundation Mission
The OpenStack Foundation is an independent body providing
shared resources to help achieve the OpenStack Mission by
Protecting, Empowering, and Promoting OpenStack software and
the community around it, including users, developers and the entire
ecosystem.
The ubiquitous cloud
computing platform
9
10. The Battle is Over (open src)
OpenStack Launch
OpenStack
CloudStack
Eucalyptus
OpenNebula
Source: trends.google.com
10
11. Battle is Nearly Over (closed src)
OpenStack
vSphere
vCloud
Source: trends.google.com
11
12. Linux 2000 vs. Linux 2009
Is this OpenStack’s Trajectory?
2000
2009
Linux
Linux
Unix
Unix
Linux
UNIX
BSD
Windows/Other
Operating system family market share
Mixed
Source: Linux Magazine
http://www.linux-mag.com/id/7749/
12
13. Fastest Growing Global Open Source Community
COMPANIES
COUNTRIES
275
12,439
TOP 10 COUNTRIES
INDIVIDUAL MEMBERS
TOTAL DEVELOPERS
1,036
72+
United States, China, India,
Great Britain, Australia, France,
Russia, Canada, Ireland, Germany
AVERAGE MONTHLY
CONTRIBUTORS
TOTAL CODE CONTRIBUTIONS
70,137
>400
“OpenStack appears to be a more advanced or more modern open source project than
some of its predecessors because it's a highly coordinated effort.”
– Charlie Babcock
Information Week
13
14. Havana Stats
CONTRIBUTORS
NEW FEATURES
392
910 (+70%)
+20,000
TOP 10 CONTRIBUTING COMPANIES
COMMITS MERGED
COMMITS / DEV
~22
Canonical, Dreamhost, eNovance, HP, IBM,
Intel, Mirantis, OpenStack Foundation,
Rackspace, RedHat, Suse, and Yahoo!
INCREASE IN NEW
FEATURES
TEST CLOUDS DEPLOYED DAILY
>700
70%
“OpenStack appears to be a more advanced or more modern open source project than
some of its predecessors because it's a highly coordinated effort.”
– Charlie Babcock
Information Week
14
16. Who or What Should We Thank?
1
OpenStack Foundation & Community
2
The Big Enterprises for Driving Interest
3
Esp., all of the companies who realized this could be big
Maturity of Community SDLC
No other similar project has this SDLC+velocity
16
17. 17
an
Te ce
st d
in C
g I&
dv
ed
ar )
Sh slo
ed (O
liz s
ra rie
nt ra
Ce Lib
A
ul
ar
C R
yc e
le lea
eg
se
n
pe
O rs
al de
on a
si Le
es e
of rc
Pr Sou
R
OpenStack Development Maturation
SDLC
18. Regular Release Cycle
Every 6 months, we coordinate & integrate:
Thousands of patches & commits
Across hundreds of developers
While also increasing # of projects
In last 3 yrs: grew from 2 to 9 “integrated” or “core” projects
+4 more new projects in “incubation” as of Havana
No other related project is capable of this
No other related project has this many
capabilities or is this complex
18
19. Professional Open Source Leaders
Experienced open source companies:
RedHat, IBM, HP, Mirantis, etc.
Dev leaders w/ open source histories:
Nova - Russell Bryant (Asterisk)
Oslo - Mark McLoughlin (KVM, GNOME, Linux kernel, Java)
TripleO & CI system - Monty Taylor (MySQL)
... etc.
Very different from origins
19
20. Advanced Continuous Integration
Massive Effort à Improved Quality
Parallel test pipelining w/ grouped, related changesets
Gated Commits
All Code Has to Jump Through Gates
Tempest Test Framework
Service Level Testing, Regressions, Full Behavorial Tests, etc.
Code Reviews & Continuous Integration
Jenkins, Gerrit
At scale: jenkins.openstack.org
More than 700 end-to-end tests every day
20
21. Massive Test Suite
Total Tests (Unit + Tempest)
Tempest Tests in One Year
20000
700
15000
525
10000
350
5000
175
0
Nova
Keystone
Heat
0
7/2012
Neutron
Glance
Swift
Cinder
Oslo
Tempest
12/2012
3/2013
Tempest Test Count
21
7/2013
22. Centralized Shared Libraries
Project Oslo
Less interest in shared code and reuse initially
Run by experienced leader, Mark McLoughlin
Where all common code goes
Allows shared code and reuse
Easier re-factoring
Core database code recently centralized
oslo.db library
22
23. Take Away: OpenStack is Well Organized
“[the coordinated
releases are] an
indicator that the
OpenStack
project is well
organized in terms
of sub-project
management.”
Qingye Jiang (John) - Open Source IaaS Community Analysis CY13 - Q3
http://www.qyjohn.net/?p=3373
23
26. Incredible Industry Support
Top 3 x86 Vendors
The top 3 vendors in every single
category support OpenStack
Top 3 Router Vendors
Top 3 Blade Vendors
Top 3 Linux Vendors
Top 3 Switch Vendors
Top 3 Storage Vendors
Top 3 Hypervisors
26
31. Growth by Domain (company - roughly)
For the CloudStack
projects, influence from
Citrix is quite obvious, over
48% of github.com
commits come from
accounts belonging to
citrix.com and cloud.com.
Qingye Jiang (John) - Open Source IaaS Community Analysis CY13 - Q3
http://www.qyjohn.net/?p=3373
31
35. Creating a Technical Meritocracy
Launch w/
Project
Oversight
Committee
Tech Comm
Project
Policy
Board
Tech Comm
July 2010
Mar 2011
Foundation
Announced
Board of
Directors
Tech Comm
Oct 2011
Community
Control
Rackspace
Control
35
Apr 2012
36. Philosophical Approach
Ensure an inclusive process for contributors
Companies
Individuals
Users
https://wiki.openstack.org/wiki/Governance/Foundation/Structure
36
37. Foundation Overview
Direct Governance Model
Foundation
Board of Directors
Technical
Committee
User
Committee
Represents
business interests
Represents
developers
Represents
users
13
TBD
8
8
8 Platinum
Members
8
16 Gold
Members
10,000+ Ind
Members
https://wiki.openstack.org/wiki/Governance/Foundation/Structure
37
50 Corp
Sponsors
200+ Supp.
Orgs
38. Foundation Board of Directors
Represents the business interests of the OpenStack Project
Foundation
Board of Directors
Provides strategic and
financial oversight to
promote OpenStack
8
8
8 Platinum
Members
50 Corp
Sponsors
8
10,000+ Ind
Members
16 Gold
Members
https://wiki.openstack.org/wiki/Governance/Foundation
38
200+ Supp.
Orgs
39. Technical Committee
Represents developers... technical people making technical decisions
Members are elected by individual
members every 6 months for a
staggered 1 year term (6 Fall/7 Spring)
Technical
Committee
13 Members
Public IRC meetings held weekly
Anyone can join but only the 13
TC Members can vote
TC is independent, meritocratic and
able to change its structure and
processes
https://wiki.openstack.org/wiki/Governance/Foundation/TechnicalCommittee
39
Program1
PTL
P2
PTL
Active Program
Contributors
10,000+ Ind
Members
...
40. OpenStack User Committee
Represents OpenStack users
The structure of the User
Committee is still being defined
Mission is to:
• Consolidate user requirements
for the board and TC
• Provide guidance for the
development teams
• Track OpenStack deployments
and usage
• Work with user groups worldwide
https://wiki.openstack.org/wiki/Governance/Foundation/UserCommittee
40
41. OpenStack Programs
Efforts Essential to the Completion of the OpenStack Mission
Elected Project Technical Leads (PTLs)
organize the work of teams and make
project-level decisions for each program
PTLs are elected by Active Program
Contributors (APCs) every 6 months
Nova
Swift
Glance
Cinder
Keystone
Horizon
Programs are under the oversight of the
Technical Committee
Neutron
Ceilometer
Heat
...
https://wiki.openstack.org/wiki/Programs
41
43. What is OpenStack?
1
A open source component framework for IaaS clouds
2
Delivering compute, networking & storage services
3
Analogous to the Linux kernel (very tunable)
43
44. OpenStack (m)Architecture Slide
Other stuff, you probably need/want
Topology &
Metadata
CLI tools
Dashboard
REST
Other tools
UI Layer
REST
Provisioning
Orchestration
Networking
REST
Log
Aggregation
Block
Storage
Compute
Object
Storage
REST
REST
Health
Monitoring
DNS
etc.
Image
Management
SQL, etc.
Database
/ KVS
/ Cache
REST
Varies
Physical
Network
Provider
Meter Data
Identity
Management
Varies
Hypervisor(s)
44
Elastic
Services
Layer
Metering
Varies
External
Block
Provider
Shared
Services
Layer
AMQP/0MQ
Queuing
Data &
Resource
Layer
45. OpenStack (m)Architecture Slide
Other stuff, you probably need/want
Topology &
Metadata
CLI tools
Dashboard
REST
Other tools
UI Layer
REST
Provisioning
Orchestration
Networking
REST
Log
Aggregation
Block
Storage
Compute
Object
Storage
REST
REST
Health
Monitoring
DNS
etc.
Image
Management
SQL, etc.
Database
/ KVS
/ Cache
REST
Varies
Physical
Network
Provider
Meter Data
Identity
Management
Varies
Hypervisor(s)
44
Elastic
Services
Layer
Metering
Varies
External
Block
Provider
Shared
Services
Layer
AMQP/0MQ
Queuing
Data &
Resource
Layer
46. OpenStack (m)Architecture Slide
Other stuff, you probably need/want
Topology &
Metadata
CLI tools
Dashboard
REST
Other tools
UI Layer
REST
Provisioning
Orchestration
Networking
REST
Log
Aggregation
Block
Storage
Compute
Object
Storage
REST
REST
Health
Monitoring
DNS
etc.
Image
Management
SQL, etc.
Database
/ KVS
/ Cache
REST
Varies
Physical
Network
Provider
Meter Data
Identity
Management
Varies
Hypervisor(s)
44
Elastic
Services
Layer
Metering
Varies
External
Block
Provider
Shared
Services
Layer
AMQP/0MQ
Queuing
Data &
Resource
Layer
47. Layer
AWS
Equivalent
Self-service, role-based web
interface for users and administrators
UI
Console
Horizon
Compute
Provision and manage large pools of
on-demand computing resources
Elastic
Service
EC2
Nova
Block Storage
Volumes on commodity storage gear,
and drivers for turn-key block storage
solutions
Elastic
Service
EBS
Cinder
Object
Storage
Networking
Petabytes of reliable storage on
standard gear
S3
Swift
L2-focused on-demand networking
with some L3 capabilities
Elastic
Service
Elastic
Service
VPC
Neutron
Orchestration
Application orchestration layer that
runs on top of and manages
OpenStack Compute
Elastic
Service
CloudFormation,
CloudWatch
Heat
Metering
Centralized metering data for all
services for integration to external
billing
Shared
Service
N/A
Ceilometer
Identity
Multi-tenant authentication system
that ties to existing stores (e.g.
LDAP) and Image Service
Shared
Service
None
Keystone
Image
Management
Upload, download, and manage VM
images for the compute service
Shared
Service
VM Import/
Export
Glance
Projects
Description
Dashboard
45
Codenames
48. Incubated à Integrated à Core
Ensures projects meet a high standard of usefulness and quality
https://wiki.openstack.org/wiki/Governance/NewProjects
46
49. OpenStack is Expanding (Grizzly)
Nova
Swift
Greater OpenStack Ecosystem
Glance
Keystone
Horizon
Neutron
Cinder
Ceilometer
Heat
Incubation
Integration
Direction of Project/Program Induction
47
Core*
50. OpenStack is Expanding (Havana)
Nova
Swift
Greater OpenStack Ecosystem
Glance
Keystone
Horizon
Neutron
Cinder
Ceilometer
Heat
TripleO
Ironic
Marconi
Trove
Incubation
Integration
Direction of Project/Program Induction
48
Core*
51. OpenStack is Expanding (Icehouse)
Nova
Swift
Greater OpenStack Ecosystem
Glance
Keystone
Horizon
Neutron
Cinder
Ceilometer
Heat
TripleO
Ironic
Marconi
Trove
Savanna
Incubation
Integration
Direction of Project/Program Induction
49
Core*
53. Brief Word On the Architecture
Bi-furcated set of services
Some pluggable, some monolithic
Some distributed, some much less so
Some inherently HA, some not
Pluggable, distributed services use RPC
Internal RPC mechanism is (a)sync message passing
Allows remote method invocation (as expected)
51
56. A Quick Note of Thanks
These diagrams would not have been
possible without the prior work of:
Ken Pepple, Solinea (@ken_pepple)
Dina Belova, Mirantis
... and the help of several Cloudscalers:
Eric Windisch (@ewindisch)
Joe Gordon (http://github.com/jogo)
Dan Sneddon (@dxs)
Joseph Glanville (@jpgvm)
54
57. Caveat Emptor
The focus for these diagrams was ease of
reading, not accuracy.
See Ken Pepple’s originals or the code if you need truth.
That being said, our team tried really hard for accuracy.
Blame me for any errors.
55
61. Compute Thoughts
Nova still runs best w/ KVM
Do we need another hypervisor? What’s the biz case?
ESX support is a mess
Multiple Availability Zones still not solved
Cells are for making one AZ bigger
complex, tight-coupling
We need a clean sharding mechanism for AZes
also what about Cinder and Neutron?
Cinder/Neutron integr. needs examining
More information needs to be able to be passed back
59
62. Compute (Networking) Thoughts
nova-network still required
Neutron has been L2 focused & L3 gap still exists
centralized “single-host” networking is #fail
decentralized “multi-host” is more #fail
nova-conductor security for hypervisor obviated
metadata-api, nova-network, or Neutron on all HVs?
security implications
reconciling Neutron and nova-network?
Neutron needs more L3 capability, but ...
do we always want Neutron in every deployment?
60
64. Block Storage Thoughts
Default “nova-volume” func. is too minimal
When people think Block Storage service they assume:
Persistent, Network-based, & Performant - it isn’t
Cinder scheduler needs info from Nova
Assuming you want to do anything interesting
Point of lock-in since default isn’t useful
You have to place a bet on a block storage solution
These are expensive, experimental or proprietary
Rely on vendor not community to help w/ problems
62
66. Networking Thoughts
Default networking functionality is minimal
The APIs have been L2-centric
L3 functionality is same as existed with nova-network
Same architecture, same basic layout, with all of the downsides
Needs a Neutron plugin for full func.
Can’t run more than one plugin at a time per function
Not clear how many production deployments there are:
http://lists.openstack.org/pipermail/openstack-operators/2013-September/
003584.html
Good news is that this area is hot
So hopefully this is unstuck soon
64
68. Object Storage Thoughts
Strength: massive concurrency, proven scale
Swift needs additional attention
Too much focus on Nova and Neutron as the “new shiny”
Container replication is a bad hack
Originally most mature of the projects; but has lagged
Good news: area has many new players
Seagate, SwiftStack, RedHat, IBM, eNovance, Mirantis, and HP all deeply involved
Major new features coming:
Global clusters for multi-site replication
Features for prioritized replication
Pluggability for support of DFS like GlusterFS (RedHat)
66
70. Image Mgmt Thoughts
Still not clear why this is standalone project
Really a sub-function of Compute
Semi-pluggable (but not really)
Uses different backends for image storage
To be really useful it needs more features:
P2V, V2V, and other image conversion
Ability to slipstream PV drivers into images
Convert from popular formats: OVF, AMI, etc.
68
72. Identity Mgmt Thoughts
Mixed identity / schizophrenia
Verifies identity, authorization, AND service registry
Service registry is one of many
Nova, Cinder, et al have their own internal registries
Slows everything down
See LivingSocial presentation from Folsom Summit
Mitigated with memcache assuming you turn it on
OpenStack needed to reinvent wheel here?
Could have just been LDAP with a schema + caching
70
74. Dashboard Thoughts
It’s gotten waaay better!
Same UI for end-user and admin is bad idea
CloudStack did this and it was a mess
The workflows and views are too different
Security considerations exist
General lag: many things aren’t accessible
e.g. Heat, TripleO, Marconi, Trove, etc.
Can be a 6 month cycle time for new feature UI support
Need better docs on extending, w/o harm
Customers, product companies, SPs all want to modify
Allow for customizations, while supporting upgrades, etc.
72
76. Metering Thoughts
Metering systems are hard
Bad or incomplete data for SPs is existential
Metering system should be *very* baked (is 1yr enough?)
No tokenized meter data
Instance hours not enough
How do you bill for Windows, Oracle, RHEL licenses?
Tokens stack: size of instance, OS and app licenses, etc.
Needs to get flow data from edge switches
Netflow and/or Sflow support for physical switches
Data from the vSwitches is not the best source in the real world
74
78. Orchestration Thoughts
Huge potential
Adds additional AWS func: CloudWatch, CloudFormation
Provides clean templates for stacks, which means:
OpenStack on OpenStack (OoO) for testing, etc.
First primary project that rides “on top”
Clear differentiator over other projects
Initiative: Heat templates for Ref Arch
Vendors, customers, etc. could feed to prov systems:
Crowbar, Piston, Cloudscaling, etc.
76
79. SWOT: OpenStack
Strengths:
Weaknesses:
De facto winner
Incredible community
Mature SDLC
Mini-benevolent dictators in PTLs
Super flexible framework
Can build any kind of cloud
No single benevolent dictator
Interoperability will be difficult
Not impossible, *difficult*
Flexibility limits interoperability
Opportunities:
Threats:
Build an SQL92 base for cloud
compute (see Threats)
refstack
Public cloud compatibility as first
order initiative
AWS, GCE, and vCloud
Hybrid-first strategy
Splintering, fragmentation, and
customization
Customer DIY failures
Flexibility allows you to shoot
yourself in the foot easily
Forking or ivory tower thinking
77
81. What’s In a Complete Cloud OS?
OpenStack
Relationship
User Interface(s)
Who?
Horizon, CLI, ...
OpenStack,
Vendor, Ecosystem
Elastic Resource
Management
Nova, Swift,
OpenStack,
Neutron, Cinder, ... Vendor, Ecosystem
Service Discovery
Scattered:
OpenStack, Vendor
Nova, Keystone, ...
AAA Controls
Keystone (authen/
author), various
projects (ACLs)
OpenStack
HW/SW Life Cycle
Management
N/A
Vendor, Ecosystem
Service Management
N/A
Vendor
Health & Logging
N/A
Vendor, Ecosystem
Topology & Inventory
N/A
Vendor
Hardware
Certifications
N/A
OpenStack,
Vendor, Ecosystem
* We’re all _trying_ to close this gap
OpenStack Ecosystem Vendor
Score
Score
Target*
4
4
2
2
1
0
4
4
4
2
0
4
1
0
0
0
1
2
1
0
0
1
4
4
4
4
2**
** It’s a hard problem no one will solve individually
79
82. Your Basic Choices
1
Download OpenStack and DIY
2
OpenStack Distributions
3
Turn-key Products or Systems
powered by OpenStack
80
83. OpenStack Deployment Options
Deploy a
Turnkey
System
(product)
Hire a
Do It
Do
3rd Party
Yourself
Nothing
(distro, src) (distro, src)
Time to Production
4
2
1
0
Cost of Ownership
4
2
1
0
Minimize Resources Needed
4
0
1
4
Support
4
1
0
0
Upgradability & Enhancements
4
2
2
0
Customization / Complexity
2
3
1
0
81
84. Diablo
5%
The Downside of DIY
Trunk
8%
Grizzly
15%
Essex
25%
Completing Cloud OS is on you
It’s not like downloading MySQL
Version
Folsom
47%
Building your own custom Linux? Really?
Impediment to innovation
1) You can’t upgrade to latest because you customized
2) You can’t customize because you need to upgrade
Silo & empire building again? (NOT cloud)
Training? Support? Hardware variation?
82
93. Who Hacked on “core” for Havana?
Mirantis Stackalytics - All contributors for “core” in Havana
http://www.stackalytics.com/?release=havana&metric=loc&project_type=core&module=&company=&user_id=
91
95. Enterprises Want Multi-Cloud/Hybrid
Enterprise Cloud Strategy
1000+ employees
No plans
7%
Multi-public
15%
Multi-private
15%
Single public
11%
Multi-cloud
77%
Single private
5%
Source: RightScale State of the Cloud Report 2013
93
Hybrid cloud
47%
96. Those Using Pub Want Hybrid More
Enterprise Cloud Strategy of Public Cloud Users
1000+ employees
Multi-public
22%
No plans
1%
Single public
11%
Multi-private
13%
Multi-cloud
88%
Single private
2%
Source: RightScale State of the Cloud Report 2013
94
Hybrid cloud
53%
97. AWS is Dominant Public Cloud
Public Cloud Usage
AWS
RAX
GCE
Running apps
Windows
Azure
Experimenting
0%
20%
40%
60%
% of Respondents
Source: RightScale State of the Cloud Report 2013
95
80%
100%
98. OpenStack is Dominant Private Cloud
Private Cloud Usage
OpenStack
CloudStack
Running apps
Eucalyptus
Experimenting
0%
20%
40%
60%
% of Respondents
Source: RightScale State of the Cloud Report 2013
96
80%
100%
99. A Hybrid-First Cloud Strategy
1) Embrace public cloud architectures
AWS, GCE, RAX, Azure, and possibly vCloud
2) Expand work on refstack & Tempest
Public cloud interoperability & hybrid cloud
3) Embrace & extend existing AWS tests
eutester, aws-compat, OpenStack tempest, NetflixOSS
97
101. OpenStack is Winning
1
New Cloud Kernel for the Datacenter
Linux kernel to the other’s BSD kernel
2
Runaway Train
... in Terms of Hype, Adoption, AND Development
3
Rapidly Expanding
2 -> 14 projects in ~3 years
4
Hundreds of deployments
> 165 in production (that we know of)
5
Get involved
http://is.gd/openstack
99
102. Q&A
Randy Bias
CEO & Co-founder, Cloudscaling
Director, OpenStack Foundation
@randybias
engineering blog
http://simplicityscales.com/
100