CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global...

44
Andrea Gallo Sr Director, Linaro Enterprise Group CloudOpen Conference ARM’ed OpenStack Farm

Transcript of CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global...

Page 1: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

Andrea GalloSr Director, Linaro Enterprise Group

CloudOpen ConferenceARM’ed OpenStack Farm

Page 2: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

▪ Global leader in the development of semiconductor IP▪ R&D outsourcing for semiconductor companies

▪ Innovative business model yields high margins▪ Upfront license fee – flexible licensing models▪ Ongoing royalties – typically based on a percentage of chip price▪ Technology reused across multiple applications

▪ Long-term, secular growth markets

ARM Introduction

Over 1100 licensesGrowing by ~100 every year

Nearly 350 potential royalty payers

10.4bn ARM-based chips in ‘13~20% CAGR over last 5 years

Page 3: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

ARM-based servers on track▪ 16 licenses now signed for server

applications▪ 2013: Chip development▪ 2014: Software optimization accelerates▪ 2015: First production systems▪ 2018: ARM expects 10-15% share

of total server market

ARM Progress in ServersData Center Workloads are Changing

Today Next 3 Years 5 Years +

Largediscrete

tasks

Page 4: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

• Linaro is a collaborative software engineering company funded by members

• Instead of duplicating effort for common open source software, competitors share development costs and software is built once

• The work is carried out in the open, tested and then upstreamed into the relevant open source projects: kernel.org, AOSP ...

Linaro Overview

Page 5: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

CORE

COMMUNITY

GROUP

CLUB

Page 6: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

● Linux 3.16 August 2014 ● 12,802 total patch sets

in this release● 186 known companies

contributed● Linaro is #4 company

contributor

Linux kernel contribution by company

Top Linux 3.16 Patchset Contributors by Company

1 Unknown/Hobbyists 3039 (23.74%)

2 Intel 1347 (10.52%)

3 Red Hat 1328 (10.37%)

4 Samsung 622 (4.86%)

5 Linaro 471 (3.68%)

6 IBM 409 (3.19%)

7 Texas Instruments 403 (3.15%)

8 Free Electrons 388 (3.03%)

9 Novell 379 (2.96%)

10 Renesas Electronics 270 (2.11%)

Source: http://www.remword.com/kps_result/3.16_whole.html

Page 7: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

• The Linaro Enterprise Group (LEG) was formed e/o 2010 by fourteen companies• enable the ARM server ecosystem• share costs of the enablement engineering• focus on standards, avoid fragmentation• identify, test and optimise workloads and core libraries

Building the Ecosystem for ARM servers

http://www.linaro.org/projects/server/

Page 8: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

Engineering (1): enablement

Page 9: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

Engineering (2): workloads

Page 10: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

it’s time for some cloud stuff now….

Page 11: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

Platform as a Service (PaaS)

Infrastructure as a Service (IaaS)

Software as a Service (SaaS)

Page 12: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

Platform as a Service (PaaS)

Infrastructure as a Service (IaaS)

Software as a Service (SaaS)

Database as a Service (DBaaS)

Mobile Backend as a service (MBaaS)

Logging as a Service (LaaS)

Desktop as a Service (DaaS)Data as a Service (DaaS)

Payments as a service (PaaS)

Security as a service (SECaaS)

Network as a service (NaaS) IT as a service (ITaaS)

Storage as a service (STaaS)

Location as a service (LaaS)

Recovery as a service (RaaS)

Mobility as a Service (MaaS)

Page 13: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

Let’s start with one remote machine

Page 14: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

Let’s add few more remote machines

Page 15: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

It is not sustainable and not scaling

Page 16: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

Let’s go back to one control point

Page 17: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

Let’s add nodes now

Page 18: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

We can now run multiple VM’s per node

Page 19: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

We can run multiple runtimes per VM

Page 20: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

And one or more apps per runtime

Page 21: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

PaaS

SaaS

IaaS

It’s all ...as a Service

Page 22: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

OpenStack logical architecture

http://docs.openstack.org/admin-guide-cloud/content/logical-architecture.html

Page 23: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

OpenStack conceptual architecture

http://www.solinea.com/blog/openstack-grizzly-architecture-revisited

Page 24: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

OpenStack software diagram

http://www.openstack.org/themes/openstack/images/openstack-software-diagram.png

Page 25: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

OpenStack modules

http://www.ca.com/us/lpg/ca-technology-exchange/sunny-outlook-for-openstack-clouds.aspx

Page 26: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

It’s running on ARM 64-bit now!

http://www.ca.com/us/lpg/ca-technology-exchange/sunny-outlook-for-openstack-clouds.aspx

Page 27: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

It’s running on ARM 64-bit now!

• Long cooperation with Canonical and Red Hat engineers• Reusing pre-built DevStack packages from Ubuntu• Leveraging on LEG kernel and Linaro KVM work• running on real ARM 64-bit hardware, APM X-Gene• running all applicable Tempest tests

• Ongoing• PackStack packages from Fedora• libvirt on XEN

Page 28: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

What’s the effort and cost?

let’s review few open source projects

let’s rely on ohloh.net and the co.co.mo. model

http://csse.usc.edu/csse/research/COCOMOII/cocomo_main.html

Page 29: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

OpenStack: lines of code

Page 30: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

OpenStack: commits per month

Page 31: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

Hadoop: lines of code

Page 32: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

Hadoop: commits per month

Page 33: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

Linux Kernel: lines of code

Page 34: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

Linux Kernel: commits per month

Page 35: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

Chrome: lines of code

Page 36: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

Chrome: commits per month

Page 37: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

Comparison

Project SLOC (M) Commits/month Start date

OpenStack 2 3992 2010*

OpenJDK 8 5 983 2007

Hadoop 2.5 219 2006

mongoDB 0.6 500 2007

Linux Kernel 17 6000 2002

Google Chrome 8 5000 2008(*) 1st commit for OpenStack was in 2006 but really picked up in mid 2010

• OpenStack is still relatively small but growing as fast as the Linux Kernel itself…

Page 38: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

What about OpenStack on ARM then?

Page 39: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

a.k.a. percussive maintenance

Tapping the server with a hammer: $0.00.Knowing where to hit it: $5,000.00.

The Fonzarelli Fix

http://tvtropes.org/pmwiki/pmwiki.php/Main/PercussiveMaintenance

Page 40: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

• nova: "Support setting a machine type to enable ARMv7/AArch64 guests to boot"http://git.openstack.org/cgit/openstack/nova/commit/?id=15d4f8a3af1b4e105d91e6b66d7b19187fbd41af

• libvirt: "AArch64: Add AArch64 architecture to list of valid arches."http://libvirt.org/git/?p=libvirt.git;a=commit;h=670c08afd461cba6164f7a8a643f5a5b41782e8d

• libvirt: "AArch64: Porting of armv7l conditons to run qemu for aarch64."http://libvirt.org/git/?p=libvirt.git;a=commit;h=27e32e0f3d4d5840cee7e361bdff94c68ae181e2

• libvirt: "AArch64: CPU Support for AArch64 (ARMv8 64bit)."http://libvirt.org/git/?p=libvirt.git;a=commit;h=5cb6816715968dc08486307bd1894dc91e22342c

• libvirt: "qemu: Add support for virt machine type with virtio-mmio devices on armv7"http://libvirt.org/git/?p=libvirt.git;a=commit;h=c7ccd2c44be99b81ffce29374faeab3d1644a151

Patches available upstream

Page 41: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

LibVirt patches

Thanks to libvirt maintainer Cole Robinson at Red Hat for his support!

• nova: "Support setting a machine type to enable ARMv7/AArch64 guests to boot"http://git.openstack.org/cgit/openstack/nova/commit/?id=15d4f8a3af1b4e105d91e6b66d7b19187fbd41af

• libvirt: "AArch64: Add AArch64 architecture to list of valid arches."http://libvirt.org/git/?p=libvirt.git;a=commit;h=670c08afd461cba6164f7a8a643f5a5b41782e8d

• libvirt: "AArch64: Porting of armv7l conditons to run qemu for aarch64."http://libvirt.org/git/?p=libvirt.git;a=commit;h=27e32e0f3d4d5840cee7e361bdff94c68ae181e2

• libvirt: "AArch64: CPU Support for AArch64 (ARMv8 64bit)."http://libvirt.org/git/?p=libvirt.git;a=commit;h=5cb6816715968dc08486307bd1894dc91e22342c

• libvirt: "qemu: Add support for virt machine type with virtio-mmio devices on armv7"http://libvirt.org/git/?p=libvirt.git;a=commit;h=c7ccd2c44be99b81ffce29374faeab3d1644a151

Page 42: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

• nova: "Support setting a machine type to enable ARMv7/AArch64 guests to boot"http://git.openstack.org/cgit/openstack/nova/commit/?id=15d4f8a3af1b4e105d91e6b66d7b19187fbd41af

OpenStack patches: only 114 lines in Nova

Thanks to Canonical engineers for their contribution!

Page 43: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

• OpenStack is at the heart of the cloud revolution• OpenStack is well architectured and runs easily on ARM

• OpenStack is evolving at such a fast pace that you need help from the experts

• Linaro fosters the open source collaboration on ARM

• Canonical and Red Hat are Linaro partners and provide commercial support for product quality delivery

Summary

Page 44: CloudOpen Conference ARM’ed OpenStack Farm · CloudOpen Conference ARM’ed OpenStack Farm Global leader in the development of semiconductor IP ... • PackStack packages from Fedora

More about Linaro: http://www.linaro.org/about/Linaro members: www.linaro.org/members

Logo’s and pictures used in this presentation were downloaded from Google image searches.Any copyright holder can contact me and have their bitmap removed from my deck.