104
OpenStack im Reality Check Kristian Köhntopp Cloud Architect Alter Sack SysEleven https://www.flickr.com/photos/pinksherbet/188842453 Pink Sherbet Photography (CC BY 2.0)

Openstack im reality check

  • Upload
    isotopp

  • View
    1.416

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Openstack im reality check

OpenStack im Reality Check

Kristian Köhntopp

Cloud Architect Alter Sack SysEleven

https://www.flickr.com/photos/pinksherbet/188842453 Pink Sherbet Photography (CC BY 2.0)

Page 2: Openstack im reality check

https://uksysadmin.files.wordpress.com/2011/03/openstackwallpaper1.png

Page 3: Openstack im reality check

Breite Unterstützung aller Marketingabteilungenhttps://www.flickr.com/photos/ahockley/8662640096 Aaron Hockley (cc-by-sa 2.0)

Page 4: Openstack im reality check

4

http://clouduser.de/analysen/ein-gorilla-im-nebel-sap-sucht-zuflucht-bei-openstack-und-cloud-foundry-24382 http://www.businesscloudnews.com/2015/04/09/red-hat-dell-redouble-openstack-private-cloud-efforts/

http://blogs.wsj.com/cio/2015/02/25/the-morning-download-h-p-deal-with-deutsche-bank-is-step-forward-for-openstack/

Page 5: Openstack im reality check

4

http://clouduser.de/analysen/ein-gorilla-im-nebel-sap-sucht-zuflucht-bei-openstack-und-cloud-foundry-24382 http://www.businesscloudnews.com/2015/04/09/red-hat-dell-redouble-openstack-private-cloud-efforts/

http://blogs.wsj.com/cio/2015/02/25/the-morning-download-h-p-deal-with-deutsche-bank-is-step-forward-for-openstack/

Page 6: Openstack im reality check

4

http://clouduser.de/analysen/ein-gorilla-im-nebel-sap-sucht-zuflucht-bei-openstack-und-cloud-foundry-24382 http://www.businesscloudnews.com/2015/04/09/red-hat-dell-redouble-openstack-private-cloud-efforts/

http://blogs.wsj.com/cio/2015/02/25/the-morning-download-h-p-deal-with-deutsche-bank-is-step-forward-for-openstack/

Page 7: Openstack im reality check

4

http://clouduser.de/analysen/ein-gorilla-im-nebel-sap-sucht-zuflucht-bei-openstack-und-cloud-foundry-24382 http://www.businesscloudnews.com/2015/04/09/red-hat-dell-redouble-openstack-private-cloud-efforts/

http://blogs.wsj.com/cio/2015/02/25/the-morning-download-h-p-deal-with-deutsche-bank-is-step-forward-for-openstack/

Page 8: Openstack im reality check

Was OpenStack Vendors versprechen…https://www.flickr.com/photos/debarshiray/8237431709/sizes/l debarshiray (CC-BY-SA)

Page 9: Openstack im reality check

Wie Admins sich das Arbeiten mit OpenStack vorstellen…(C) Kristian Köhntopp, 2006

Page 10: Openstack im reality check

Was geliefert wird…(C) Hendrik Scholz, 2006

Page 11: Openstack im reality check

Wie der Adminjob wirklich aussieht…(C) Kristian Köhntopp, 2015

Page 12: Openstack im reality check

Was wollen wir eigentlich erreichen?

9

Page 13: Openstack im reality check

„Any VM, anywhere.“

10

Page 14: Openstack im reality check

„Infrastructure as Code.“

11

Page 15: Openstack im reality check

Warum brauche ich das?

• 24 Cores (48 Cores HT), 256G RAM, 2* 10GBit und 12* 3TB HDD mit solidem BBU

• 10k EUR

• Anwendungen, die so eine Kiste voll machen sind selten, also schneiden wir sie klein und verkaufen die Teile.

12

Page 16: Openstack im reality check

"Any VM, anywhere"13

Page 17: Openstack im reality check

"Any VM, anywhere"13

Page 18: Openstack im reality check

"Any VM, anywhere"13

Page 19: Openstack im reality check

"Any VM, anywhere"13

CPU, RAM

StorageNetwork

OverlayUnderlay

Page 20: Openstack im reality check

Storage"Where the Internet lives", http://www.google.com/about/datacenters/gallery/#/tech/12

Page 21: Openstack im reality check

Storage: Anforderungen

• VM mit Ephemeral Storage • Das ist kein Problem, richtig? Weil der Storage ja auch

eine ungesicherte, lokale Platte kann.

15

Page 22: Openstack im reality check

Storage: Anforderungen

• VM mit Ephemeral Storage • Das ist kein Problem, richtig? Weil der Storage ja auch

eine ungesicherte, lokale Platte kann.• Aber dann geht Migration nicht.

• Und das macht Maintenance der Hardware-Node schwieriger planbar.

15

Page 23: Openstack im reality check

Erkenntnis #1:Lokaler Storage kann nirgendwo

Default sein.

16

Page 24: Openstack im reality check

Storage

• VM und Volume: Writes sind immer Remote. • Und redundant.

17

Page 25: Openstack im reality check

Storage

• VM und Volume: Writes sind immer Remote. • Und redundant.

• Metriken: • Bandbreite, IOPS und Latency • MB/sec, multithreaded-fsync()/sec und sequential-

fsync()/sec

17

Page 26: Openstack im reality check

Storage

• VM und Volume: Writes sind immer Remote. • Und redundant.

• Metriken: • Bandbreite, IOPS und Latency • MB/sec, multithreaded-fsync()/sec und sequential-

fsync()/sec• Woher kommen die Limits?

17

Page 27: Openstack im reality check

Storage: Anforderungen

• Problemlos skalierbar: • Bandbreite, MT-IOPS

18

Page 28: Openstack im reality check

Storage: Anforderungen

• Problemlos skalierbar: • Bandbreite, MT-IOPS

• Schwierig: • Sequential-IOPS (Latenzabhängig, Ziel: 10k) • Default-Benchmark: "MySQL Slave auf einem Volume" • "16 KB single-thread random-write auf einem Datafile."

18

Page 29: Openstack im reality check

Erkenntnis #2:Es reicht, einen Single-Threaded

Random-Write Benchmark zu machen.

19

Page 30: Openstack im reality check

Storage

• OpenStack Default ist iSCSI und tgtd • »Das Problem bleibt dem geneigten Leser zur Übung

überlassen.«

20

Page 31: Openstack im reality check

Storage

• OpenStack Default ist iSCSI und tgtd • »Das Problem bleibt dem geneigten Leser zur Übung

überlassen.«

• Storage Vendors finden diesen Ansatz voll super. • https://wiki.openstack.org/wiki/CinderSupportMatrix

20

Page 32: Openstack im reality check

Storage: Ceph - the good

• Bandbreite sehr gut • Multithreaded-IOPS gut • Sehr robust

21

Page 33: Openstack im reality check

Storage: Ceph - the bad

• CRUSH • Datenposition von der Cluster-Topologie abhängig • Bei Topologie-Änderungen sinnlose Datenschaufelei • Braucht ein eigenes Storage-Netzwerk im Hintergrund

bei Rebalancing/Recovery/Cluster-Reorganisation

22

Page 34: Openstack im reality check

Storage: Ceph - the ugly

• Sequentielle IOPS fatal langsam (200 IOPS). • MySQL Slave auf Ceph-Volume macht 200 Commit/s • Windows 8.1 bootet von Ceph-Volume in circa 15

Minuten.

23

Page 35: Openstack im reality check

Erkenntnis #3:Pure Play OpenStack wird nicht

sinnvoll funktionieren.OpenStack ist kein funktionierendes

Open Source Projekt.

24

Page 36: Openstack im reality check

Storage: Anforderungen vs. Multitenancy

• IOPS-Anforderungen machen SSD notwendig

25

Page 37: Openstack im reality check

Storage: Anforderungen vs. Multitenancy

• IOPS-Anforderungen machen SSD notwendig

25

"Magento Indexer"

Single-Threaded Database Updates

Page 38: Openstack im reality check

Storage: Anforderungen vs. Multitenancy

• IOPS-Anforderungen machen SSD notwendig

• IOPS Quotas machen SSD notwendig

25

Page 39: Openstack im reality check

Storage: Anforderungen vs. Multitenancy

• IOPS-Anforderungen machen SSD notwendig

• IOPS Quotas machen SSD notwendig

25

Wo nichts ist kann man nichts quotieren.

Kleine IOPS = große Schrittweite bei Schwankungen.

Page 40: Openstack im reality check

Storage: Anforderungen vs. Multitenancy

• IOPS-Anforderungen machen SSD notwendig

• IOPS Quotas machen SSD notwendig

• SSD schwierig - Preis vs. dauerhafte Performance

25

Page 41: Openstack im reality check

Storage: Anforderungen vs. Multitenancy

• IOPS-Anforderungen machen SSD notwendig

• IOPS Quotas machen SSD notwendig

• SSD schwierig - Preis vs. dauerhafte Performance

25

Zielpreis derzeit 1 EUR/GB,

gleichförmige Performance wichtiger

als hohe Spitzenleistung

Page 42: Openstack im reality check

Storage: Anforderungen vs. Multitenancy

• IOPS-Anforderungen machen SSD notwendig

• IOPS Quotas machen SSD notwendig

• SSD schwierig - Preis vs. dauerhafte Performance

• Caches schwierig

25

Page 43: Openstack im reality check

Storage: Anforderungen vs. Multitenancy

• IOPS-Anforderungen machen SSD notwendig

• IOPS Quotas machen SSD notwendig

• SSD schwierig - Preis vs. dauerhafte Performance

• Caches schwierig

25

Working Set > Cache

bedeutet, man arbeitet

mit dem nackten Eisen.

Page 44: Openstack im reality check

Storage: Anforderungen vs. Multitenancy

• IOPS-Anforderungen machen SSD notwendig

• IOPS Quotas machen SSD notwendig

• SSD schwierig - Preis vs. dauerhafte Performance

• Caches schwierig

25

Page 45: Openstack im reality check

Erkenntnis #4:Caching ist genau so Problem

wie es Lösung ist.

26

Page 46: Openstack im reality check

NetworkMercury Redstone Connector MR-1 (1960) https://www.flickr.com/photos/jurvetson/5691350527 Steve Jurvetson (CC-BY)

Page 47: Openstack im reality check

Network: Anforderungen

• Hoster-Szenario:

• Topologie: Wait-Free, Oversubscription-Free

• Redundanz: SPOF-Free

• Multi-Tenancy: Isolation und Quotas

• Außerdem:

• Storage Traffic mit tragen

28

Page 48: Openstack im reality check

–Joe Random Alphauser

„Wir haben einmal ein paar Dutzend VMs mit Hadoop ausgerollt und

Terasort gespielt.“

29

http://bradhedlund.com/2012/01/25/construct-a-leaf-spine-design-with-40g-or-10g-an-observation-in-scaling-the-fabric/

Page 49: Openstack im reality check

Notwork: Der Default

• Open vSwitch, GRE-Ball, Broadcast-Problem, Chokepoint, SPOF

30

SPOF

Page 50: Openstack im reality check

Notwork: Der Default

• Open vSwitch, GRE-Ball, Broadcast-Problem, Chokepoint, SPOF

• In aktuellen Releases nur marginal weniger hirntotes Design.

30

SPOF

Page 51: Openstack im reality check

Erkenntnis #5:Ok, Netz geht also auch nicht.

31

Page 52: Openstack im reality check

Suchen wir also eine andere Lösung…32

Page 53: Openstack im reality check

Opencontrail: the good, …

• Open Source Projekt von Juniper • Verwendet vorhandene Hardware-Routing-Infrastruktur

• skaliert, SPOF- und Chokepoint-frei • basierend auf MPLS, BGP, und anderen gut verstandenen

Protokollen • liefert im Gegensatz zu Opendaylite tatsächlich was

33

Page 54: Openstack im reality check

Opencontrail: the bad, …

• Contrail von Juniper gekauft, kein Vertriebs/Produktkonzept

• kaum Dokumentation, schlechtes Release-Management, schlechte Paketierung

• lustige Support-Organisation

34

Page 55: Openstack im reality check

… and the ugly.https://www.flickr.com/photos/59145750@N03/5559004171 Mara Tr. (CC-BY 2.0)

Page 56: Openstack im reality check

Technology-Jenga

• Opencontrails "Stack" • vrouter (.ko), if-map, Sandesh (XML over Thrift!) • C++, Python, node.js, irond (Java) • redis, Cassandra, Zookeeper • xmpp, BGP, MPLS

36

Page 57: Openstack im reality check

Technology-Jenga

• Opencontrails "Stack" • vrouter (.ko), if-map, Sandesh (XML over Thrift!) • C++, Python, node.js, irond (Java) • redis, Cassandra, Zookeeper • xmpp, BGP, MPLS

• Hat das schon mal jemand in ein Jobprofil geschrieben und dafür Kandidaten interviewed?

36

Page 58: Openstack im reality check

Erkenntnis #6:Das ist kein auf Contrail beschränktes

Problem.

37

Page 59: Openstack im reality check

Network: Generell nicht unlimitiert skalierbarFerme des étoiles,© Jean-Claude Pignoux

Page 60: Openstack im reality check

Was so in der Packung ist…https://www.flickr.com/photos/markjsebastian/4217877353/ Mark Sebastian (CC BY-SA 2.0)

Page 61: Openstack im reality check

Generelle Anforderungen, 2015

• Jede verteilte Anwendung: • NTP, zentrales Logging, zentrales Monitoring • funktionale Validierung von Clustercomponenten und

sauberer Startup • interne Kommunikation Kyle-Kingsbury-proof • CA, encrypted data in flight, optionally encrypted data at rest • User-Story für Live-Upgrades, mit Canaries

40

Page 62: Openstack im reality check

OpenStack Lieferumfang…https://www.flickr.com/photos/z287marc/3189567558/ z287marc (CC BY 2.0)

Page 63: Openstack im reality check

Wildes Gebastel geht los…https://www.flickr.com/photos/nauright/11341288174/ Romana Klee (CC BY-SA 2.0)

Page 64: Openstack im reality check

Das ist kein isoliertes Problem…

• Starte 20 VMs mit ein paar Netzen in einem HEAT-Stack…• … und der ganze Cluster geht aus.

43

Page 65: Openstack im reality check

Das ist kein isoliertes Problem…

• Starte 20 VMs mit ein paar Netzen in einem HEAT-Stack…• … und der ganze Cluster geht aus.• Nova wartet nicht auf Rückmeldungen von Cinder,

sondern geht nach $timeout Sekunden einfach aus.

43

Page 66: Openstack im reality check

Das ist kein isoliertes Problem…

• Starte 20 VMs mit ein paar Netzen in einem HEAT-Stack…• … und der ganze Cluster geht aus.• Nova wartet nicht auf Rückmeldungen von Cinder,

sondern geht nach $timeout Sekunden einfach aus.• "Sind wir blöd, oder ist OpenStack blöd? Laß uns mal

ein paar öffentliche Clouds testen…"

43

Page 67: Openstack im reality check

Ergebnis

• Telefon klingelt. • "Was immer Ihr da tut,

könnt Ihr bitte was anderes machen?"

44

"Rotes Telefon", http://de.wikipedia.org/wiki/Datei:Jimmy_Carter_Library_and_Museum_99.JPG User:Piotrus (CC-BY 3.0)

Page 68: Openstack im reality check

Das ist kein isoliertes Problem…45

Page 69: Openstack im reality check

Das ist kein isoliertes Problem…45

Getestet mit Devstack

in VMware Fusion

auf einem MacBook Air

im St. Oberholz?

Page 70: Openstack im reality check

Das ist kein isoliertes Problem…

• "Kannst Du mal gucken, meine Instances starten nicht."

46

Page 71: Openstack im reality check

Das ist kein isoliertes Problem…

• "Kannst Du mal gucken, meine Instances starten nicht."• Nach längerer Debug-Session stellt sich raus, daß auf

cloud17 libvirt auf eine dysfunktionale Weise konfiguriert ist.

46

Page 72: Openstack im reality check

Das ist kein isoliertes Problem…

• "Kannst Du mal gucken, meine Instances starten nicht."• Nach längerer Debug-Session stellt sich raus, daß auf

cloud17 libvirt auf eine dysfunktionale Weise konfiguriert ist.

• OpenStack nimmt Compute-Nodes in den Cluster auf, sobald sie im AMQP sichtbar werden (sich also als Consumer registrieren.)

46

Page 73: Openstack im reality check

Das ist kein isoliertes Problem...47

Ceilometer

Page 74: Openstack im reality check

Was ist eigentlich das Problem?https://www.flickr.com/photos/jdhancock/8395113234 JD Hancock (CC BY 2.0)

Page 75: Openstack im reality check

„Any VM, anywhere.“

49

Page 76: Openstack im reality check

„Wir bauen eine Virtualisierungsplattform für Hoster/

Firmen-IT/Abteilungs-IT.“

50

Page 77: Openstack im reality check

Problemspec vs. Produktspec

• Anforderungen an • Tenant Isolation, • Billing Model, • Operations Model, • Development Model, • Skalierbarkeit

51

Page 78: Openstack im reality check

Prototypen vs. Produktmodell"Prototype in the round file", https://www.flickr.com/photos/generated/3313311558 Jared Tarbell (CC-BY 2.0)

Page 79: Openstack im reality check

Fokus auf das Kernproblemvs.

Aufsplitterung in mehr Komponenten

53

Page 80: Openstack im reality check

“The Big Tent”https://www.flickr.com/photos/fmckinlay/2410261506 Fiona Shields (CC BY-NC-ND 2.0)

Page 81: Openstack im reality check

"The problem with the Big Tent is that it is full of clowns."https://www.flickr.com/photos/fmckinlay/2410261506 Fiona Shields (CC BY-NC-ND 2.0)

Page 82: Openstack im reality check

–Maik Zumstrull

„Statt eine funktionierende Lösung zu haben kann ich nun unter 13 kaputten

Lösungen wählen.“

56

Page 83: Openstack im reality check

Demokratie ist kein gutes Software-Architekturmodell

• Produktdefinition == Zieldefinition

57

Page 84: Openstack im reality check

Demokratie ist kein gutes Software-Architekturmodell

• Produktdefinition == Zieldefinition• Wer ist der Kunde und was will er?

57

Page 85: Openstack im reality check

Demokratie ist kein gutes Software-Architekturmodell

• Produktdefinition == Zieldefinition• Wer ist der Kunde und was will er?• Welche Eigenschaften muß das Produkt haben, um Teil

der Lösung statt Teil des Problems zu sein?

57

Page 86: Openstack im reality check

Demokratie ist kein gutes Software-Architekturmodell

• Qualitätskontrolle

58

Page 87: Openstack im reality check

Demokratie ist kein gutes Software-Architekturmodell

• Qualitätskontrolle• "Aber Openstack hat doch Blueprints, CI und Code

Review”

58

Page 88: Openstack im reality check

Demokratie ist kein gutes Software-Architekturmodell

• Qualitätskontrolle• "Aber Openstack hat doch Blueprints, CI und Code

Review”• Ohne Zieldefinition keine Idee von Anforderungen an

Scale, Workload Types, Security.

58

Page 89: Openstack im reality check

Who actually votes on your commit…

Page 90: Openstack im reality check

Demokratie ist kein gutes Software-Architekturmodell

• Beherrschbarer, schmaler Technologie-Stack

60

Page 91: Openstack im reality check

Demokratie ist kein gutes Software-Architekturmodell

• Beherrschbarer, schmaler Technologie-Stack• Eine empfohlene, getestete Lösung mit einer Best

Practice für das Deployment, statt einer Plugin-Schnittstelle.

60

Page 92: Openstack im reality check

Demokratie ist kein gutes Software-Architekturmodell

• Beherrschbarer, schmaler Technologie-Stack• Eine empfohlene, getestete Lösung mit einer Best

Practice für das Deployment, statt einer Plugin-Schnittstelle.

• Standardlösungen für vergleichbare Probleme in benachbarten Teilprojekten (“Architecture Refactoring”).

60

Page 93: Openstack im reality check

Monasca

Page 94: Openstack im reality check

How to win at Hipsterbingo…

• »Monasca is an open-source multi-tenant, highly scalable, performant, fault-tolerant monitoring-as-a-service solution that integrates with OpenStack. It uses a REST API for high-speed metrics processing and querying and has a streaming alarm engine and notification engine.«

62

Page 95: Openstack im reality check

How to win at Hipsterbingo…

• »Monasca is an open-source multi-tenant, highly scalable, performant, fault-tolerant monitoring-as-a-service solution that integrates with OpenStack. It uses a REST API for high-speed metrics processing and querying and has a streaming alarm engine and notification engine.«

62

Bingo!

Page 96: Openstack im reality check

Demokratie ist kein gutes Software-Architekturmodell

• Sinnvoll vs. Hyped • “Docker ist ja so was wie

Openstack, aber aus Dev statt aus Ops-Sicht. Wäre ja toll, wenn man das vereinen könnte.”

63

https://twitter.com/martinisoft/status/527191803603468288

Page 97: Openstack im reality check

Außerdem…64

Page 98: Openstack im reality check

Außerdem…64

Page 99: Openstack im reality check

Was bleibt?

65

Page 100: Openstack im reality check

Was bleibt?

• Im Moment ist Openstack ist kein Produkt, sondern eine Kiste Schrauben.

• Qualität der Komponenten stark unterschiedlich.

• Kein anderes Projekt hat so viel Momentum. • Die meisten Projekte haben keine Mandantenfähigkeit.

66

Page 101: Openstack im reality check

Was bleibt?

• Das Projekt ist tief im Hype-Zyklus: • Anwender und damit Produktdefinitionen fehlen. • Uneinigkeit über akzeptable Lösungen. • Hersteller glauben, sie könnten “gewinnen” und pushen

ihre propietären Lösungen. • Anwender fehlen.

67

Page 102: Openstack im reality check

Was bleibt?

• “Apache” ist auch ein Vendor-Mechanismus zur Open-Source-Zähmung

• Siehe auch Hadoop • basierend auf den Erfahrungen mit Java

68

Page 103: Openstack im reality check

69

?

Page 104: Openstack im reality check

3. Openstack DACH Tag 11. Juni 2015

Berlin http://openstack-dach.org

70