Upload
anynines
View
447
Download
5
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
Cloud Infrastrukturen
Organisatorisches
The Big Picture
Wie passt die Cloud in das aktuelle Gesamtbild
der Wirtschaft?
Software sprengt Märkte
Die Großen fürchten die Newcomer mehr denn je.
Was unterscheidet das klassische Unternehmen
vom Disruptor?
Time to Value
Der disruptive Stack
• Business - Lean Startup
• Entwicklung - Agile Development
• Betrieb - Cloud
Lean
• Derived from Japanese manufacturing industry
• Toyota Production System (TPS)
• Master Thesis, John Krafcik, 1988 „Triumph of the Lean Production System“
ISBN-10: 0060974176 ISBN-13:
978-0060974176
• Prozessorientierung
• Prozessoptimierung
• Reduzierung von Verschwendung („Waste“) entlang der gesamten Wertschöpfungskette
• Einbeziehen der Mitarbeiter
The Lean Startup
ISBN-10: 0307887898 ISBN-13: 978-0307887894
• Ein Managementansatz für Startups
• Startups arbeiten in unsicherer Umgebung
• Finden eines nachhaltigen Geschäftsmodells
• Validiertes Lernen
• Wert-Hypothese
• Wachstums-Hypothese
• Minimum Viable Product (MVP)
• Validierung der Hypothesen
• Build, Measure, Learn-Zyklen
• Möglichst hohe Frequenz
Agile Softwareentwicklung
http://agilemanifesto.org
• Continuous delivery
• Continuous Integration
• Continuous Deployment
• Fließender Anforderungskatalog (Backlog)
• Kurze Lieferzyklen (Tage, Wochen)
• Enge Zusammenarbeit des Teams (täglich)
• Motivation, Vertrauen, Professionalität
• Vis à vis Kommunikation
• Funktionierende Software als Fortschrittsindikator
• 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
Beispiele agiler Methoden
• Scrum
• Kanban
Kanban
ISBN-10: 0984521402 ISBN-13: 978-0984521401
• Kanban ist agil.
• Kanban ist lean.
• Kanban ist kein Softwareentwicklungsprozess.
• Kanban ist ein Meta-Prozess.
• Prozess zur Prozessoptimierung.
• Work-in-progress (WIP) reduzieren
• Voller Fokus auf Softwarequalität
• Häufig funktionierende Software liefern („Deliver often“)
• Softwareentwicklungsprozess als Fluss vorstellen
• Anwendung von Methoden zur Flussoptimierung
• TOC - Theory of Constraints
• Vertrauen zu Projektbeteiligten aufbauen
• Bedarf und Durchlauf aufeinander abstimmen
• Methodische Priorisierung
• Explizite und transparente Projektregeln beschreiben des Entwicklungsprozess
• Regelmäßige Arbeit am Prozess
• Einbeziehung des Teams
• Selbstorganisation des Teams
• Entstehung einer Kaizen-Kultur der kontinuierlichen Verbesserung
Kanban zeigt Engpässe. Hilft den Wertstrom zu
beschleunigen.
• Software treibt Innovation
• Der disruptive Stack macht den Unterschied
• Die Cloud ist Teil des Stacks
Cloud
Roadmap
• Cloud Basiswissen
• Grundlagen des Clusterbaus
• Infrastructure as a Service
• Platform as a Service
• Projektarbeit
Lernziele
• Kenntnis grundlegender Cloud-
• Technologien
• Paradigmen und Methodiken
• Hands-on: Gelerntes Anwenden
Cloud Basiswissen
Was ist die Cloud?
NIST Definition of Cloud Special Publication
SP800-145http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf
Kern-Eigenschaften der Cloud
On-demand self-service
• Selbstständige Provisionierung
• Virtuelle Maschinen
• Storage
• Software Dienste
• Keine persönliche Interaktion zum Anbieter notwendig
Broad Network Access
• Erreichbarkeit der Ressourcen im Netzwerk
Resource Pooling
• Multimandantenfähigkeit
• Physikalische oder virtuelle Isolation
• Dynamische Ressourcen-Zuordnung zu Kunden (storage, processing, mem, net bandwidth)
Rapid Elasticity
• Elastische Provisionierung und Freigabe
• Automatische Provisionierung
• Eindruck „unendlicher Ressourcen“
• Anpassbar an den situativen Bedarf
Measured Service
• Monitoring
• Reporting
• Automatische Ressourcen-Kontrolle
Ebenso wichtige Eigenschaften (Nicht im NIST Dokument)
Redundanz und Robustheit
• Vermeidung von SPOFs (Single Point Of Failure)
• Skalierbare Architekturen (Lastverteilung)
• Robustheit durch Cluster-Bildung (Failover)
Selbstheilung
Selbstheilung
• Monitoring (Verfügbarkeit) +
• Automatisierte Bereitstellung (Provisioning)=
• Selbstheilung
Auto-Scaling
Auto-Scaling
• Monitoring (Durchsatz)+
• Automatisierte Bereitstellung (Provisioning)=
• Auto-Scaling
Service Modelle der Cloud
Infrastructure as a Service IaaS
Infrastructure as a Service (IaaS)
• Automatisierbare Bereitstellung der folgenden Ressourcen:
• Rechenleistung („compute“)
• Speicherplatz („storage“)
• Netzwerkverwaltung („networking“)
• Firewall-Regeln („security groups“)
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
Platform as a Service PaaS
Platform as a Service (PaaS)
• Anwendungsdeployments
• Keine/wenig Software-Installation notwendig
• Keine Softwarewartung notwendig
• Schlüsselfertige Bereitstellung von Diensten (Datenbanken, Suchserver, etc.)
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
Software as a Service SaaS
Software as a Service (SaaS)
• Gebrauchsfertige Software
• Betrieben in der Cloud
• Kein Kontakt mit PaaS oder IaaS
Deployment Modelle der Cloud
• Public Cloud
• Amazon, anynines, Google, etc.
• Private Cloud
• Bosch, BMW, Nestlé, etc.
• Community Cloud (e.g. gCloud)
• Hybrid Cloud (composite clouds)
Bausteine der Cloud
• IaaS, PaaS, SaaS
• NoSQL
• Big Data
• Devops / Noops
IaaS PaaS SaaS
Infrastructure as a Service (IaaS)
Technologien
IaaS aus der Dose
IaaS - Public Provider
• Amazon Web Services (AWS)
• Google Compute
• Profitbricks
• OpenStack Provider
• HP
• Ubuntu
• …
IaaS zum Selbermachen
IaaS - Produkte
• VMware (kommerziell)
• Cloud Stack (open source, kommerziell)
• OpenStack (open source, kommerziell)
• …
IaaS Beherrschen mit
Installationsautomatisierung
• Chef
• Puppet
• Bosh
• OpenStack Heat
PaaS
Öffentliche PaaS Anbieter
PaaS Anbieter
• anynines (deutsche Firma, deutsche Server)
• Cloud Control(deutsche Firma, US Infrastruktur mit Standort in der EU)
• HerokuUS Firma, US Infrastruktur
PaaS Baukasten
PaaS Baukasten
• Cloud Foundry
• Open Shift
• Kubernetes
Cloud nahe Dienste
• Apache Hadoop
• Apache Mesos
• CouchDB
• MongoDB
• Elastic Search
• Redis
• Memcache
• RabbitMQ
• Neo4J
• Solr
• Sphinx
• Amazon S3
• OpenStack Swift
• Ceph
• Riak
• Jenkins
Das Ergebnis
Servers, Network, Storage
Hardware
Infrastructure as a Service (IaaS)
PaaS (PaaS)
VMs, Network, Storage
Applications (SaaS)
CF API (deploy, scale, services, ...)
Open Source basierter Cloud Stack
• Kein Vendor-Lock-In
• Offene Standards
• Offene Schnittstellen
• Keine Lizenzgebühren
Hardware
OpenStack (IaaS)
Servers, Network, Storage
Cloud Foundry (PaaS)
VMs, Network, Storage
Applications (SaaS)
CF API (deploy, scale, services, ...)
Fragen?
Danke!
[email protected] @fischerjulian