30
COMLINE Cloud Services Einleitung Christian Günther Hannover, 09.12.2016 Die COMLINE AG präsentiert

00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Embed Size (px)

Citation preview

Page 1: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

COMLINE Cloud ServicesEinleitung

Christian GüntherHannover, 09.12.2016

Die COMLINE AG präsentiert

Page 2: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

COMLINE CSP – Einleitung

Page 3: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP
Page 4: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

On-demand self-serviceNutzer bestellen gewünschte Dienste über einen Self-Service (aka Shop), wobei die Bereitstellung vollständig automatisiert (also ohne manuelle Tätigkeit) geschieht.

Broad network accessDer Zugang zu den angebotenen Diensten wird über ein Netzwerk (meist das Internet) realisiert und setzt (in aller Regel) einen breitbandigen Anschluss voraus.

Resource poolingInfrastruktur-Komponenten werden in Ressourcen-Pools zusammengefasst und als Einheit betrachtet.

Rapid elasticitySteigenden Anforderungen an die Dienste (etwa Zugriffszahlen oder Datenvolumen) kann mittels einer elastischen Infrastruktur extrem schnell und möglichst automatisiert begegnet werden.

Measured serviceDienste liefern Daten zur Nutzung an eine Management-Einheit und lassen sich hinsichtlich Kosten (üblicherweise definiert über ihre Leistung) in Klassen einteilen.

Kerndefinition (nach NIST) für Cloud-Dienste

Page 5: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

3 Arten von Diensten in der Cloud

Page 6: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Die COMLINE Cloud Computing Platform (CSP) ist eine Umgebung zur Entwicklung und Betrieb von Cloud Diensten.

Die CSP stellt aus Sicht der COMLINE eine PaaS (Platform as a Service) dar, auf der COMLINE Cloud-Dienste entwickelt.

Betrieben wird die CSP auf einem IaaS Modell in COMLINE-eigenen Rechenzentren in Berlin

Die Cloud-Dienste werden zu Anwendungen zusammengefasst, die von Kunden der COMLINE im Sinne eines SaaS (Software as a Service) Modells gemietet und genutzt werden können.

Die COMLINE CSP, best of all Worlds

Die COMLINE CSP

Page 7: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Key Technical Figures der CSP

Virtualization Layer and Cloud Service Automation

Configuration and Service

Discovery

UI Runtime / User-Mgmt / SSO

Services Registry

Container Mgmt

Service Control

Open Platform

Any App

Ubuntu LTS-Cluster

Runs in Docker Container

CSP Open Platform = Micro services Architecture / Design + Runtime-Platform

Consumer

CamundaBPM Service

Generic AKKA Services

Node.js Services

Developer

DevOps

A reactive, fully scalable and partition tolerant platform offers highest availability and performance

Designed with the most innovative technologies and framework for cloud computing and analytics

Able to support agile Software Development concepts to quickly and reliable fulfill customer requirements

Standardized Software Development methodology based on DevOps and Continuous Integration

Analytics / ML Services

Operations

Jenkins CI

Page 8: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Grundlagen und Konzepte der COMLINE CSP

Page 9: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Die COMLINE CSP ist als reaktives System konzipiert.

Sowohl die Plattform selber, als auch die Services und Anwendungen werden entlang einer Reihe von Guidelines entwickelt und betrieben.

Die folgenden Slides geben eine Übersicht über– Reactive Systems– Domain Principles– Computing Concepts– Infrastructure Design Patterns – Architecture Design Patterns– Software Development Guidelines

Sie bilden die Grundlage aller Aktivitäten (von Design, über Konzeption bis hin zu Entwicklung und Betrieb) auf der CSP

Die COMLINE Cloud Services Platform

Page 10: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

In den letzten zehn bis fünfzehn Jahren haben sich eine Reihe von Architekturparadigmen etabliert, die heute die Grundlage für Unternehmensanwendungen definieren und in vielfältigen Standards, Frameworks und Best Practices so fest verankert sind, dass man kaum noch darüber nachdenkt.

Wendet man diese Paradigmen unreflektiert auf Cloud-Anwendungen an, führt das in der Regel zu ernüchternden Resultaten. Insbesondere die für Cloud Computing wichtigen Eigenschaften Skalierbarkeit, Elastizität und Robustheit sind auf diese Weise nicht erreichbar.

Ein Umdenken ist also notwendig, um die Potenziale der Cloud freizusetzen.

Cloud Services – Umdenken im Kopf

Page 11: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Reactive Systems

Page 12: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

The Reactive Manifesto

Die Lösung – reaktive Systeme

Page 13: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Eine moderne Plattform für Cloud-Computing muss als reaktives System konzipiert sein. Diese Systeme müssen stets antwortbereit, widerstandsfähig, elastisch und nachrichtenorientiert sein.

Systeme und Plattformen, die nach diesen Anforderungen entwickelt werden, erweisen sich als anpassungsfähiger, mit weniger starr gekoppelten Komponenten und in jeder Hinsicht skalierbarer.

Sie sind einfacher weiterzuentwickeln und zu verändern. Sie reagieren zuverlässiger und eleganter auf Fehler und vermeiden so desaströse Ausfälle.

Reaktive Systeme bereiten dem Anwender durch ihre fortwährende Antwortfreudigkeit eine interaktive und höchst befriedigende Erfahrung.

Was sind reaktive Systeme?

Page 14: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Das System antwortet unter allen Umständen zeitgerecht, solange dies überhaupt möglich ist. Antwortbereitschaft ist die Grundlage für Funktion und Benutzbarkeit eines Systems, aber noch wichtiger ist, dass Fehler in verteilten Systemen nur durch die Abwesenheit einer Antwort sicher festgestellt werden können. Ohne vereinbarte Antwortzeit-grenzen ist die Erkennung und Behandlung von Fehlern nicht möglich. Eine weitere Facette ist, dass konsistente Antwortzeiten als Zeichen von Qualität Vertrauen stiften und so weitere Interaktion fördern.

Antwortbereit – Responsive

Page 15: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Das System bleibt selbst bei Ausfällen von Hard- oder Soft-ware antwortbereit. Jedes System, welches nicht widerstandsfähig ist, verliert durch einen Ausfall seine Antwortbereitschaft und damit

seine Funktion. Widerstandsfähigkeit ist nur erreichbar durch Replizieren der Funktionalität, Eindämmung

von Fehlern, Isolation von Komponenten sowie Delegation von Verantwortung. So bleibt der Ausfall eines Teilsystems auf dieses begrenzt, andere Teilsysteme sind geschützt und in ihrer Funktion nicht behindert. Die Wiederherstellung des Normalzustandes wird einer übergeordneten Komponente übertragen, die durch die gesteuerte Replizierung der ihr untergeordneten Komponenten die geforderte Verfügbarkeit sicherstellt. All dies bedeutet, dass Nutzer eines auf diese Weise widerstands-fähigen Systems von der Last befreit sind, sich mit dessen Ausfällen auseinandersetzen zu müssen.

Widerstandsfähig – Resilient

Page 16: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Das System bleibt auch unter sich ändernden Lastbedingungen antwortbereit. Auch hier bildet die Verteilung und Replizierung von Funktionalität die Grundlage, auf der das System auf Veränderungen

reagiert. Bei Verminderung oder Erhöhung der Last werden

automatisch die Replizierungsfaktoren und damit die genutzten Ressourcen angepasst. Um dies zu ermöglichen, darf das System keine Engpässe aufweisen, die den Gesamtdurchsatz vor Erreichen der geplanten Maximalauslegung einschränken. Ideal ist eine Architektur, die keine fixen Engpässe aufweist. In diesem Fall kann das bearbeitete Aufgabengebiet in unabhängige Teile zerlegt und auf beliebig viele Ressourcen verteilt werden. Reaktive Systeme unterstützen die Erfassung ihrer Auslastung zur Laufzeit, um automatisch regelnd eingreifen zu können. Dank ihrer Elastizität können sie auf Speziallösungen verzichten und mit handels-üblichen Komponenten implementiert werden.

Elastisch – Elastic

Page 17: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Das System verwendet asynchrone Nachrichtenübermittlung zwischen seinen Komponenten zur Sicherstellung von deren Entkopplung und Isolation sowie zwecks Übermittlung

von Fehlern an übergeordnete Komponenten. Die explizite Verwendungen von

Nachrichtenübermittlung führt zu einer ortsunabhängigen Formulierung des Programms und erlaubt die transparente Skalierung von Komponenten. Die Überwachung von Nachrichtenpuffern ermöglicht kontinuierlichen Einblick in das Laufzeitverhalten des Systems (sowohl zur Diagnose als auch zur automatischen Ressourcensteuerung) sowie Priorisierung und Kontrolle der Nachrichtenflüsse. Ortsunabhängigkeit bedeutet, dass Code und Semantik des Programms nicht davon abhängen, ob dessen Teile auf demselben Computer oder verteilt über ein Netzwerk ausgeführt werden. Nicht-blockierende nachrichtenorientierte Systeme erlauben eine effiziente Verwendung von Ressourcen, da Komponenten beim Ausbleiben von Nachrichten vollständig inaktiv bleiben können.

Nachrichtenbasiert – Message Driven

Page 18: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Grundlagen, Konzepte und Guidelines

Page 19: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

1. Business Value durch maßvolle, kontinuierliche Verbesserung

2. Erwartung nach unendlicher Kapazität3. 100%ige Service-Verfügbarkeit4. Agieren wie ein Public Cloud-Service

Provider5. Optimierte Ressourcen-Nutzung6. Verfügbarkeit als ganzheitlicher Ansatz 7. Minimieren personeller Unterstützung8. Vorhersagbarkeit 9. Gewünschtes Verhalten belohnen10. Einheitliche User-Experience

Prinzipien für die Anwendungs-domäne Cloud-Services

Domain Principles

Weiterführende Informationen zu den Domain Principles finden sich in01_Domain_Principles...

Page 20: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

1. Elastizität statt Redundanz2. Elastische Infrastruktur3. Homogenität der physischen Plattform 4. Ressourcen-Pools5. Virtualisierte Infrastruktur6. Fabric Management7. Partitionierung der Shared Ressourcen8. Ressource Decay9. Service Klassifizierung10.Sicherheit und Identitäts-Management11. Multitenancy

Computing Concepts

Weiterführende Informationen zu den Computing Concepts finden sich in02_Computing_Concepts...

Page 21: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Die Infrastruktur unter der Cloud Service Plattform wird entlang der folgenden Entwurfsmuster konzipiert:

1. Ressource Pooling2. Physikalische Fault Domain3. Upgrade Domain4. Reserve Capacity5. Skalierende Einheiten (Units)6. Kapazitätsplanung7. Health Model

Entwurfsmuster sind bewährte Lösungsschablonen für

wiederkehrende Entwurfsprobleme.

Infrastructure Design Patterns

Weiterführende Informationen zu den Infrastructure Design Patterns finden sich in02_Computing_Concepts...

Page 22: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Die Anwendungen auf einer Cloud Service Plattform werden entlang der folgenden Entwurfsmuster konzipiert:

1. Domain Driven Design2. Microservices Architektur3. Hexagonale Architektur4. Peer-to-Peer Architektur5. Nachrichtenbasiertes SystemEntwurfsmuster sind bewährte

Lösungsschablonen für wiederkehrende Entwurfsprobleme.

Software Architecture Design Patterns

Weiterführende Informationen zu den Design Patterns finden sich in03_SW-Architecture_Design_Patterns...

Page 23: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

1. Codebasis2. Abhängigkeiten3. Konfiguration4. Build, Release, Run5. Backend-Dienste6. Prozesse7. Laufzeitcontainer8. Interfacing9. Port Binding10. Concurrency & Skalierung11. Elastizität & Verfügbarkeit12. Dev-/Prod-Parität13. Logs14. Administration und One-off Tasks

Software-Development Guidelines

Entwicklungs-Guidelines stellen, sprach- und laufzeitunabhängige Regeln, sowohl für die Entwicklung (Dev), als auch für das Operation (Ops) der Services und Applikationen dar.

Weiterführende Informationen zu den Design Patterns finden sich in04_SW-Development_Guidelines...

Page 24: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Komponentenmodell der CSP

Weiterführende Informationen zum Komponenten-Modell finden sich in11_Komponenten_und_OS-Plattform...

BI 4 Server

Open Platform ANALYTICS-Plattform

Cloud Service Automation

MS SQLInstanz

SAP HANA-Instanz

Analytics

UI Runtime / OpenID Logon / SSO

Cloud Automation

CLOUD-Service Plattform

CamundaBPM

Service

Swarm / Registrator / Consult

Docker Container

Docker Container

Docker Container

Windows Server

Nginx

AKKA Services

Node.js Services

.Net / SharePoint

Ubuntu LTS

Neo4JGraph DB

Cassandra-

ClusterMySQL Instanz

Konfiguration und Service Discovery

Any App

Page 25: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

COMLINE Cloud Service Automation

Service-Automation Portal

Benutzerschnittstelle

Benutzer kann mit minimalen Informationen im Service Portal den Dienst beauftragen

Die Anforderung wird im Rahmen von 7x24 Stunden sofort umgesetzt

Service-AutomationEngine

Durchführung

Neue Benutzer anlegen Drucker einrichten, ändern Berechtigungen für Dateisysteme

einrichten Smartphone bestellen, einrichten Endgeräte wie Laptop bestellen

und einrichten

Umgesetzte ProzesseErgebnis

Neuer Mitarbeiter kann sich an dem bereitgestellten Notebook anmelden, Drucken, E-Mails versenden und mit dem SmartPhone telefonieren. Er ist sofort arbeitsfähig.

komplexe Prozesse vereinfachen

Weiterführende Informationen zur Infrastruktur finden sich in12_Cloud_Service_Automation...

Page 26: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Dev/Ops

Weiterführende Informationen zum Dev/Ops-Ansatz finden sich in08_DevOps...

Page 27: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Software Delivery

Weiterführende Informationen zur Software Delivery finden sich in09_Software_Delivery...

Page 28: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

1. Hardware Layer2. Virtualization Layer3. Automation Layer4. Management Layer5. Orchestration Layer6. PaaS and SaaS Layer7. Tenant / Self-Services und Admin-UI

Plattform Infrastruktur

Weiterführende Informationen zur Plattform-Infrastruktur finden sich in13_Plattform_Infrastruktur...

Storage Network Compute Facility

Hardware Layer

Virtualization Layer

Automation Layer

Management Layer

Orchestration Layer

PaaS Workloads

SaaS Workloads

Tenant Self-Service / Admin Interfaces

Page 29: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Software Architektur

Weiterführende Informationen zur Software-Architektur finden sich in14_SW-Architektur-Overview..., 15_SW-Architektur_Process-and-Workflow... Und16_SW-Architektur_BigData-Analytics

Node.js Cluster

Job Manager

Cluster Manager

View Service

BI 4 Server

Application Service

PROCESS-Plattform ANALYTICS-Plattform

HANA Connector

Cloud Service Automation

Cassandra-Cluster

MSSQLInstanz

Service-Execution & Workflows

SAP HANA-Instanz

Analytics

MySQL Instanz

Portal Runtime

Cloud Automation

CLOUD-Service Plattform

BPM Service

KAFKAMessaging IO

SPARKAnalytics

SPARK Cluster-Manager

Job-Manager

SPARK Streaming Consumer

SPARK Driver

SPARKML

InStream Analytics

InStream Analytics &

Machine Learning

Neo4JGraph DB

Page 30: 00 Einleitung und Übersicht zur COMLINE Cloud Service Plattform - CSP

Christian GüntherPrincipal Solution Architect

Mobile: +49 1511 22 40 942E-Mail: [email protected]

COMLINE Computer und Softwarelösungen AG

Leverkusenstr. 54

DE - 22761 Hamburg

www.comlineag.de

Vielen Dank für Ihre Aufmerksamkeit.