Towards a Standard Model of Open Computing LinuxCon North America - August 19th, 2015
Adam Jollans, Cross-IBM Linux and Open Virtualization Strategy, IBM
1 © 2015 IBM Corporation Fundamental Components of Matter
• Molecules • Atoms • Electrons and Nucleus • Protons and Neutrons • Quarks Ø Standard Model of Particle Physics
2 © 2015 IBM Corporation Fundamental Components of Open Computing ?
• Stacks • eg LAMP, Linux Distributions
• Foundations • eg Apache Foundation
• Projects • eg Hadoop
• Sub-projects • eg OpenStack Nova
3 © 2015 IBM Corporation Creation
• Innovation • Individual • Small group • University • IT Vendor • Customer
• Existing Community • Starting new project or subproject • Splitting of project
• Open sourcing of existing code • Contribution to open source community
4 © 2015 IBM Corporation Forces
• Same Project • eg Linux
• Same Community • eg Apache, Eclipse
• Default Usage • eg LAMP Stack
• Open Source
5 © 2015 IBM Corporation Decay
• Forking • eg MySQL => MariaDB
• Acquisition • eg Xen => Citrix
• Change of Leadership • eg resignation of “Benevolent Dictator for Life”
• Technology Shifts • eg Symbian => Android
6 © 2015 IBM Corporation Exclusion Principle
• Can multiple projects occupy the same niche ? • Gnome & KDE • MySQL & MariaDB • OpenStack & CloudStack
• Industry Forces • Concurrent Innovations • Forking • Critical mass of Community • Ecosystem support
7 © 2015 IBM Corporation “Quantum” Numbers
• Size of Community • Developers • Corporate Members • Openness • 0 – single organization controlling • ½ - open community with multiple contributors • 1 – foundation with open governance • Spin • 0 – no marketing • ½ - single vendor marketing • 1 – open marketing community • Market Adoption • Downloads • Usage
8 © 2015 IBM Corporation XtraLarge Projects and Open Communities
• 2010 study by Henrik Ingo into popular open source projects, comparing governance models vs size of community
• 9 projects (Linux, KDE, Apache, Eclipse, Perl+CPAN, Mozilla +Addons, Gnome, Drupal and GNU) stood out as significantly larger - roughly 10 times - than any others
• All of these projects, categorized as "XtraLarge", were developed as collaborative community projects governed by non-profit foundations
• There appears to be a glass ceiling limiting the growth of the Large single-vendor projects (MySQL, Qt, OpenOffice, Mono, JBoss)
Henrik Ingo - http://openlife.cc/blogs/2010/november/how-grow-your-open-source-project-10x-and-revenues-5x
9 © 2015 IBM Corporation The LAMP Stack
Perl • Popular solution stack for dynamic web applications Python ½ PHP ½ ½ ½ ½ • Built out of fundamental components 17 members ½ 17 members • Linux 17 members • Apache HTTP server MySQL • MySQL Database 0 ½ • PHP / Python / Perl Scripting language ? developers
• All open source building blocks Apache ½ • Various forces linking components together ½ 114 committers • Components are interchangeable Linux
• Python, Perl, MariaDB,… 1 1 • Evolved rather than designed 249 members
10 © 2015 IBM Corporation Linux Kernel
• Operating System Kernel
• Active Development Contributions Linux • Over 3,500 individual developers • Over 200 companies 1 • Linux Foundation 1 • Board of Directors 3597 contributors • 249 Corporate Members • Professional Team • Marketing Activities - events, publications, blogs • Independent Technical Leadership • Fellows • Market Adoption • 51.6% market share – new physical servers “Linux Kernel Development - How Fast is it Going, Who is Doing It, What Are They Doing and Who is Sponsoring the Work” – Linux Foundation
11 © 2015 IBM Corporation Apache HTTP Server
• Development Contributions Apache • 8 original core contributors • Today - contributors, committers, PMC 1 • Apache Software Foundation 1 • Board of Directors 31 contributors • Volunteer Leadership • Consensus, collaborative approach • Events subcontracted to Linux Foundation • Independent Technical Leadership • Project Management Committees • Market Adoption • 37.5% cumulative market share – 327 million servers “August 2015 Web Server Survey” – Netcraft - http://news.netcraft.com/archives/category/web-server-survey/
12 © 2015 IBM Corporation MySQL
• Relational Database
• Development Contributions MySQL • Originally developed by MySQL AB 0 • Ownership • Copyright held by vendor ½ • Dual licensing – GPL and proprietary ? contributors • MySQL AB acquired by Sun • Sun acquired by Oracle • MySQL 5.5 forked into MariaDB (GPL only) • Market Adoption • Second most popular relational database
“DB-Engines Ranking” - http://db-engines.com/en/ranking
13 © 2015 IBM Corporation Linux Foundation Collaborative Projects
• Goal: to spread the collaborative DNA of Linux to new fields to enable innovation and access for all.
• Criteria: that must be met in order for the Linux Foundation to host a Collaborative Project:
1. The use of open source governance best practices including license and contribution agreement choices in keeping with the ideals of Linux
2. The project must have the potential to fuel innovation in an industry through collaborative software development
Linux Foundation Collaborative Projects - http://collabprojects.linuxfoundation.org
14 © 2015 IBM Corporation Linux Foundation Collaborative Projects
Framework for Platform-as-a-Service
Server-side Runtime Environment
Open Virtualization built on Linux
Software Defined Networking
Open Virtualization Hypervisor
Linux Foundation Collaborative Projects - http://collabprojects.linuxfoundation.org 15 © 2015 IBM Corporation Apache Foundation Projects
Framework for Big Data processing
Framework for IaaS Cloud computing
Document-oriented NoSQL database
Cluster computing framework
Apache Projects Directory - https://projects.apache.org/projects.html?number 16 © 2015 IBM Corporation Black Duck Open Hub
Black Duck Open Hub - https://www.openhub.net 17 © 2015 IBM Corporation IBM LinuxOne Open Source Components LINUX YOUR WAY
Distributions Hypervisors Languages Runtimes Management Database Analytics
18 © 2015 IBM Corporation Hot Projects
Framework for IaaS Cloud computing
Tools for packaging and deploying applications in containers
Relational database, forked from MySQL
Document-oriented NoSQL database
Distributed NoSQL database
Configuration management tools
Orchestration for Docker containers
Open Compute Project – sharing designs of data center projects
Open Hardware
19 © 2015 IBM Corporation OpenStack
• Software for IaaS Clouds
• Active Development Contributions OpenStack • Over 2,000 individual developers • Over 500 companies 1 • OpenStack Foundation 1 • Board of Directors 2157 contributors • Technical Committee • User Committee • 25 Corporate Members • 117 Corporate Sponsors • 393 Supporting Organizations • Professional Team • Marketing Activities - events, publications, blogs
20 © 2015 IBM Corporation OpenPOWER
• Open Technical Community based on the POWER architecture • Chip Design • System Design OpenPOWER • Open Source Software 1 • OpenPOWER Foundation 1 • Board of Directors 140 members • Technical Steering Committee • Work Groups • Marketing Committee • Advisory Group • 140 Corporate and Academic Members and Associates
21 © 2015 IBM Corporation Layers for an Open Computing Model
Management
Programming
Database
App Server
OS
Hardware
22 © 2015 IBM Corporation Strawman Open Computing Model
CloudStack OpenShift Puppet OpenStack CloudFoundry Chef 1 ½ ½ Kubernetes Management 1 1 1 ½ ½ ½ ½ 1 1 139 contribs 147 contribs ½ 147 contribs ½ 2157 contribs 950 contribs 139 contribs 457 contribs Perl Python 1 PHP Eclipse Programming 1 1 ½ 1 1 85 contribs ½ 52 contribs 1 210 contribs 126 contribs
MariaDB Cassandra MySQL PostgreSQL Hadoop Spark MongoDB Database ½ 1 0 ½ ½ 1 1 ½ 1 ½ ½ 1 66 members 1 ½ 109 contribs ? contribs 20 contribs 86 contribs 587 contribs 115 contribs Apache JBoss node.JS App Server 1 ½ 1 1 ½ 1 31 contribs 126 contribs 120 contribs
Xen Linux KVM Docker OpenDaylight 1 1 1 1 ½ 1 OS 1 1 ½ 1 120 contribs 3597 contribs 357 contribs 627 contribs 364 contribs OpenPower OCP Hardware 1 1 1 1 23 140 members ? members © 2015 IBM Corporation Future Directions
• Rise of Open Foundations • Best practice governance • Avoids decay or single vendor lock-in • Architectural considerations • Currently mainly point-to-point • Multi-directional within Foundations • Gaps • Open x86 hardware • Business applications • Further work • Refining “quantum numbers” • Feedback invited • Are the layers correct, what projects are missing ? • [email protected]
24 © 2015 IBM Corporation