91
Cloud Infrastrukturen

Vorlesung - Cloud infrastrukturen - Einleitung

Embed Size (px)

DESCRIPTION

Einleitung in die Vorlesung Cloud Infrastrukturen mit den Themen Cloud Foundry, OpenStack, Lean Startup, Kanban, IaaS und PaaS. Einführung in die Cloud-Terminologie sowie Überblick über die Interessen des Marktes hinter den Cloud-Konzepten.

Citation preview

Page 1: Vorlesung - Cloud infrastrukturen - Einleitung

Cloud Infrastrukturen

Page 2: Vorlesung - Cloud infrastrukturen - Einleitung

Organisatorisches

Page 3: Vorlesung - Cloud infrastrukturen - Einleitung

The Big Picture

Page 4: Vorlesung - Cloud infrastrukturen - Einleitung

Wie passt die Cloud in das aktuelle Gesamtbild

der Wirtschaft?

Page 5: Vorlesung - Cloud infrastrukturen - Einleitung

Software sprengt Märkte

Page 6: Vorlesung - Cloud infrastrukturen - Einleitung

Die Großen fürchten die Newcomer mehr denn je.

Page 7: Vorlesung - Cloud infrastrukturen - Einleitung

Was unterscheidet das klassische Unternehmen

vom Disruptor?

Page 8: Vorlesung - Cloud infrastrukturen - Einleitung

Time to Value

Page 9: Vorlesung - Cloud infrastrukturen - Einleitung

Der disruptive Stack

Page 10: Vorlesung - Cloud infrastrukturen - Einleitung

• Business - Lean Startup

• Entwicklung - Agile Development

• Betrieb - Cloud

Page 11: Vorlesung - Cloud infrastrukturen - Einleitung

Lean

Page 12: Vorlesung - Cloud infrastrukturen - Einleitung

• Derived from Japanese manufacturing industry

• Toyota Production System (TPS)

• Master Thesis, John Krafcik, 1988 „Triumph of the Lean Production System“

Page 13: Vorlesung - Cloud infrastrukturen - Einleitung

ISBN-10: 0060974176 ISBN-13:

978-0060974176

Page 14: Vorlesung - Cloud infrastrukturen - Einleitung

• Prozessorientierung

• Prozessoptimierung

• Reduzierung von Verschwendung („Waste“) entlang der gesamten Wertschöpfungskette

• Einbeziehen der Mitarbeiter

Page 15: Vorlesung - Cloud infrastrukturen - Einleitung

The Lean Startup

Page 16: Vorlesung - Cloud infrastrukturen - Einleitung

ISBN-10: 0307887898 ISBN-13: 978-0307887894

Page 17: Vorlesung - Cloud infrastrukturen - Einleitung

• Ein Managementansatz für Startups

• Startups arbeiten in unsicherer Umgebung

• Finden eines nachhaltigen Geschäftsmodells

• Validiertes Lernen

Page 18: Vorlesung - Cloud infrastrukturen - Einleitung

• Wert-Hypothese

• Wachstums-Hypothese

• Minimum Viable Product (MVP)

• Validierung der Hypothesen

• Build, Measure, Learn-Zyklen

• Möglichst hohe Frequenz

Page 19: Vorlesung - Cloud infrastrukturen - Einleitung

Agile Softwareentwicklung

Page 20: Vorlesung - Cloud infrastrukturen - Einleitung

http://agilemanifesto.org

Page 21: Vorlesung - Cloud infrastrukturen - Einleitung

• Continuous delivery

• Continuous Integration

• Continuous Deployment

• Fließender Anforderungskatalog (Backlog)

• Kurze Lieferzyklen (Tage, Wochen)

Page 22: Vorlesung - Cloud infrastrukturen - Einleitung

• Enge Zusammenarbeit des Teams (täglich)

• Motivation, Vertrauen, Professionalität

• Vis à vis Kommunikation

• Funktionierende Software als Fortschrittsindikator

Page 23: Vorlesung - Cloud infrastrukturen - Einleitung

• Nachhaltiges Entwicklungstempo (Dauerlauf statt Sprint)

• Technische Exzellenz und hohe Qualität

• Einfachheit. Occam’s Razor.

• Selbstorganisierende Teams

• Kontinuierliche Verbesserung des Teams in regelmäßigen V.-Meetings

Page 24: Vorlesung - Cloud infrastrukturen - Einleitung

Beispiele agiler Methoden

Page 25: Vorlesung - Cloud infrastrukturen - Einleitung

• Scrum

• Kanban

Page 26: Vorlesung - Cloud infrastrukturen - Einleitung

Kanban

Page 27: Vorlesung - Cloud infrastrukturen - Einleitung

ISBN-10: 0984521402 ISBN-13: 978-0984521401

Page 28: Vorlesung - Cloud infrastrukturen - Einleitung

• Kanban ist agil.

• Kanban ist lean.

• Kanban ist kein Softwareentwicklungsprozess.

• Kanban ist ein Meta-Prozess.

• Prozess zur Prozessoptimierung.

Page 29: Vorlesung - Cloud infrastrukturen - Einleitung

• Work-in-progress (WIP) reduzieren

• Voller Fokus auf Softwarequalität

• Häufig funktionierende Software liefern („Deliver often“)

Page 30: Vorlesung - Cloud infrastrukturen - Einleitung

• Softwareentwicklungsprozess als Fluss vorstellen

• Anwendung von Methoden zur Flussoptimierung

• TOC - Theory of Constraints

Page 31: Vorlesung - Cloud infrastrukturen - Einleitung

• Vertrauen zu Projektbeteiligten aufbauen

• Bedarf und Durchlauf aufeinander abstimmen

• Methodische Priorisierung

• Explizite und transparente Projektregeln beschreiben des Entwicklungsprozess

Page 32: Vorlesung - Cloud infrastrukturen - Einleitung

• Regelmäßige Arbeit am Prozess

• Einbeziehung des Teams

• Selbstorganisation des Teams

• Entstehung einer Kaizen-Kultur der kontinuierlichen Verbesserung

Page 33: Vorlesung - Cloud infrastrukturen - Einleitung

Kanban zeigt Engpässe. Hilft den Wertstrom zu

beschleunigen.

Page 34: Vorlesung - Cloud infrastrukturen - Einleitung

• Software treibt Innovation

• Der disruptive Stack macht den Unterschied

• Die Cloud ist Teil des Stacks

Page 35: Vorlesung - Cloud infrastrukturen - Einleitung

Cloud

Page 36: Vorlesung - Cloud infrastrukturen - Einleitung

Roadmap

Page 37: Vorlesung - Cloud infrastrukturen - Einleitung

• Cloud Basiswissen

• Grundlagen des Clusterbaus

• Infrastructure as a Service

• Platform as a Service

• Projektarbeit

Page 38: Vorlesung - Cloud infrastrukturen - Einleitung

Lernziele

Page 39: Vorlesung - Cloud infrastrukturen - Einleitung

• Kenntnis grundlegender Cloud-

• Technologien

• Paradigmen und Methodiken

• Hands-on: Gelerntes Anwenden

Page 40: Vorlesung - Cloud infrastrukturen - Einleitung

Cloud Basiswissen

Page 41: Vorlesung - Cloud infrastrukturen - Einleitung

Was ist die Cloud?

Page 42: Vorlesung - Cloud infrastrukturen - Einleitung

NIST Definition of Cloud Special Publication

SP800-145http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf

Page 43: Vorlesung - Cloud infrastrukturen - Einleitung

Kern-Eigenschaften der Cloud

Page 44: Vorlesung - Cloud infrastrukturen - Einleitung

On-demand self-service

• Selbstständige Provisionierung

• Virtuelle Maschinen

• Storage

• Software Dienste

• Keine persönliche Interaktion zum Anbieter notwendig

Page 45: Vorlesung - Cloud infrastrukturen - Einleitung

Broad Network Access

• Erreichbarkeit der Ressourcen im Netzwerk

Page 46: Vorlesung - Cloud infrastrukturen - Einleitung

Resource Pooling

• Multimandantenfähigkeit

• Physikalische oder virtuelle Isolation

• Dynamische Ressourcen-Zuordnung zu Kunden (storage, processing, mem, net bandwidth)

Page 47: Vorlesung - Cloud infrastrukturen - Einleitung

Rapid Elasticity

• Elastische Provisionierung und Freigabe

• Automatische Provisionierung

• Eindruck „unendlicher Ressourcen“

• Anpassbar an den situativen Bedarf

Page 48: Vorlesung - Cloud infrastrukturen - Einleitung

Measured Service

• Monitoring

• Reporting

• Automatische Ressourcen-Kontrolle

Page 49: Vorlesung - Cloud infrastrukturen - Einleitung

Ebenso wichtige Eigenschaften (Nicht im NIST Dokument)

Page 50: Vorlesung - Cloud infrastrukturen - Einleitung

Redundanz und Robustheit

• Vermeidung von SPOFs (Single Point Of Failure)

• Skalierbare Architekturen (Lastverteilung)

• Robustheit durch Cluster-Bildung (Failover)

Page 51: Vorlesung - Cloud infrastrukturen - Einleitung

Selbstheilung

Page 52: Vorlesung - Cloud infrastrukturen - Einleitung

Selbstheilung

• Monitoring (Verfügbarkeit) +

• Automatisierte Bereitstellung (Provisioning)=

• Selbstheilung

Page 53: Vorlesung - Cloud infrastrukturen - Einleitung

Auto-Scaling

Page 54: Vorlesung - Cloud infrastrukturen - Einleitung

Auto-Scaling

• Monitoring (Durchsatz)+

• Automatisierte Bereitstellung (Provisioning)=

• Auto-Scaling

Page 55: Vorlesung - Cloud infrastrukturen - Einleitung

Service Modelle der Cloud

Page 56: Vorlesung - Cloud infrastrukturen - Einleitung

Infrastructure as a Service IaaS

Page 57: Vorlesung - Cloud infrastrukturen - Einleitung

Infrastructure as a Service (IaaS)

• Automatisierbare Bereitstellung der folgenden Ressourcen:

• Rechenleistung („compute“)

• Speicherplatz („storage“)

• Netzwerkverwaltung („networking“)

• Firewall-Regeln („security groups“)

Page 58: Vorlesung - Cloud infrastrukturen - Einleitung

Infrastructure as a Service (IaaS)

• Virtueller Clusterbau

• VMs, Netzwerk, Storage

• Software-Ebene ist nicht abgedeckt

• Betriebssystem muss verwaltet werden

• Software muss selbst installiert werden

• Chef, Puppet

Page 59: Vorlesung - Cloud infrastrukturen - Einleitung

Platform as a Service PaaS

Page 60: Vorlesung - Cloud infrastrukturen - Einleitung

Platform as a Service (PaaS)

• Anwendungsdeployments

• Keine/wenig Software-Installation notwendig

• Keine Softwarewartung notwendig

• Schlüsselfertige Bereitstellung von Diensten (Datenbanken, Suchserver, etc.)

Page 61: Vorlesung - Cloud infrastrukturen - Einleitung

Platform as a Service (PaaS)

• Kein Kontakt mit der Infrastruktur (VMs, Block-Storage, Networking) notwendig.

• Anwendungen müssen oft bestimmten Vorgaben entsprechen, z.B. 12factor.net

Page 62: Vorlesung - Cloud infrastrukturen - Einleitung

Software as a Service SaaS

Page 63: Vorlesung - Cloud infrastrukturen - Einleitung

Software as a Service (SaaS)

• Gebrauchsfertige Software

• Betrieben in der Cloud

• Kein Kontakt mit PaaS oder IaaS

Page 64: Vorlesung - Cloud infrastrukturen - Einleitung

Deployment Modelle der Cloud

Page 65: Vorlesung - Cloud infrastrukturen - Einleitung

• Public Cloud

• Amazon, anynines, Google, etc.

• Private Cloud

• Bosch, BMW, Nestlé, etc.

• Community Cloud (e.g. gCloud)

• Hybrid Cloud (composite clouds)

Page 66: Vorlesung - Cloud infrastrukturen - Einleitung

Bausteine der Cloud

Page 67: Vorlesung - Cloud infrastrukturen - Einleitung

• IaaS, PaaS, SaaS

• NoSQL

• Big Data

• Devops / Noops

Page 68: Vorlesung - Cloud infrastrukturen - Einleitung

IaaS PaaS SaaS

Page 69: Vorlesung - Cloud infrastrukturen - Einleitung

Infrastructure as a Service (IaaS)

Technologien

Page 70: Vorlesung - Cloud infrastrukturen - Einleitung

IaaS aus der Dose

Page 71: Vorlesung - Cloud infrastrukturen - Einleitung

IaaS - Public Provider

• Amazon Web Services (AWS)

• Google Compute

• Profitbricks

• OpenStack Provider

• HP

• Ubuntu

• …

Page 72: Vorlesung - Cloud infrastrukturen - Einleitung

IaaS zum Selbermachen

Page 73: Vorlesung - Cloud infrastrukturen - Einleitung

IaaS - Produkte

• VMware (kommerziell)

• Cloud Stack (open source, kommerziell)

• OpenStack (open source, kommerziell)

• …

Page 74: Vorlesung - Cloud infrastrukturen - Einleitung

IaaS Beherrschen mit

Installationsautomatisierung

Page 75: Vorlesung - Cloud infrastrukturen - Einleitung

• Chef

• Puppet

• Bosh

• OpenStack Heat

Page 76: Vorlesung - Cloud infrastrukturen - Einleitung

PaaS

Page 77: Vorlesung - Cloud infrastrukturen - Einleitung

Öffentliche PaaS Anbieter

Page 78: Vorlesung - Cloud infrastrukturen - Einleitung

PaaS Anbieter

• anynines (deutsche Firma, deutsche Server)

• Cloud Control(deutsche Firma, US Infrastruktur mit Standort in der EU)

• HerokuUS Firma, US Infrastruktur

Page 79: Vorlesung - Cloud infrastrukturen - Einleitung

PaaS Baukasten

Page 80: Vorlesung - Cloud infrastrukturen - Einleitung

PaaS Baukasten

• Cloud Foundry

• Open Shift

• Kubernetes

Page 81: Vorlesung - Cloud infrastrukturen - Einleitung

Cloud nahe Dienste

Page 82: Vorlesung - Cloud infrastrukturen - Einleitung

• Apache Hadoop

• Apache Mesos

• CouchDB

• MongoDB

• Elastic Search

• Redis

• Memcache

• RabbitMQ

• Neo4J

• Solr

• Sphinx

• Amazon S3

• OpenStack Swift

• Ceph

Page 83: Vorlesung - Cloud infrastrukturen - Einleitung

• Riak

• Jenkins

Page 84: Vorlesung - Cloud infrastrukturen - Einleitung

Das Ergebnis

Page 85: Vorlesung - Cloud infrastrukturen - Einleitung

Servers, Network, Storage

Hardware

Infrastructure as a Service (IaaS)

PaaS (PaaS)

VMs, Network, Storage

Applications (SaaS)

CF API (deploy, scale, services, ...)

Page 86: Vorlesung - Cloud infrastrukturen - Einleitung

Open Source basierter Cloud Stack

Page 87: Vorlesung - Cloud infrastrukturen - Einleitung

• Kein Vendor-Lock-In

• Offene Standards

• Offene Schnittstellen

• Keine Lizenzgebühren

Page 88: Vorlesung - Cloud infrastrukturen - Einleitung

Hardware

OpenStack (IaaS)

Servers, Network, Storage

Cloud Foundry (PaaS)

VMs, Network, Storage

Applications (SaaS)

CF API (deploy, scale, services, ...)

Page 89: Vorlesung - Cloud infrastrukturen - Einleitung

Fragen?

Page 90: Vorlesung - Cloud infrastrukturen - Einleitung

Danke!

Page 91: Vorlesung - Cloud infrastrukturen - Einleitung

[email protected] @fischerjulian