Post on 06-Mar-2018
HOCHBEAMEN IN DIE CLOUDMissions-Briefings für Open Source-IT-Leiter
zu Hybrid Cloud, automatischer Skalierung und Microservices
2
Kapitel 1 | DIE REISE BEGINNT: ERFOLG IN DER CLOUD
Um dorthin vorzudringen, wo noch nie
zuvor ein Mensch gewesen ist, brauchen
von Cloud Computing angelockte IT-Leiter
eine neue Art von Raumschiff. Wie mit
einem überlegenen Schiff, das bis zur letzten
Grenze vordringt, können Sie mithilfe einer
erstklassigen Cloud Platform mit erweiterten
Tools zum schnellen Erstellen, Bereitstellen
und Verwalten von Apps, Datenbanken und
Diensten für ein Open Source-gestütztes
Unternehmen zu Cloud-Neuland navigieren.
Science Fiction-Helden kommandieren Raumschiffe,
mit denen sie sicher den Nebel durchdringen. IT-Leiter
benötigen im übertragenen Sinne ein entsprechendes
Raumfahrzeug – eine dynamische, innovative Plattform
für Unternehmen, mit der Sie und Ihr Team die Vorteile
der Cloud nutzen können. Dank Cloud Computing
können Entwicklungshäuser mit höherer Flexibilität
agieren und ihre Apps auf zuvor nicht verfügbare
und nicht machbare Art und Weise entwickeln. Dabei
profitieren sie von den Vorteilen der Cloud mithilfe
von Hybridtechnologien, die vorhandene Innovationen
und Ressourcen nutzen.
Selbst die beeindruckendsten fiktionalen
Raumschiffe wurden neu ausgerüstet, um mit
der Entwicklung mitzuhalten. Entsprechend
optimieren heute die Cloud-Anbieter ihre Angebote
in einem erstaunlichen Tempo. IT-Leiter folgen
dieser Evolution mithilfe von Ergänzungen zum
Upgrade ihrer Entwicklungsumgebungen, um ihre
Wettbewerbsposition durch offene Technologien,
plattformagnostische Schnittstellen und
architektonische Innovationen zu verbessern.
Dieses E-Book weist Ihnen den Kurs für die Verwendung
neuer Funktionen in der Cloud mit konkreten
Methoden zum Umgang mit Problembereichen und
zum Entwerfen von Anwendungen, um die Flexibilität
der Cloud zu nutzen. Für IT-Leiter, die ihren Teams
das Entwickeln auf skalierbare und nachhaltige Weise
ermöglichen möchten, ist die Bereitstellung einer
Plattform, die schnellere und einfachere Lösungen
bietet, nicht nur wichtig, sondern geschäftskritisch.
Kapitel 1
DIE REISE BEGINNT: ERFOLG
IN DER CLOUDErfüllen Sie die Anforderungen
an die IT nach mehr Leistung und Tempo durch die stärkere
Nutzung der Cloud.
4
Kapitel 1 | DIE REISE BEGINNT: ERFOLG IN DER CLOUD
und Bandbreite zu erfüllen. Die wachsenden
Anforderungen an die IT nach mehr Leistung und
Tempo führen an eine neue Grenze. Dabei müssen
Sie einen Aspekt in der dynamischen, mobilitäts- und
datenorientierten Realität von heute ernst nehmen:
Ihr Erfolg und der Ihres Unternehmens wird stark von
der Wahl der richtigen Cloud und Ihrer Fähigkeit,
diese Cloud Platform zum Katalysieren des Potenzials
von Entwicklern für die schnelle Markteinführung
von Anwendungen zu nutzen, beeinflusst.
In einem fiktiven, futuristischen Universum, in
dem Raumschiffe diplomatische, militärische
und Erkundungsmissionen ausführen, wissen
Kommandanten um den Wert eines voll
funktionsfähigen und zuverlässigen Schiffs.
In der realen Welt verfolgen IT-Abteilungen aus den
verschiedensten Bereichen ihre eigenen Missionen,
um kritische Vorgänge ihres Unternehmens zu
unterstützen, die nächste glänzende Idee ihrer
Entwickler zu ermöglichen, Entwicklungs- und
Testumgebungen in Warpgeschwindigkeit (und je nach
Bedarf) einzurichten und wachsende oder wechselnde
Anforderungen an ihr Team, die Rechenleistung
5
Kapitel 1 | DIE REISE BEGINNT: ERFOLG IN DER CLOUD
organisatorischen Effekt des Neuerfindens das Rads
beim manuellen Konfigurieren von Webservern,
Einrichten von NAS- (Network Attached Storage) und
Matrixservern oder Implementieren von Routing-
Lösungen für Netzwerke. Die richtige moderne Cloud
Platform schafft eine Abstraktionsstufe um Ebenen der
Dienstbereitstellung und Computerverwaltung herum
und entfernt die zur deren Ausführung erforderliche
manuelle Überwachung. Dadurch können Entwickler
ihre Energie und Aufwand dem Schreiben und
Bereitstellen von Anwendungen für Kundenbedürfnisse
einer höheren Ordnung widmen.
Unternehmen profitieren von der nutzungsbasierten
Bezahlung, wodurch die Ausgaben zum Ausführen mit
dem Internet verbundener Anwendungen minimiert
werden. Bei Unternehmensausgaben für Cloud-
Technologien von nahezu 118 Mrd. USD im Jahr 2015
(laut International Data Corporation (IDC)) ist es
offensichtlich, dass Unternehmen auf die Anforderung
nach mehr Leistung, Tempo (und günstigeren Preisen)
reagieren. Sie stellen neue Projekte und Produkte
bereit, verwalten Geräte einfacher, verarbeiten
schnell mehr Daten und richten die Geräte- und
Testumgebungen mit beispielloser Geschwindigkeit
ein – all dies mit Cloud Computing.
Aufschlussreich ist außerdem, dass Unternehmen,
die Mehrwert in der Cloud erzielen, nicht nur die
grundlegenden Cloud-Funktionen (bedarfsgesteuerte
virtuelle Computer) nutzen, sondern auch zu
modernerer Datenspeicherung und -verarbeitung,
skalierten Architekturen, Anwendungsautomatisierung
usw. migrieren. Und sie schrecken auch vor dem
Erstellen neuer Architekturen und Plattformen für
vorhandene Anwendungen nicht zurück – ein Cloud-
eigener Ansatz.
Die Vorteile des Cloud-Komforts Durch mehr Geräte, mehr Apps und mehr Daten
wird die IT-Landschaft immer anspruchsvoller.
Umso aufregender ist diese Zeit für Entwickler.
Mithilfe ausgereifter Computing-Plattformen,
die auf dem Wissen von Communitys aufbauen,
können sich Entwickler auf das Erstellen innovativer
Lösungen konzentrieren, dank skalierbarer, klonbarer
Technologie. Die Zeiten, in denen völlig neue
Architekturen für Anwendungen erstellt wurde, sind
lange vorbei. Und die Cloud spielt eine wichtige Rolle
dabei, dass Entwickler für die Lösung interessanterer
und sinnvollerer Designfragen frei werden.
Mit cloudbasierten Entwicklungsplattformen wird
eine mit herkömmlichem Computing nicht mögliche
Effizienz erreicht, speziell die Möglichkeit für die:
• Eigene Bereitstellung von Entwicklungs- und
Testumgebungen, sodass Anwendungs-Builds
weitergeleitet werden können, ohne dass mit
IT die ereitstellung von Instanzen koordiniert
werden muss.
• Abstimmung von Teams von Entwicklern,
Architekten und Designern bei der App-
Entwicklung.
• Beschleunigung der Anwendungsproduktion und
Reduzierung der Zeit bis zur Markteinführung
durch Klonen von Entwicklungs- und
Testumgebungen, Konfigurieren und Anpassen
von Skalierungsregeln für den gesamten
Erstellungsprozess.
Bei richtiger Ausführung können Entwickler sich
dank Cloud Computing auf die Lieferung von
Apps konzentrieren, ohne sich um den täglichen
Geschäftsbetrieb kümmern zu müssen. Entwickler
und IT-Leiter kennen allzu gut den negativen
6
Kapitel 1 | DIE REISE BEGINNT: ERFOLG IN DER CLOUD
• Einfache Skalierbarkeit. Für Unternehmen mit
wachsenden oder wechselnden Anforderungen an
die Bandbreite ist es einfach, die Cloud-Kapazität
aufwärts zu skalieren, indem auf die Remoteserver
der Cloud gesetzt wird. Analog dazu zeichnet bei
erforderlicher Skalierung nach unten die Flexibilität
den Cloud-Dienst aus.
Die Cloud ist die Grundlage,
auf der der Wandel gedeiht.
Denken Sie z. B. an die
alltäglichen Workflows
von Entwicklern. Die
Cloud macht mehr, als
sich wiederholende Aktionen nur zu heben und zu
verschieben. Die Cloud-Entwicklung rationalisiert
die Effizienz der Skalierung, die ihr Design mit sich
bringt. Sie bringt neue Tools, Techniken und Sprachen
zur Geltung, um die Arbeitsweise von Teams zu
transformieren, und ermöglicht Ihrem Unternehmen,
mit dem halsbrecherischen Entwicklungstempo
von heute Schritt zu halten. Und auf eine gewisse
Weise ist das Aufkommen der Cloud die Antwort auf
ihre eigene Herausforderung. Keine Rückkehr zur
lokalen geografischen Redundanz mit manuellen
Commits für jeden Standort. Cloud-Computing ist
die Herausforderung und die Antwort – mit keinerlei
Änderungsmanagement-Projekt in Sicht.
Wenn Cloud-Computing Ihren Entwicklungs-Workflow
zentralisiert, automatisiert und verteilt, wird die
Entwicklung so viel einfacher. „Flexibel in der Cloud“
ist ein Impulsgeber dafür, wie schnell Unternehmen
Kunden unterstützen können.
Zwei der wichtigsten Grundsätze der flexiblen
Erstellung, Workflows mit kontinuierlicher Integration
Die Cloud als wichtiges Tool für die EntwicklungDie schnelle Verbreitung von Cloud Computing-
Technologie unterstützt Entwickler jeden Tag. Dank der
Cloud können sich Entwickler auf die Programmierung
konzentrieren und müssen sich nicht um Installation,
Anpassung und Upgrade ihrer Tools kümmern. Da
sie nicht in Hardware-
und Netzwerkbelange
eingebunden sind, können
sie ihre Anstrengungen auf
das Erstellen unglaublicher
Programme zum Vorteil der
Benutzer konzentrieren.
Es gibt eindeutige Innovationsvorteile für
die Entwicklung von Software in der Cloud:
• Cloud-Stapel nach eigener Wahl. So viele oder
wenige Features und Add-Ons wie erforderlich
(führen Sie in einem Konto einen LAMP-Stapel aus,
richten Sie eine Node.js-Website oder MongoDB
ein).
• Globale Zusammenarbeit in Echtzeit. Entwickler,
die sich kein Büro teilen (oder in unabhängigen
Teams in einer nicht verbundenen Umgebung
arbeiten), können jetzt einfach in solchen
verteilten Teams zusammenarbeiten, Konten
bereitstellen, Änderungen verfolgen und an
mehreren Verzweigungen einer Codebasis in
einem freigegebenen Repository arbeiten.
• Flexibilität. Entwickler können schnell ihre
Anforderungen in der Infrastruktur erhöhen,
wenn sie Code testen oder größere Datensätze
als ursprünglich unerwartet ausführen müssen.
Die Cloud ist flexibel und kann beinahe
uneingeschränkte Nachfrage befriedigen.
Cloud Computing-Technologie unterstützt Entwickler jeden Tag.
7
Kapitel 1 | DIE REISE BEGINNT: ERFOLG IN DER CLOUD
Entwicklungsprozess insgesamt und verbessert die
Effizienz.
Erwarten Sie mehr von der CloudDie Cloud bietet nicht nur ein Framework, sondern
auch ein plattformagnostisches Softwareökosystem zur
Unterstützung von Entwicklern. Softwareplattformen,
die wesentliche Programmierungsaufgaben
vereinfachen und einheitliche Benutzeroberflächen
bereitstellen, verbessern die Produktivität eines jeden
Programmierers. Entwickler müssen Tools suchen,
die es ihnen ermöglichen, Innovationen schneller auf
den Markt, und die für den
Einsatz im Unternehmen
erforderliche umfassende
Basis bieten.
Als Open Source-Enthusiast
ist eine gute Frage zu
Beginn: „Was möchte ich mit der Cloud erreichen?“
Erwägen Sie die folgenden Optionen: Möchten Sie
Ihre Webanwendungen testen? Möchten Sie einen
Linux-Server auf einem virtuellen Computer starten?
Oder Windows für diese Plattform testen? Vielleicht
möchten Sie eine Datenbank bereitstellen. Oder
prädiktive Analyse ausführen oder vielleicht mobiles
Back-End-Hosting für wechselnden Datenverkehr
automatisieren. Oder möchten Sie in der Cloud etwas
Neues testen? Dies könnte heißen, MapReduce-Jobs
auf Hadoop auszuführen oder R für Machine Learning-
Projekte zu verwenden. Es könnte auch heißen, einen
virtuellen Debian-Computer für die Kommunikation
und dauerhafter Bereitstellung, ein alltäglicher Fakt
im Leben von Entwicklern, zeigen ihre skalierbaren
Fähigkeiten in der Cloud. Mit der kontinuierlichen
Integration wird automatisch ein Build ausgelöst, wenn
ein Entwickler Code im Quell-Repository eincheckt.
Mit der dauerhaften Bereitstellung wird dies einen
Schritt weiter geführt: Nach erfolgreichen Build-
und automatischen Unittests wird die Anwendung
automatisch in einer Umgebung bereitgestellt, in der
gründlichere Tests möglich sind.
Da alle Elemente in der Cloud ausgeführt werden,
müssen keine Server für die
Builds oder Testumgebungen
gekauft oder verwaltet
werden. Zudem müssen Sie
nicht warten, bis ein Server
verfügbar ist, um die Tests
durchzuführen. Mithilfe der
Cloud können Sie die Kosten
für die Verwaltung einer Testumgebung reduzieren,
da Sie für die Umgebungsressourcen je nach Nutzung
bezahlen. Mit dem dauerhaften Bereitstellungsvorgang
können Sie die Testumgebung bei Bedarf einrichten
und nach Abschluss der Tests deaktivieren.
Dank der Cloud können kontinuierliche
Softwareiterationen und -verbesserungen langwierige
Entwicklungs-, Test- und Freigabezyklen ersetzen.
Normalerweise ist jeder Schritt im Prozess klein,
sodass Iterationen die Entwicklungspipeline schnell
durchlaufen. Auf diese Weise beschleunigt ein
kontinuierliches Anwendungsentwicklungsmodell den
Die erste Frage, die Sie sich stellen sollten, ist: „Was möchte ich mit der Cloud erreichen?“
8
Kapitel 1 | DIE REISE BEGINNT: ERFOLG IN DER CLOUD
können nahezu jede Technologie und Datenquelle
nutzen. Sie können das Wissen anderer Nutzer mithilfe
von Open Source-Konfigurationsverwaltungstools
(wie Chef oder Puppet) nutzen, um Ihre App in
einem globalen Netzwerk von 22 Azure-Regionen
bereitzustellen.
Die Azure-Plattform bietet ein vollständiges Toolset,
das Interoperabilität unterstützt und somit Portabilität
ermöglicht. Auf welche Weise? Indem Entwickler
bei Bedarf ihre vorhandenen Anwendungen in die
Cloud übertragen können, ohne sich Sorgen um
die Kompatibilität der Technologien mit der Cloud-
Umgebung machen zu müssen.
Richtig eingesetzt zahlt sich die Lernkurve von
Cloud Computing schnell aus, da Organisationen
mehr Leistung und Tempo erreichen. Die Cloud setzt
Arbeitszeit und Rechenzentrumsressourcen frei.
Ein zusätzlicher Vorteil dieses Lösungssatzes ist die
grundsätzliche Wertschätzung, wie Unternehmen heute
Technologie einsetzen, um effiziente Vorgehensweisen
über Systeme zu nutzen, die zuvor möglicherweise
nicht erschwinglich waren. Unternehmen erkennen
diesen Wert schnell (für DevOps, verteilte Teams
und andere sich entwickelnde Arbeitsmethoden)
und verschieben schnell Dienste in die Cloud. Für
größere, etablierte Unternehmen (z. B. Unternehmen
mit erheblichen Investitionen in IT) ist jedoch die
komplette Umstellung auf die Cloud von Tag 1 an unter
Umständen nicht sinnvoll. Wenn Ihr Unternehmen
lokale und Cloud-Dienste benötigt, sollten Sie einen
Hybrid Cloud Computing-Ansatz in Betracht ziehen,
bei dem Sie entscheiden, welche Workloads gute
mit IoT-Endpunkten mit Raspberry Pi auszuführen
oder Red Hat CloudForms zum Verwalten von Hybrid
Cloud-Containern einzurichten – die Art von Projekten,
bei denen Sie mehr Flexibilität benötigen, als in den
konventionellen Umgebungen bereitgestellt wird.
Mit der richtigen cloudbasierten Entwicklungsplattform
können Sie ein beliebiges dieser Szenarien
und eines der aufregendsten ausführen: eine
Testumgebung sofort einfach durch Verwenden
eines Automatisierungsskripts einrichten, dafür
Akzeptanztests oder gründlichere Tests durchführen
und nach Abschluss die Bereitstellung von
Warteschlangen mit niedriger Priorität automatisch
aufheben, wodurch Sie wertvolle Arbeitszeit einsparen.
Wenn Sie sich für einen Wechsel in die Cloud
entscheiden, wählen Sie eine Plattform, die alle Vorteile
der Cloud nutzt (Interoperabilität, Offenheit, Hybrid-
Portabilität, Automatisierung), ohne Zugeständnisse
bei den Funktionen, die Ihr Team und Projektbeteiligte
benötigen.
Azure ist die offene und flexible Cloud Platform von
Microsoft, mit der sich Ihr Team auf Code konzentrieren
und die Bausteine der Plattform zum schnellen und
flexiblen Skalieren nutzen. Sie können komplexe
Linux-basierte Lösungen für Unternehmen entwickeln,
die nahtlos auf mehreren Cloud-Instanzen ausgeführt
werden. Azure hat Open Source durch Investitionen
aufgewertet, sodass Sie beliebige Umgebungen (Linux,
OS X oder Windows Server), Sprachen (Python, PHP,
Java, Node.js, .NET, C#, Visual Basic, C++ und andere),
Entwicklungstools (Git, Visual Studio, Eclipse und
andere), Datenplattformen oder offene Standards
verwenden können, in denen Sie bereits arbeiten. Sie
9
Kapitel 1 | DIE REISE BEGINNT: ERFOLG IN DER CLOUD
verdreifachen soll. Und das ist keine Überraschung.
„Das Zeitalter von Cloud-Computing hat die Epoche
des Entwicklers erweitert“, schreibt Megan Swanson
in WIRED. Dank dieser Technologie „können sich
[Programmierer] auf das Erstellen von Anwendungen
konzentrieren, die neue Funktionen, neue
Geschäftschancen und sogar neue Branchen schaffen.“
Der Wert der Cloud ist offensichtlich, die Technologie
ist solide, und die Chance ist klar. Sind Sie dabei? Wenn
ja, werden Sie aktiv!
Kandidaten für die Cloud sind und welche besser lokal
genutzt werden.
Suchen Sie eine Cloud Platform, die:
• Flexibilität bietet, sodass Sie Ihre Anwendung
unabhängig vom Nutzungsszenario nach Ihren
Wünschen erstellen und die Infrastruktur ohne
Beeinträchtigung von Zuverlässigkeit und
Skalierbarkeit verwalten können. (Auswirkung
auf Geschäftsbetrieb: minimale Prozess- oder
Talentanpassungen erforderlich)
• Einfache Interoperabilität mit anderen Plattformen
ermöglicht. (Auswirkung auf Geschäftsbetrieb:
minimale Umschulung oder Einstellungen
erforderlich, vorhandene Anbieter können
beibehalten werden)
• Datenportabilität ermöglicht. (Auswirkung auf
Geschäftsbetrieb: Flexibilität und Geschwindigkeit
von Ausführung und Archivierung, Freiheit für
Änderungen)
• Einen Hybrid Cloud Computing-Ansatz nutzt, der
die Nutzung bereits getätigter IT-Investitionen
des Unternehmens gewährleistet. (Auswirkung
auf Geschäftsbetrieb: vorhandene IT-Investitionen
zahlen sich garantiert aus, klare Trennungen in
Rückbelastungssystemen werden beibehalten)
Bislang hatten IT-Leiter und Entwickler drei Optionen
in Bezug auf die Cloud: ignorieren, blockieren oder
mitgehen. Die ersten beiden Optionen sind jetzt vom
Tisch – das Schiff Cloud hat Segel gesetzt. Laut einer
neuen Evans Data-Umfrage nutzen fast fünf Millionen
Entwickler die Cloud als Entwicklungsplattform,
eine Zahl, die sich in den nächsten 12 Monaten
Kapitel 2
EIN BESSERES RAUMSCHIFF
BAUEN: OFFEN UND FLEXIBEL
ERFOLGREICH SEIN.Nutzen Sie Open Source-Software
in der Cloud, um das Potenzial von Entwicklern zu katalysieren
und Unternehmensanforderungen zu erfüllen.
11
Kapitel 2 | EIN BESSERES RAUMSCHIFF BAUEN: OFFEN UND FLEXIBEL ERFOLGREICH SEIN
Ein Universum von Open Source ist ein Universum, in
dem Teilen der Modus Operandi ist. Einigen der besten
Tools zur Softwareentwicklung enthalten heute Open
Source-Lösungen und erkennen die Kulturen an, die
aus den weltweit kollaborativen Workflows stammen,
die sie ermöglichen.
Open Source muss nicht zusammengestückelte Fixes
mit eingeschränktem Support heißen. In vielen Fällen
ist Open Source die treibende Kraft hinter den meisten
neuen Cloud Platforms. Für Ihre Missionen ist ein
hervorragendes Raumschiff wichtig. Ebenso wie das
entsprechende Triebwerk. Welches Triebwerk treibt Ihr
Raumschiff heute an? Es ist dies: Innovation aus der
Beteiligung und Zusammenarbeit in der Cloud.
Fiktive interstellare Forscher der Zukunft dringen
dorthin vor, wo noch nie zuvor ein Mensch gewesen
ist, und treten in Kontakt mit Bewohnern fremder
Zivilisationen, um nebeneinander zu leben und zu
lernen. Ähnlich wie imaginäre Weltraumreisende
streben Entwickler von heute danach, die Grenzen ihres
Wissens durch Zusammenarbeit und Beteiligung zu
erweitern.
Entwickler legen extrem großen Wert auf das Teilen –
der Erfolge, der Erkenntnisse aus Fehlern, von Metriken
und Code. Dies erfolgt auf eine solche Weise, dass
andere bedeutungsvolle Beiträge leisten können.
010101
110001010101110001
010101
110001010101110001
12
Kapitel 2 | EIN BESSERES RAUMSCHIFF BAUEN: OFFEN UND FLEXIBEL ERFOLGREICH SEIN
Open Source ist das Geheimnis von Entwicklern zum
Umgehen der Lernkurve bei der Umstellung auf einen
anderen Auftrag oder bei der Verwendung einer
anderen Sprache oder Technologie. Dank Open Source
können Sie Ihre eigene Cloud einbringen und somit
in der Folge einfacher zu anderen Hostingdiensten
migrieren, sollte die Notwendigkeit bestehen.
Viele der aufregenden Aspekte, die heute in der
Cloud-Entwicklung geschehen, sind Open Source.
Zu den neuesten, viel gepriesenen Technologien
zur Nutzung von Cloud-Entwicklungsparadigmen
gehören Datenbank- und Cache-Drehpunkte
wie Cassandra, Elasticsearch, Memcached und
Redis. Eine der faszinierendsten Technologie in
der gegenwärtigen Open Source-Welle ist jedoch
Docker, der dank ihr Fähigkeit, Apps geschickt
zwischen Plattformen zu packen und zu portieren, viel
Aufmerksamkeit gewidmet wurde. Dies war eine große
Erleichterung für jeden, einschließlich Tech-Shops
mit beschränkten lokalen Entwicklungsumgebungen.
Große Unternehmen finden für Docker vielfältige
Einsatzmöglichkeiten in der Produktion, und
Entwickler behaupten, dass sie dadurch mehr
Zeit für interessantere, anspruchsvollere Arbeiten
haben. Angesichts der Weiterentwicklung der Cloud
betrachten Entwickler Container als ein Mittel, die
in der Cloud entwickelten Anwendungen schnell
und effizient zu erstellen und bereitzustellen, da sie
plattformübergreifende Flexibilität und Skalierbarkeit
ermöglichen. Und viele glauben, dass Docker die
Branche für die nächsten Jahre bestimmen wird.
Open Source als MotorWas ist also der beste Ansatz, wenn Sie die Vorteile von
Open Source-Software in der Cloud nutzen möchten?
Direkt aus der QuelleIT ändert sich nicht selbst. Die weltweit
18,5 Millionen Entwickler verwenden IT, um die Welt
zu verändern, mit jeweils einer kleinen Innovation.
Im Zeitalter des Internets bricht Software jede
Branche auf. Die Mittel dieser Veränderung sind
Geschäftsanwendungen, die die Art und Weise
grundlegend verändern, wie Organisationen
betrieben werden, mit Kunden interagieren
und auf den Markt gehen.
IT-Leiter haben die doppelte Aufgabe, die
Organisation für den Erfolg einzurichten und
dabei sicherzustellen, dass diese Strategie die
künftige Entwicklung der Technologie in den
nächsten Jahren berücksichtigt. Was ist die
verantwortliche, durchdachte und innovative
Haltung auf einem Spielfeld, das sich regelmäßig
zu wechseln scheint?
Die Konstante bei der Cloud und im Open Source-
Geschäft sind Zusammenarbeit und Skalierung.
Wenn Ihre Entwickler Anwendungen erstellen, die
mithilfe der Cloud Unternehmensanforderungen
erfüllen, benötigen Sie eine Plattform, die
Zusammenarbeit unterstützt. Open Source
katalysiert bei der Verwendung in Kombination mit
der Cloud das Potenzial von Entwicklern. Stellen
Sie sich eine Plattform vor, die Hubs von Code für
Betriebssysteme und wesentliche Dienstprogramme
zentralisiert sowie zum Debugging und zur
Problembehebung beiträgt. Diese Plattform stärkt
Ihre Ressourcen, die Anstrengungen von Entwicklern
bei der Problemlösung und sorgt für leistungsstarke
Programme, die schnell Kundenwert erbringen.
13
Kapitel 2 | EIN BESSERES RAUMSCHIFF BAUEN: OFFEN UND FLEXIBEL ERFOLGREICH SEIN
Heute ist einer von vier virtuellen Azure-Computern
Linux, und mehr als 60 % der Marketplace-Bilder
basieren auf Linux. Azure unterstützt und integriert
sauber die führenden Open Source-Sprachen,
Entwicklungsumgebungen und Infrastrukturen
(z. B. PHP, Java, Node.js, Python und Ruby). Darüber
hinaus unterstützt Microsoft das Hadoop-Ökosystem
und bietet Azure HDInsight,
einen 100-prozentigen
Apache Hadoop-basierten
Cloud-Dienst, der in
Windows und Linux
bereitstellen kann. Und mit
einer offenen RESTful API
für jede Komponente, SDKs
für mehrere Sprachen sowie verschiedenen Tools
und Automatisierungsoptionen deckt Microsoft
neue Szenarien ab wie die Internet of Things-
Aufnahmenetzwerke, Big Data, Machine Learning
und Docker-basierte Architekturen der nächsten
Generation. Selbst solche Open Source-Plattformen wie
die CAD-Kartentools von Geografen können auf der
Azure-Plattform ausgeführt werden.
Vor einigen Jahren konnte das Amt für Umweltschutz
der dänischen Regierung seine kostenintensiven
lokalen Datenspeicher in Azure Cloud-basiertes
Hosting verschieben, somit die Kosten reduzieren
und Abschied von manuellen, websiteübergreifenden
Backups und Compliance-Überprüfungen nehmen.
Wie viele öffentliche Ministerien musste das Amt
viel mit wenig erreichen. Ein kleines Team mit nur
neun Mitarbeitern war für die Verwaltung von
Während Sie den Kurs für das Erstellen von
Anwendungen festlegen, die mithilfe der Cloud
Unternehmensanforderungen erfüllen, sollte Sie die
gewählte Plattform zu den richtigen Funktionen leiten,
die schnellere App-Entwicklung und Tests erleichtern
und die Flexibilität für die Migration zwischen Cloud
und lokal bieten. Wie wir gesehen haben, sollte sie
die Nutzung fast aller
Programmiersprachen,
Entwicklungsframeworks
oder Tools vereinfachen, Ihre
Anforderungen und die Ihres
Teams erfüllen, also mit den
Tools (z. B. Docker, Java, Red
Hat) arbeiten, die Sie bereits
nutzen. Und sie sollte großen Wert auf Teilen und
kollaborative Workflows legen.
Open Source bedeutet nicht „falls“, sondern „wann“. Da
Open Source eine Realität für führende Cloud-Anbieter
ist, können Sie erwarten, dass Ihre Plattform auf nahezu
jeder Serverplattform ausgeführt wird. Wahrscheinlich
nutzt Ihr Cloud-Anbieter Open Source bereits zum
Betreiben Tausender von Instanzen. Azure auf jeden
Fall.
Die Microsoft-Cloud unterstützt zahlreiche
branchenführende Betriebssysteme, Sprachen, Tools
und Frameworks von Red Hat über Ubuntu, Windows
und openSUSE, MariaDB und SQL Server, C# bis hin zu
Java. Die besten aller Ökosysteme sind betriebsbereit,
sodass Sie großartige Anwendungen und Dienste
erstellen können, die auf vielen Geräten funktionieren.
Die meisten aufregenden Aspekte, die heute in der Cloud geschehen, sind Open Source.
14
Kapitel 2 | EIN BESSERES RAUMSCHIFF BAUEN: OFFEN UND FLEXIBEL ERFOLGREICH SEIN
Open Source ist im Wesentlich der Schlüssel für
den Ansatz von Microsoft zur Cloud-Innovation.
Microsoft bietet z. B. neue Containerfunktionen mit
Docker-Integration und zwar offen mit zukünftigen
Diensten wie Azure
Container Services.
Microsoft sucht ständig
nach Möglichkeiten,
die Entwickler- und
Benutzererfahrung mit
SDKs für Open Source-
Sprachen und eine offene
API zu verbessern. Darüber hinaus ist Microsoft ist
bestrebt, seine Erkenntnisse zur Cloud mit Ihnen und
für Ihre Rechenzentren zu teilen, dank Linux und Open
Source-Unterstützung im Azure-Ressourcen-Manager
und in der Zukunft Azure Stack.
Azure unterstützt die Open Source-Technologien,
die Entwickler bereits nutzen, durch:
• Aufnahme von Entwicklungs- und Test-Tools in
die Integration Roadmap. Azure unterstützt Tools
wie Vagrant, Jenkins und Hudson und integriert
mehrere andere Technologien nahtlos über offene
APIs, Open Source-SDKs und Befehlszeilen-Tools,
die unter Linux und OS X funktionieren.
• Einplanen von Open Source-Unterstützung im
Produkt. Einige von Microsoft verwaltete Dienste
bauen bereits auf beliebte Open Source-Tools
auf: Azure Container Services für Docker und
Mesos, Redis Cache für verteilten In-Memory-
Cache-Dienst und HDInsight unter Linux für
Big Data-Projekte. Der Vorteil der Arbeit mit diesen
Produkten ist, dass keines die Bedienung durch
Entwickler erfordert. Stattdessen werden sie alle
von Microsoft für Sie verwaltet, und sie wurden mit
Open Source-Technologien konzipiert.
14 verschiedenen Datenbanken verantwortlich,
die Daten für eine Vielzahl von Java-basierten
geografischen Open Source-Schnittstellen neben
weiterer Visualisierungs- und Zeichensoftware von
Drittanbieter enthielten.
Mit dem Wechsel zu Azure
konnten sie unterwegs im
Außendienst Server auf
ihren Laptops verwalten,
eine hilfreiche Aufgabe,
wenn man bedenkt, dass
so wenige Mitarbeiter die
Konfiguration und Überwachung von Datenspeichern
gelenkt haben, die die natürlichen Ressourcen eines
ganzen Landes darstellen.
Open Source-Initiativen vorantreibenIT-Abteilungen erkunden den Open Source-Markt,
um Unternehmensanforderungen zu erfüllen. Und
dieser Markt reagiert entsprechend. Damit sich neue
Entwickler für die Open Source-Szene interessieren,
geben immer mehr Anbieter ihren Code frei. Selbst
Microsoft hat seinen serverseitigen .NET-Stack geöffnet
und für Projekte wie Linux und Mac OS erweitert.
Im Kern der Cloud von Microsoft befindet sich Azure,
eine offene und flexible Plattform, die mit dem hohen
Entwicklungstempo von Open Source-Technologie
mithalten kann. Im Gegensatz zu anderen Anbietern,
die ursprünglich selbst geschriebene oder erstellte
Standards auf offen nachrüsten, wurde Azure von
Anfang an als offen bzw. mit mehr offenen Standards
entwickelt.
Open Source steht nicht mehr für zusammengestückelte Fixes ohne jeglichen Support.
15
Kapitel 2 | EIN BESSERES RAUMSCHIFF BAUEN: OFFEN UND FLEXIBEL ERFOLGREICH SEIN
Egal, ob bei der fiktiven Navigation in einer
interstellaren Republik planetarischer Souveränitäten
oder beim echten Zuordnen in der Cloud befindet sich
Ihr Raumschiff an der Startlinie. Wenn Ihr Raumschiff
Offenheit und Flexibilität voranbringt und Ihnen die
Freiheit bietet, die Galaxie und Cloud auf jeder Stufe zu
nutzen, dann ist es ein wirklich transformatives Mittel
und ein Vorbote für Innovationen.
Während Microsoft mit dem Open Source-Ökosystem
interagiert und Open Source-Lösungen in Azure
einführt, werden Ihnen und Ihrer Organisation
verschiedene Plattformen und Tools geboten, die
echte Möglichkeit, Ihre eigene Cloud einzubringen,
Open Source–optimierte Unterstützung und
intelligente Verwaltungsoptionen.
Sie sollten wissen, wohin Sie Ihre eigenen Pläne mit
der Cloud führen und wohin Ihre Open Source-Cloud-
Softwareanbieter gehen, bevor Sie Ihre Wahl treffen.
• Eingeschränkte Linux-Unterstützung. Somit
können Entwickler schnell Hindernisse für
die Nutzung der Cloud auf jeder Stufe der
Entwicklung entfernen, bei der App-Erstellung, bei
Tests, Bereitstellung oder bei der Produktion.
• Priorisieren von Hybrid und Offenheit,
um sicherzustellen, dass Workloads nicht
gebunden werden. Dadurch können Entwickler
Anwendungen zwischen lokal und der Cloud
verschieben, mit dem Wissen, dass die vollständig
virtualisierten Instanzen zurück zu vollständig
lokal verschoben werden können, wenn dies vom
Unternehmen gefordert wird.
In dem Bestreben, Entwicklern das Arbeiten in
Open Source zu ermöglichen, um die vertrauten
und beliebten Plattformen zu nutzen, hat Microsoft
in Partnerschaft mit der Linux Foundation kürzlich
ein Linux auf Azure-Zertifizierungsprogramm für
IT-Spezialisten gestartet, die die Linux-Verwaltung
und Microsoft Azure-Implementierungsfertigkeiten
meistern möchten. Mit einer von Microsoft
ausgestellten Zertifizierung, die die Linux
Foundation Certified System Administrator-Prüfung
umfasst, können sich IT-Leiter und Entwickler von ihren
Kollegen abheben und werden gleichzeitig technisch
und professionell zu den interessantesten Technologien
unserer Zeit geprüft.
In unserem softwaredefinierten Universum ist die
IT-Maschine die Innovation und Open Source der
ultimative Motor.
Kapitel 3
ABHEBEN: HYBRID CLOUD-
LÖSUNGEN BIETEN DAS
BESTE AUS BEIDEN WELTEN.
Seien Sie mit neuen Verwaltungstools bereit für den nächsten großen
Schritt – die Hybrid Cloud.
17
Kapitel 3 | ABHEBEN: HYBRID CLOUD-LÖSUNGEN BIETEN DAS BESTE AUS BEIDEN WELTEN.
wie von großen Unternehmensinvestitionen und
Vermögensgegenständen. Sie verstehen jedoch auch,
dass die Vorteile der Cloud zu groß sind, um ignoriert
zu werden. Die Frage lautet letztendlich: Was ist die
einfachste und schnellste Methode, um unsere Apps
in eine Public Cloud-Umgebung zu verschieben
und dabei die enge Integration in unsere lokale
Systemarchitektur beizubehalten?
Abläufe mit mehreren Missionen erfordern eine
umfassende Koordination zwischen verschiedenen
Abteilungen. Mit den operativen Befugnissen für Ihr
Raumschiff in Ihren Händen werden Ihnen wichtige
Entscheidungen für wesentliche koordinierte
Anstrengungen in Ihrem Unternehmen übertragen
wie für das Finden der besten Methode zum
Überbrücken des Unternehmensrechenzentrums und
der Cloud. Sie sind nicht alleine. IT-Leiter sind mit dem
Schutz der lokalen Infrastruktur beauftragt, ähnlich
18
Kapitel 3 | ABHEBEN: HYBRID CLOUD-LÖSUNGEN BIETEN DAS BESTE AUS BEIDEN WELTEN.
trotzdem entscheidende Veränderungen für Ihr Team
und die Benutzer bedeuten. Es gibt viel zu tun, wo
beginnen Sie also? Die größte Herausforderung beim
Zusammenführen von privaten Clouds und Public
Clouds ist die Entscheidung, welche Workloads in der
privaten Cloud ausgeführt und welche in die Public
Cloud verschoben werden sollen, und wie sich dieser
Hybrid-Ansatz auf Ihr Unternehmen auswirkt.
Berücksichtigen Sie beim Feststellen Ihrer Optionen
neben Überlegungen zu Sicherheit und Compliance
die Größe des Workloads. Die Architektur der einer
bestimmten Anwendung zugeordneten Dienste können
zur schlechten Eignung für die Nutzung in der Cloud
führen. Es ist unter Umständen am besten, diese
Workloads aus finanziellen oder Leistungsgründen
in die lokale Architektur aufzunehmen. Zudem
sind Systeme, die strenge Sicherheitsparameter,
spezialisierte Konfigurationen oder dedizierte
Hardware erfordern, unter Umständen in der Cloud
nicht erfolgreich. Für viele Unternehmen gelten
stringente behördliche und Branchenbestimmungen,
die den physischen Standort bestimmter Datentypen
streng einschränken. Da das Wesen der Public
Cloud in der Ausführung eines Workloads an einem
beliebigen Ort auf der Welt besteht, ergeben sich
Konflikte zwischen öffentlichen Cloud-Diensten und
speziellen Branchenbestimmungen. Daher müssen
an entsprechende Bestimmungen gebundene
Unternehmen häufig vertrauliche Anwendungen von
der Public Cloud abgrenzen. Ziehen Sie in diesem Fall
eine lokale Architektur für den schnellen, lokalen Zugriff
auf große Dateien, die Kontrolle über vertrauliche
Daten und die Einhaltung bestimmter Regelungen
und Prüfungsverträge in Betracht.
Flexibilität und Erweiterbarkeit der Infrastruktur erhöhen Wir alle wissen, dass die Vorteile von Cloud
Computing, basierend auf den stabilen Säulen
Benutzerfreundlichkeit, Flexibilität und Kosteneffizienz,
den Unternehmen von heute nicht verborgen bleiben.
Aber selbst wenn sich Organisationen für einen
Wechsel in die Cloud entscheiden, stehen sie vor einer
weiteren Wahl: Wann sollte mit der Nutzung der Public
Cloud begonnen werden, wann nicht, und wann sollten
Dienste und Workloads aus dem Rechenzentrum in
Public Clouds verschoben werden? Die gute Nachricht
ist, dass die Antwort nicht exklusiv für die Cloud
gilt. Ein Hybrid Cloud-Ansatz ermöglicht es Ihrem
Team, die traditionelle Rechenzentrumspräsenz,
die Sie kennen, und die Vorteile einer Public
Cloud zusammenzuführen. Der Hybrid-Ansatz
bietet die Flexibilität der Implementierung neuer
Funktionen in der Cloud bei gleichzeitiger Nutzung
des in der vorhandenen Infrastruktur aufgebauten
organisatorischen Reichtums.
Unternehmen erkennen, dass sie sowohl lokale Systeme
als auch Cloud-Dienste benötigen. Werden Sie also,
falls noch nicht geschehen, Mitglied der wachsenden
Gruppe von IT-Leitern, die diese beiden Anforderungen
mit der Hybrid Cloud-Bereitstellung erfüllen – eine
sichere Methode für den Einstieg in die Cloud bei
effizienterer Nutzung der lokalen Investitionen.
Die Migration in Gang bringen Ein Wechsel zur Hybrid Cloud ist unter Umständen
nicht so radikal wie das vollständige Verlassen
des Unternehmensrechenzentrums, er kann aber
19
Kapitel 3 | ABHEBEN: HYBRID CLOUD-LÖSUNGEN BIETEN DAS BESTE AUS BEIDEN WELTEN.
Cloud-Technologien sind außerdem die beste Wahl
zum Bereitstellen von sicheren mobilen Apps weltweit.
Die Cloud ist die ideale Umgebung zur effizienten
Verwaltung von Endbenutzerzugriffen und -identität
von praktisch überall aus. Mit cloudbasierten Tools
können Sie den Zugriff auf Cloud-Apps unterwegs
im Außendienst mit Single Sign-On bereitstellen,
Zugriffsrichtlinien verwalten, die sichere Bereitstellung
vertraulicher Dokumente auf einem beliebigen Gerät
zulassen, Sicherheitswarnungen einrichten, die durch
verdächtiges Verhalten ausgelöst werden, bevor ein
Schaden eintritt, und mit vom Benutzer angewiesenen
Konto- und Kennwortzurücksetzungen Zeit einsparen
und die Anzahl von Helpdesk-Anrufen reduzieren.
Ziehen Sie die Cloud dann für Datensicherung und
-speicherung, Hyper-Skalierbarkeit nach Bedarf und
sicheren, verteilten Zugriff auf mobile Anwendungen in
Betracht.
Funktionen maximierenEine optimal ausgeführte Hybrid Cloud kann schnell
öffentliche und private Ressourcen bereitstellen,
IT-Abteilungen Kontrolle und Sichtbarkeit und den
On-Demand-Self-Service bieten, den Entwickler und
Anwendungsbenutzer erwarten. Über eine flexiblere
Hybrid Cloud-Infrastruktur können Unternehmen die
Markteinführungszeit verkürzen, den Vorlaufbedarf
erfüllen und Kosten sparen, da ein Hybrid-Ansatz drei
wichtige Computingfunktionen maximiert, nämlich:
• Lastenausgleich. Eine unerwartete Zunahme
der Benutzeraktivität kann zu einer schlechten
Anwendungsleistung führen, wenn die
Computing-Kapazität eines Rechenzentrums
erschöpft ist. Eine Hybrid Cloud kann jedoch
Das Erweitern Ihres Rechenzentrums mit Cloud-
Diensten kann die Zuverlässigkeit und Leistung
verbessern, Funktionen erweitern und sichere
mobile Apps weltweit bereitstellen, all dies zeit-
und aufwandsparend. Bei der Aufnahme von
Geschwindigkeit, Euro und Cents in die Gleichung kann
es schneller und deutlich kostengünstiger sein, einen
Prototypen in der Cloud zu entwickeln, als Hardware
zu erwerben und im Rechenzentrum zu installieren.
Ein geeigneter Ort zum Start der Transformation
mit der Cloud ist die Notfallwiederherstellung und
Backup, um Daten und Apps vor Gerätefehlern oder
Naturkatastrophen zu schützen. Durch das Bereitstellen
einer Hybrid-Lösung für den Datenschutz können Sie
Daten in der halben Zeit in die Cloud kopieren und
Dateien innerhalb von Minuten wiederherstellen.
Automatisierter Datenschutz ermöglicht, dass
qualifizierte Techniker frei werden und an strategisch
wichtigeren Projekten arbeiten können. Und skalierbare
Speicherkapazität unterstützt künftige Projekte.
Zum Erfüllen wachsender Kundennachfrage kann die
Cloud Ihre Funktionen ohne größere Investitionen
erweitern. Ein bestimmtes Maß an Skalierbarkeit ist im
lokalen Rechenzentrum immer vorhanden, aber die
Funktionen sind zum Integrieren und Verwalten für
eine private Cloud häufig zu teuer und zeitaufwendig.
Da die Skalierbarkeit in der Public Cloud besser
ist, ermöglicht ein Hybrid Cloud-Ansatz einem
Unternehmen die Nutzung der von einer Public Cloud
bereitgestellten Computingressourcen, um schneller als
mit einem traditionellen Rechenzentrum zu reagieren.
20
Kapitel 3 | ABHEBEN: HYBRID CLOUD-LÖSUNGEN BIETEN DAS BESTE AUS BEIDEN WELTEN.
automatische Bereitstellung und Konfiguration
von Anwendungen auf Cloud-Servern aktivieren.
Viele Organisationen bestätigen den Bedarf
nach Automatisierung, sie finden jedoch nicht
die Zeit, um sie in ihren eigenen Rechenzentren
zu implementieren. Ein Hybrid Cloud-Ansatz
kann Automatisierungs-
und Überwachungstool
hinzufügen, um
Unternehmen beim
Implementieren besserer
Prozesse zu unterstützen
und um gleichzeitig
die anfänglichen
Implementierungsarbeiten
zu rechtfertigen.
Mit einer optimalen Hybrid Cloud-Lösung können Sie
dies schnell und problemlos in einem Rechenzentrum
mit vorab geladenen Middleware-Elementen ausführen.
Durch das Bereitstellen einer erstklassigen Hybrid
Cloud-Lösung kann Ihr Unternehmen die erforderliche
Flexibilität zum Implementieren neuer Funktionen
erreichen und gleichzeitig die lokalen Investitionen
effizienter nutzen. Die Unterbrechung der Umgebung
eines erfolgreichen Systems, das Ihr Unternehmen
über die Jahre aufgebaut hat, durch Verschieben oder
Umgestalten von Anwendungen kann unnötigen
finanziellen und Zeitaufwand bedeuten, wenn dieses
System durch das Hinzufügen neuer Funktionen in der
Cloud einfach erweitert werden kann.
Wenn Sie Unterstützung von einer Cloud Platform
erhalten, die diese flexible Hybrid-Infrastruktur bietet,
kann das Erstellen von Lösungen für Ihr Unternehmen
schnell, anpassungsfähig, kostengünstig und
nach Bedarf Workloads aus der privaten Cloud
in die Public Cloud (einschließlich Auslagern in
die Cloud) und zurück verschieben. Somit kann
ein Unternehmen jederzeit eine angemessene
Computing-Kapazität sicherstellen und bezahlt
nur dann für die zusätzliche Kapazität, wenn sie
genutzt wird.
• Skalierbarkeit. Ein
bestimmtes Maß
an Skalierbarkeit ist
im Rechenzentrum
immer vorhanden,
aber die Funktionen
sind zum Integrieren
und Verwalten für eine
private Cloud häufig zu
teuer und zeitaufwendig. Da die Skalierbarkeit
in der Public Cloud besser ist, ermöglicht ein
Hybrid Cloud-Ansatz einem Unternehmen
die Nutzung der von einer Public Cloud
bereitgestellten Computingressourcen, um
schneller als mit einer privaten Cloud oder einem
traditionellen Rechenzentrum zu reagieren.
Das bei den meisten Public Cloud-Anbietern
verbreitete nutzungsbasierte Modell bedeutet
auch, dass Sie nur für die Ressourcen bezahlen,
die Sie nutzen. Und es stellt sicher, dass der
Anbieter nicht Ihre Nutzung einer Zahlungsebene
einschränkt, sondern dass Sie echte On-Demand-
Skalierbarkeit erhalten.
• Automatisierung. Dies ist eine wichtige Funktion
in der Cloud, die Aufgaben wie Bereitstellung
und fortlaufende Wartung vereinfacht. Um
automatische Skalierungsfunktionen in einer
Cloud-Umgebung zu nutzen und das Auslagern
in die Cloud zu ermöglichen, müssen Sie die
Die Hybrid Cloud-Bereitstellung ist eine sichere Methode für den Einstieg in die Cloud bei effizienterer Nutzung der lokalen Investitionen.
21
Kapitel 3 | ABHEBEN: HYBRID CLOUD-LÖSUNGEN BIETEN DAS BESTE AUS BEIDEN WELTEN.
Anbieters von Cloud-Lösungen testet, desto
schneller erreichen Sie die richtige Kombination
von Diensten, die für ein optimales Kundenerlebnis
sorgt.
Erfolg implementieren Unterschätzen Sie nicht den Aufwand zum Integrieren
von Cloud-Diensten in die vorhandenen IT-Prozesse.
Der richtige Hybrid Cloud-Anbieter hilft mit
vorhandenen und neuen Automatisierungsfeatures,
um die traditionelle Kapazität, Leistung, Verfügbarkeit
und den Sicherheitsverwaltungsprozess auf Ihre Hybrid
Cloud-Dienste zu erweitern.
Die Entscheidung für einen Hybrid Cloud-Anbieter ist
schwieriger als ein reines Public oder Private
Cloud-Angebot. Bei einer Private oder Public Cloud
vergleichen Sie Funktionen auf Grundlage einer
Umgebung. Bei einer Hybrid Cloud müssen Sie jedoch
die in Ihrer Umgebung bereitgestellte Lösung und die
Elemente außerhalb der Umgebung betrachten. Prüfen
Sie sorgfältig. Die Transparenz zwischen internen und
externen Ressourcen erfordert nicht, dass Workloads
oder Leistung gespiegelt werden. Die Hybrid Cloud
sollte als Erweiterung Ihrer internen Ressourcen
angesehen werden. Allerdings sollten Sicherheit,
SLAs und Verwaltung dem Spiegeln Ihrer internen
Umgebung so nahe wie möglich kommen.
IT-Leiter müssen beachten, dass ein Anbieterwechsel zu
Herausforderungen beim Support führen kann. Obwohl
viele Hybrid Cloud-Anbieter mehrere Hypervisors und
Workloads unterstützen können, erhalten Sie nicht
immer die für jede Plattform angebotenen zusätzlichen
Features oder die beste Leistung, wenn Sie zwischen
Anbietern wechseln. Daher ist es wichtig, einen echten
problemlos ablaufen. Hier die damit verbundenen
Vorteile:
• Schnellere Markteinführung. Das Entwickeln neuer
Anwendung in der Cloud bedeutet, neue Dinge
schnell, mit geringem Risiko und geringen Kosten
zu testen. Ihr Team kann dem Unternehmen
durch das Entwickeln neuer Anwendungen in der
Cloud helfen, die Zeit bis zur Markteinführung
zu verkürzen. Dabei kann es tatsächlich schneller
sein, wenn die Bereitstellung auf einer Plattform
wie Microsoft Azure statt in der eigenen internen
Testumgebung erfolgt.
• Erhöhte Skalierbarkeit. Ein Unternehmen wird
nicht nur flexibler, sondern kann auch wechselnde
Workloads einfacher verarbeiten. Die Microsoft
Azure-Plattform stellt die Skalierung bereit. Sie
mindert die Unvorhersehbarkeit beim Start einer
neuen App oder Funktion, die sich als genau das
Ding herausstellt, auf das jeder gewartet hat und
nun anfordert. Wenn also gestern 10.000 Geräte
mit Ihrer App verbunden waren, können Sie
morgen schon zwei Millionen verarbeiten.
• Geringere Bereitstellungskosten und vereinfachte
Verwaltung. Die Umstellung eines Unternehmens
auf ein gehostetes Rechenzentrum kann
Jahre dauern und Millionen Euro kosten. Die
Erweiterung von zwei Rechenzentren auf vier mit
Microsoft Azure kostet ein Unternehmen vielleicht
einen Nachmittag und eine Bezahlung mit der
Kreditkarte.
• Größere Kundenzufriedenheit. Indem sie neue
Dienste schneller und kostengünstiger über eine
Hybrid Cloud-Infrastruktur bereitstellen, machen
Unternehmen ihre Kunden zufriedener. Je schneller
Ihr Unternehmen Änderungen vornehmen
kann und neue Dinge mit Unterstützung eines
22
Kapitel 3 | ABHEBEN: HYBRID CLOUD-LÖSUNGEN BIETEN DAS BESTE AUS BEIDEN WELTEN.
und Integratoren maßgeschneidert wurden. So nutzen
Sie die Vorteile der Internet as a Service-Konfiguration.
Ermöglichen Sie es Ihren Architekten, vorhandene
Ressourcen mit der Technologie zu ergänzen, die den
meisten Sinn ergibt, nicht mit der Technologie, die dem
Toolset des Anbieters angepasst ist. Die Beschränkung
auf einen einzelnen Anbieter muss kein Nachteil
sein, obwohl dies für das Erstellen von Plattform-
und Sprachenkonsistenzen für wiederholbare
Betriebsabläufe und Batchinstanzen spricht. Neben
Fragen zur Unterstützung gibt es Anreize für leichte
Bereitstellung in einer integrierten Middleware-Ebene
von einem einzelnen Anbieter-Ökosystem.
Allerdings möchten einige Geschäfte für ein
Produkt für Unternehmen von einem einzelnen
Anbieter von SLAs für Unternehmen profitieren.
Eine Unternehmenskonfiguration (wie die
vollständige Integration der Microsoft Azure-Cloud
in Windows Server 2012 R2 mit System Center)
kann zum Ergänzen einer OSS-Umgebung genutzt
werden, um die noch breitere Workload-Konsistenz
beim Wechsel von internen zu Hybrid Cloud-
Umgebung zu ermöglichen. Beispielsweise bietet die
Red Hat-Integration Azure-Kunden eine kombinierte
duale Anbieterunterstützung mit koordinierter
Problemeskalation, der die Kompetenz eines
vertrauenswürdigen Open Source-Distributors und
eine marktführende Cloud Platform kombiniert.
Den meisten Unternehmen ist es heute aber noch
wichtig, sowohl lokale Systeme als auch Cloud-Dienste
einsetzen zu können. Lokale Rechenzentren bieten
keine Skalierungsoptionen und Kosteneinsparungen
Hybrid Cloud-Anbieter zu finden, der nicht nur die
Workload-Migration unterstützt, sondern auch das
Automatisieren des Betriebselements des dualen
Computing-Szenarios – jemand muss den Betrieb
am Laufen halten. Viele Unternehmen erkennen
zu spät, dass ihr Cloud-Anbieter ihnen die Last der
betrieblichen Unterhaltung überlässt, als ob der
Wechsel weg von lokal nicht stattgefunden hat. Echte
Hybrid-Unterstützung muss Automatisierung und
erstklassige Architektur in der Architektur der Lösung
vereinen, damit der auf solchen Abstraktionsstufen zu
erwartende Vorteil geboten wird.
Azure, das zuerst nur als Windows-Plattform gedacht
war, umfasst nicht nur Unterstützung für das Portieren
mehrerer Technologien, sondern bietet auch
vollständige Unterstützung für Ihre virtuellen Linux-
Computer oder Docker-Container in internen und
externen Clouds. Dies bedeutet jedoch nicht, dass Sie
jetzt eine Patchwork-Übung mit all Ihren Anbietern
starten sollten. Beispielsweise wird die Verwendung
von Microsoft Hyper-V und die Erweiterung auf eine
anderer Hybrid-Cloud als Microsoft Azure unterstützt.
Dies ist jedoch keine Garantie dafür, dass Ihnen
Schwierigkeiten erspart bleiben oder dass Sie und
Ihr Team Versäumnisse des Anbieters feststellen. Der
einzige Unterschied besteht jetzt darin, dass ein Teil des
technischen Problems nicht mehr lokal vorhanden ist.
Wenn Sie Azure bereits in Betracht ziehen oder ein
Abonnement haben und starten möchten, folgen Sie
nicht der falschen Annahme, dass Sie auf Microsoft-
Entwicklungstools beschränkt. Es steht Ihnen frei, Ihre
Cloud-Investition mit verschiedenen Anwendungen
und Diensten zu erweitern, die dank des Azure
Marketplace-Katalogs mit Plug-and-Play-Middleware
23
Kapitel 3 | ABHEBEN: HYBRID CLOUD-LÖSUNGEN BIETEN DAS BESTE AUS BEIDEN WELTEN.
in dem Maße wie Public Clouds, Unternehmen
möchten jedoch über die Option verfügen, bestimmte
Daten hinter ihren Firewalls zu speichern. Ein Hybrid-
Modell bietet das Beste aus beiden Welten. Durch das
Bereitstellen eines Hybrid Cloud-Bereitstellungsmodells
können bereits getätigte IT-Investitionen weiter
genutzt werden. Für IT-Teams kann es eine
Herausforderung darstellen, die Zusammenarbeit und
das Zusammenführen von Public Cloud-Elementen und
der Infrastruktur zu bewerkstelligen. Die kontinuierliche
Weiterentwicklung von Cloud-Standards, Praktiken und
Tools sollte jedoch die Hybrid Cloud-Integration und
das Wachstum einfacher machen.
Die Begeisterung von Anbietern für die Vorteile der
„Hybrid Cloud“ ist eine tolle Nachricht für Open
Source-Geschäfte. Allerdings sorgt Begeisterung heute
nicht immer für Lösungen. Microsoft bietet eine reine
Lösung für Hybrid Cloud Computing.
Kapitel 4
DAS RAUMSCHIFF IN DER HÖHE
HALTEN:
AUTOMATISIERUNG UND FLEXIBILITÄT
BEIBEHALTEN.Eine optimale Automatisierung
sichert die Anpassung an wechselnde Workloads.
25
Kapitel 4 | DAS RAUMSCHIFF IN DER HÖHE HALTEN: AUTOMATISIERUNG UND FLEXIBILITÄT BEIBEHALTEN.
Schwellenwerts automatisiert ist. Das manuelle
Überwachen der Leistung und das Skalieren eines
Systems zur Anpassung an wechselnde Workloads
kann ein arbeitsintensiver Prozess sein. Und es ist
unter Umständen nicht sinnvoll, auf diese Weise
beim Skalieren zu arbeiten. Hier zeigt sich der Wert
der Skalierung des Schwellenwerts. Die Skalierung
des Schwellenwerts ermöglicht das Hinzufügen und
Entfernen von Kapazität in einer Cloud-Infrastruktur
nach Nutzungsbedarf/-volumen ohne menschliches
Eingreifen.
Die straffe Führung und Kontrolle eines Raumschiffs
ist einfacher, wenn Computer die vielen wichtigen
Systeme steuern können, die für die erforderlichen
Funktionen des Schiffs verantwortlich sind. Wenn
Sie der Kommandant eines Raumschiffs wären,
würden Sie auch mit der zuverlässigsten Mannschaft
zweifellos technologische Fortschritte begrüßen, die
die Belastung von Technikern und Teammitgliedern
reduziert.
Bei der Weiterentwicklung in eine Welt von
Infrastructure as Code wird es unabdingbar, dass die
Technologie, die komplexe, auf das Web ausgerichtete
Anwendungen unterstützt, für Hochverfügbarkeit,
Compliance und intelligente Skalierung des
26
Kapitel 4 | DAS RAUMSCHIFF IN DER HÖHE HALTEN: AUTOMATISIERUNG UND FLEXIBILITÄT BEIBEHALTEN.
der neuen Hardware das ursprüngliche System weiter
ausgeführt werden. Höchstwahrscheinlich gibt es
jedoch Unterbrechungen beim Verarbeiten der
Übergänge von der alten Umgebung zur neuen.
Im Gegensatz dazu ermöglicht die horizontale
Skalierbarkeit – bei der Sie das System mithilfe
zusätzlicher Ressourcen (z. B. mehr Server mit weniger
Prozessoren und weniger RAM) für das automatische
Interagieren bereitstellen und somit den Bedarf zu
einer bestimmten Zeit
erfüllen –, dass das System
unterbrechungsfrei
weiter ausgeführt wird,
während diese Ressourcen
bereitgestellt werden. Ein
weiterer Vorteil besteht
darin, dass Sie mithilfe der
horizontalen Skalierung
die Ausfallpunkte für
wichtige Anwendungen
erhöhen können, wodurch bei Ausfällen automatische
Failoverfunktionen bereitgestellt werden. Nicht minder
wichtig ist es außerdem, dass sich die horizontale
Skalierung in der Regel einfacher aktualisieren lässt,
kostengünstiger als die vertikale Skalierung ist und
unendliches Skalieren ermöglicht.
Wenn es Ihnen wie vielen Entwicklern geht, können
Sie nicht zu 100 % vorhersagen, wie die jeweilige
Last aussieht, da sie von sich häufig ändernden
Kundenanforderungen abhängt. Sie müssen jedoch
alle zukünftigen Zunahmen verwalten. Gleichzeitig
möchten Sie nicht zu viel für Computingressourcen
bezahlen, wenn Sie sie nicht benötigen. Beim Neustart
eines neuen Produkts oder Diensts könnten Sie mit der
Zunahme neuer Kunden einen schnelles Wachstum
Lastenzunahme und Unvorhersehbarkeit handhabenDie Fähigkeit zur bedarfsgesteuerten Skalierung ist
einer der größten Vorteile von Cloud Computing. Die
Fähigkeit einer Website, auf die massive Zunahme des
Datenverkehrs von Besuchern zu reagieren, hat schnell
einen hohen Stellenwert erreicht. Und obwohl die
vertikale Skalierung die einfache Lösung ist – einfach
RAM erweitern, einige Kerne hinzufügen, und sofort
erfolgt die Belohnung –,
ist das Problem bei diesem
Ansatz, dass er nicht
zukunftssicher ist. Diese
Lösung ist nur so gut wie
die Größe der Instanz und
der Platz für Wachstum.
Die bessere Alternative ist
es, Überlegungen und Zeit
in eine horizontal skalierte
Softwarearchitektur zu
investieren.
Von den beiden Arten der Skalierbarkeit ist die vertikale
Skalierbarkeit (d. h. aufwärts) die herkömmliche
und einfache Methode zur Erweiterung – durch
ein Upgrade der bereits genutzten Hardware (d. h.
Kauf eines robusteren und teureren Servers) oder
erneute Bereitstellung der Lösung mithilfe alternativer
Hardware mit höherer Kapazität und Leistung. Der
Nachteil ist, dass Sie am Ende einen Punkt erreichen,
an dem entweder die Kosten untragbar werden oder
Sie die verfügbare Hardwarekapazität ausschöpfen.
Zudem kann die Aufwärtsskalierung ein Prozess mit
Unterbrechungen sein, bei dem das System während
der erneuten Bereitstellung nicht verfügbar ist.
Mitunter kann beim Bereitstellen und Onlinestellen
Die Technologie, die komplexe, auf das Web ausgerichtete Anwendungen unterstützt, sollte für Hochverfügbarkeit, Compliance und intelligente Skalierung automatisiert sein.
27
Kapitel 4 | DAS RAUMSCHIFF IN DER HÖHE HALTEN: AUTOMATISIERUNG UND FLEXIBILITÄT BEIBEHALTEN.
Website das Festlegen von Instanzen für
die Prozesse. Gleichen Sie stattdessen Ihre
Spezifikationsentwurfslösungen an, die nicht
festlegen, welche Instanz welchen Teilprozess
ausführt.
• Unterschiedliche Unternehmens-Workloads
erfordern unterschiedliche Konfigurationen.
Für verschiedene Teile der Anwendung sind
möglicherweise eindeutige Skalierungsrichtlinien
erforderlich, wenn Hintergrundaufgaben
für separate Recheninstanzen ausgeführt
werden. Wenn z. B. vom System verschiedene
Servicelevel (wie Basic und Premium) angeboten
werden, müssen unter Umständen die
Computingressourcen für Premium-Dienstpakete
aggressiver horizontal skaliert werden als für Basic-
Dienstpakete, um verschiedene Level von SLAs zu
erfüllen.
• Legen Sie eine Obergrenze fest. Begrenzen Sie die
maximale Anzahl von Instanzen, die automatisch
in der Skalierungskonfiguration hinzugefügt
werden können. Damit soll übermäßiges Erstellen
verhindert und eine Obergrenze für mit der
möglichen Ausführung vieler tausend Instanzen
verbundene Kosten platziert werden.
• Richten Sie die Überwachung von Ereignissen
ein. Der Mechanismus für die Skalierung des
Schwellenwerts sollte den Skalierungsprozess
überwachen und die Details jedes
Skalierungsereignisses protokollieren (z. B. was
der Auslöser war, welche Ressourcen hinzufügt
oder entfernt wurden und wann). Mithilfe dieser
Informationen können Sie Nutzungsmuster
erkennen, die Effektivität Ihrer Strategie messen
und langfristig die Strategie den sich ändernden
Anforderungen der Anwendung anpassen.
erwarten. Im Laufe der Zeit kann diese Aktivität in eine
saisonale Last übergehen, gekennzeichnet durch Zyklen
hoher Last, gefolgt von niedrigerer Last (von einem
Monat zum nächsten oder von einem Wochenende
zum nächsten oder, wie im Fall von Netflix, vom Abend
zum Morgen). Für einige Aufgaben wie geplante
Aufträge oder Tagesberichte würde ein entsprechendes
Lastmuster angezeigt, in dem es zeitweise gar
keine Last gibt. In Anbetracht nicht planbarer oder
konkurrierender Szenarien kann die Skalierung des
Schwellenwerts die geschätzte Behandlung der
künftigen Last ermöglichen.
Überlegungen zur Implementierung der Skalierung des SchwellenwertsDie meisten cloudbasierten Plattformen stellen
integrierte Mechanismen zur Skalierung des
Schwellenwerts für gängige Szenarien bereit. Dabei
ist es wichtig anzumerken, dass die Skalierung des
Schwellenwerts keine Sofortlösung ist. Das einfache
Hinzufügen von Ressourcen zu einem System oder
das Ausführen von mehr Instanzen eines Prozesses
garantiert nicht, dass die Leistung des Systems
gesteigert wird. Das Erstellen von Infrastruktur mit
der Skalierung des Schwellenwerts erfordert eine
sorgfältige Bewertung und durchdachte Konfiguration
entsprechend den Anforderungen Ihres Diensts, um
Mehrwert zu schaffen.
Berücksichtigen Sie die folgenden Aspekte bei der
Implementierung einer Strategie zur Skalierung des
Schwellenwerts:
• Ihr System muss für horizontale Skalierbarkeit
ausgelegt sein. Vermeiden Sie beim horizontalen
Skalieren eines Cloud-Diensts oder einer
28
Kapitel 4 | DAS RAUMSCHIFF IN DER HÖHE HALTEN: AUTOMATISIERUNG UND FLEXIBILITÄT BEIBEHALTEN.
starten und anhalten könnten, indem sie nur eine
Skalierungsaktion in einem Zeitraum von fünf Minuten
(oder länger) gestatten. Sie können diesen Zeitraum
ausweiten, wenn Sie sehen, dass das System weiterhin
überreagiert.
Durch das Konfigurieren der zweiten Methode, der
zeitbasierten Skalierung des Schwellenwerts, wird
sichergestellt, dass zusätzliche Instanzen bei einer
erwarteten Nutzungsspitze verfügbar sind und
nach Ablauf der Spitzenzeit skaliert werden. Dank
dieser Strategie werden bereits genügend Instanzen
ausgeführt, ohne dass auf die Reaktion des Systems auf
die Last gewartet werden muss.
Die Skalierung des Schwellenwerts kann für Ihre
Organisation sehr wertvoll sein, indem ein hohes
Niveau an Verfügbarkeit und Ressourcenoptimierung
erreicht wird. Wenn Sie startbereit sind, bietet
Microsoft Azure zahlreiche Ressourcen für Entwickler,
damit Sie entscheiden können, ob die Skalierung des
Schwellenwerts zusätzlich zu mehreren Ansätzen für
die Konfiguration der Skalierung des Schwellenwerts
für Sie funktionieren kann. Durchdachte Konfiguration
und sorgfältige Implementierung sind wesentlich,
wenn Sie sich dazu entscheiden, die Skalierung des
Schwellenwerts für Ihre Infrastruktur zu verwenden.
Skalierung des Schwellenwerts in Microsoft Azure als LösungMithilfe der Skalierung des Schwellenwerts
in Azure können Sie die Dienste nach einfach
festzulegenden Regeln dynamisch skalieren.
Mit dieser Funktion können Instanzen von
Azure Web Apps-Features und virtuellen Azure-
Computern automatisch hinzufügt und entfernt
werden. Sie können im Azure-Verwaltungsportal
schnell allgemeine Skalierungsrichtlinien konfigurieren
oder für die nächste Stufe der Kontrolle mithilfe
der Azure Monitoring Services Management
Library detailliertere Regeln für die Skalierung
des Schwellenwerts konfigurieren.
Es gibt zwei Ansätze zum Konfigurieren automatischer
Skalierungsregeln in Azure: 1) metrikenbasiert und
2) zeitbasiert.
Konfigurieren Sie beim metrikenbasierten Ansatz
die Skalierung des Schwellenwerts nach den
Laufzeitmetriken wie durchschnittliche CPU-
Auslastung z. B. über die letzte Stunde oder Backlog
von Elementen in einer Nachrichtenwarteschlange,
die die Lösung bearbeitet. Sie konfigurieren die
Parameter, überwachen die Leistung des Systems
und passen bei Bedarf die Skalierungsmethode des
Systems an. Beachten Sie jedoch, dass die Skalierung
des Schwellenwerts kein unmittelbarer Prozess
ist. Die Reaktion darauf, dass eine Metrik wie die
durchschnittliche CPU-Auslastung eine angegebene
Stufe überschreitet oder darunter fällt, dauert eine
gewisse Zeit. Ein Vorteil von Azure ist, dass das
Festlegen fein abgestimmter Grenzwerte verhindert
wird, die Instanzen unter Umständen zu häufig
Kapitel 5
EXPANSION NACH AUSSEN:
STEIGERUNG VON GESCHWINDIGKEIT
UND FLEXIBILITÄT MIT MICROSERVICES.
Betreiben Sie Unternehmensanwendungen, und
erhöhen Sie die Flexibilität und Elastizität nach Bedarf mit einer
Microservices-Architektur.
30
Kapitel 5 | EXPANSION NACH AUSSEN: STEIGERUNG VON GESCHWINDIGKEIT UND FLEXIBILITÄT MIT MICROSERVICES.
ermöglicht. Sie möchten eine Plattform, die sich um
die gesamte superharte Raketenwissenschaft im
Hintergrund kümmert. Dann können Sie und Ihr Team
sich darauf konzentrieren, was Sie am besten können:
Anwendungen mit einem hohen Maß an Anpassung
und Skalierbarkeit erstellen.
Stellen Sie sich vor, Sie sind in einem Raumschiff mit
der innovativsten Technologie des 23. Jahrhunderts.
Ihr imaginäres Raumschiff ist beeindruckend,
nicht zuletzt deshalb, weil Verbesserungen bei der
Warp-Energietechnik und der wissenschaftlichen
Instrumentierung integriert sind. Ihr Raumschiff als
eines der technologisch ausgereiftesten seiner Zeit ist
auch als eines der mächtigsten bekannt und kann einen
Planeten innerhalb weniger Stunden leblos machen.
Das ist eine hohe Feuerkraft.
In Ihrem realen Universum möchten Sie ein Raumschiff
mit hoher Kontrolle wie dieses, das grundlegende,
kampferprobte Technologie für die Kerninfrastruktur
bereitstellt und geschäftskritische Cloud-Dienste
31
Kapitel 5 | EXPANSION NACH AUSSEN: STEIGERUNG VON GESCHWINDIGKEIT UND FLEXIBILITÄT MIT MICROSERVICES.
der gesamte Monolith neu erstellt und bereitgestellt
werden muss.
Im Internet aktive Unternehmen, die für die exzellente
Verarbeitung von Websites mit hohen Volumina
und Geschwindigkeiten bekannt sind, haben sich
für einen mehr modularen und lose gekoppelten
Ansatz auf Grundlage einer
Microservices-Architektur
entschieden, die die
Anwendung effektiv in
kleinere funktionale Einheiten
aufteilt. Das Ergebnis ist
ein differenzierter und
eigenständiger, zustandsloser
Microservice als ideale
Ergänzung für die Cloud.
Ideal deswegen, weil Sie dank
der Containerisierung Dienste
mit minimaler Auswirkung
auf andere Funktionen einfach aktualisieren,
hinzufügen, ersetzen oder aus der App entfernen
können. Und Docker-Container sind ein perfektes
Mittel für diesen Prozess. Warum? Weil sie effektive
Pakete, Portabilität über mehrere Umgebungen
hinweg, eine hohe Anwendungsdichte für vorhandene
Ressourcen und ein erfolgreiches Ökosystem im Docker
Hub bieten.
Eine e-Commerce-Anwendung könnte z. B. mehrere
Docker-Container für Suche, Caching, Messaging und
Daten-Back-Ends einbeziehen, diese in horizontal
skalierende Cluster gruppieren und die Anwendung
funktional in Container aufteilen. Container sind auf
dem Servicelevel strukturiert: einer zum Abrufen von
Produktinformationen aus dem Katalog, ein anderer zur
Kontrolle des Bestands und ein anderer zum Abschicken
Abwenden vom MonolithenDie Cloud hat durch die mögliche bedarfsgesteuerte
Skalierung die Art und Weise verändert, wie ein
Unternehmen Dienste bereitstellt. Um von einem der
größten Vorteile von Cloud Computing zu profitieren,
wurden Entwickler motiviert, das Anwendungsdesign
neu zu betrachten und dabei
herkömmliche komplexe
Unternehmensanwendungen
durch einen Microservices-
Ansatz zu ersetzen.
Dies bedeutet das
Entwickeln einer einzelnen
Anwendung als eine
Suite kleiner, autonomer
und skalierbarer Dienste,
die benutzerfreundliche
APIs für eine bestimmte
Unternehmensfunktion
bereitstellen. Containertechnologie wie Docker
bietet diese Möglichkeit und löst das Versprechen
der neuen Cloud-Technologie ein, die Abstraktion
auf Prozessebene (im Gegensatz zu herkömmlichen
virtuellen Computern) und die Flexibilität
bereitzustellen, die Organisationen von IT erwarten.
Sie sind wahrscheinlich mit dem gängigen
Entwurfsmuster einer Branchenanwendung vertraut:
ein Webserver, auf dem der Benutzeroberflächencode
ausgeführt wird, eine monolithische Anwendung
für die gesamte Geschäftslogik und Dienste sowie
eine einzelne Datenbank für alle persistenten
Speicheranforderungen. Wenn Sie diese Architektur
erkennen, sind Ihnen wahrscheinlich auch ihre
Nachteile bewusst: Insbesondere ist es so, dass bei
einer Änderung eines kleinen Teils der Anwendung
Der Aufstieg von Docker, die zunehmende Verbreitung von Entwicklertools von Drittanbietern und die wachsende Abhängigkeit von der Cloud tragen zur steigenden Beliebtheit von Microservices bei.
32
Kapitel 5 | EXPANSION NACH AUSSEN: STEIGERUNG VON GESCHWINDIGKEIT UND FLEXIBILITÄT MIT MICROSERVICES.
Redis für Auftragswarteschlangen. MySQL für
Kundenregistrierungen. All dies kann in derselben
Anwendung erfolgen.
In den meisten Fällen verwenden Entwickler
Container jedoch nur für die zustandslosen Teile der
Anwendung, während zustandsbehaftete Dienste
wie z. B. Datenbanken außerhalb des normalen
Anwendungslebenszyklus verwaltet werden. Dieser
Ansatz schränkt letztlich die
Vorteile aus dem vollen Einsatz
containerbasierter Microservices
für die gesamte Anwendung
ein. Im Zeitalter verteilter Teams
und gebietsschemaspezifischer
Dienste bietet die
Containerisierung einer ganzen
Anwendung überzeugende
Vorteile wie eine kürzere Zeit bis zur Einführung in neue
Märkte oder reduzierte Migrationsausfallzeiten. Docker
beschleunigt z. B. die Rechenzentrumsmigrationen für
Ihre Organisation beträchtlich. Mit Docker können Sie
eine gesamte containerisierte Anwendung problemlos
zwischen Rechenzentren verschieben – hier zahlen sich
der Hybrid-Charakter und die Portabilität der Cloud
aus. Da traditionell das Verschieben umfangreicher
Datensätze über große Entfernungen eine bedeutende
Herausforderung war, ist die Möglichkeit, diese
Aufgabe ohne Neugestaltung der Anwendung als Teil
der Migration auszuführen, eine große Erleichterung für
Entwicklungsteams.
Bereitstellung nach Ihren AnforderungenWenn in Ihrem Unternehmen Container in
der Anwendungsarchitektur genutzt werden,
eines Versandauftrags an einen Drittanbieterdienst.
Jeder dieser Container kann in einer Docker-
Datei wie als Code beschrieben werden – und in
mehreren Umgebungen repliziert werden. Natürlich
beschleunigt dies nicht nur das Testen und Bereitstellen
geklonter Instanzen, sondern bietet Teams durch die
Verbindung mit den Funktionen der Skalierung des
Schwellenwerts auch ein Sicherheitsnetz. Bei einer
plötzlichen Zunahme der Last
können mehr zustandslose
Webserver hinzugefügt werden.
Oder wenn ein vorhandener
zustandsloser Dienst ausfällt,
kann er durch einen anderen
ersetzt werden. Die Vorteile
bei optimaler Umsetzung
sind höhere Flexibilität und
Ausfallsicherheit.
Natürlich sind mit dieser Lösung einige
Herausforderungen verbunden. Heute sind die
containerbasierten Architekturen für Web- und mobile
Apps in der Regel zustandslos. Für viele Systeme ist
jedoch der Zustand, also Persistenz oder Speicher,
einfach unvermeidbar. Jedes System, das Daten
speichert – dazu gehören nicht nur Datenbanken,
sondern auch Benutzerkonten, Einkaufswagen
und Auftragswarteschlangen –, muss den Zustand
verwalten. Daher nehmen zustandsbehaftete
Tools für das Anwendungsdesign zu und werden
weiterentwickelt. MongoDB, RabbitMQ, Redis, Apache
Cassandra, MySQL… – die Anzahl und Vielfalt von
Datendiensten, die Entwickler heute für verschiedene
Teile der Anwendung in einer Microservices-Architektur
verwenden können, wird immer größer. Elasticsearch
für Millionen zu analysierende Protokollmeldungen.
Die Cloud Platform von Azure bietet eine breite Unterstützung für Docker und das Docker-Ökosystem.
33
Kapitel 5 | EXPANSION NACH AUSSEN: STEIGERUNG VON GESCHWINDIGKEIT UND FLEXIBILITÄT MIT MICROSERVICES.
Management Suite bereitgestellte Verwaltung
und Überwachung). Mit dem (in der privaten
Vorschau verfügbaren) zusätzlichen Azure
Container Service werden die umfassenden
Containerisierungsmöglichkeiten aktiviert.
Auf diese Weise ermöglicht Microsoft
Entwicklern und Unternehmen die Konzentration
auf die Bereitstellung einer hervorragenden
Benutzerfreundlichkeit von Anwendungen,
wobei Azure die Inhalte effizienzsteigernder
Container ausführt.
In früheren Zeiten fehlte Entwicklern die Grundlage
für den Umgang mit all den gängigen Aspekten
beim Entwickeln, Ausführen und Verwalten von
Diensten nach Bedarf. Heute existiert eine Plattform,
die die verfügbaren Infrastrukturressourcen
und Anforderungen von Anwendungen wirklich
versteht. Egal, ob bei der Bereitstellung von
Application Lifecycle Management-Funktionen, wo
Entwickler Anwendungen bei zunehmender Nutzung
nicht neu gestalten müssen, bei der Lösung von
schwierigen Problemen mit verteilten Systemen wie
der Zustandsverwaltung oder beim Bereitstellen der
Vorteile von Koordinierung und Automatisierung
für Microservices mit einer neuen Ebene von App-
Erkennung und Überwachung – dank der Azure-Cloud
können Sie und Ihr Entwicklungsteam sich wieder
auf de Entwicklung der wesentlichen Funktionen
konzentrieren.
können Sie diese Anwendungsfunktion zerlegen,
horizontal skalieren (für zustandslose Dienste)
und Ihre Anwendung einfach in mehreren
Umgebungen portieren. Dies führt zu einem
vergrößerten Container-Fußabdruck, daneben
aber auch zum Bedarf entsprechender Tools
und Prozessen zur Verwaltung. Dies sind Cloud-
Dienste-Verwaltungstools, die man alle unter
einem Anbieter erwartet.
Die aktuellen kommerziellen Cloud Platforms
bieten Entwicklern nutzungsbasierten Zugriff
auf Rechenleistung und Speicher zusammen mit
einfachem Zugriff auf eine Suite aus gängigen
Anwendungsdiensten wie relationale und
NoSQL-Datenbanken, In-Memory-Cache und
Leistungsanalysen. Cloud-Dienste erleichtern
die Nutzung von automatisierten Entwicklungs-,
Test-, Staging- und Produktionsumgebungen
und bieten so die Grundlage für kontinuierliche
Bereitstellungen. Aber nicht alle kommerziellen
Cloud-Lösungen funktionieren bei der
Verwaltung von Anwendungen gleich, die in
verschiedenen Sprachen, Umgebungen und Open
Source-Tools erstellt wurden.
Die Cloud Platform von Azure bietet
beispielsweise eine breite Unterstützung für
Docker und das Docker-Ökosystem. Dies beginnt
mit der Docker-Erweiterung für virtuelle Linux-
Computer (die auch mit Tools wie Machine,
Compose und Swarm funktioniert) und
umfasst spezialisierte Linux-Distributionen (für
Container wie CoreOS durch die Operations
Alle Straßen führen zurück zum RaumschiffDas Erstellen einer dem Unternehmen angemessenen Entwicklerumgebung ähnelt in Vielen dem Kommandieren
eines Raumschiffs. Ihr Erfolg und der Erfolg Ihrer Mannschaft hängt davon ab, wie Sie sich auf die Cloud von morgen
vorbereiten.
• Ist Ihre Cloud Platform auf die Steigerung von Produktivität und Innovation vorbereitet?
• Unterstützt sie die von Ihrem Team verwendeten Open Source-Technologien?
• Ermöglicht sie Ihrem Unternehmen, die lokalen Investitionen weiter zu nutzen?
Microsoft ist der Überzeugung, dass Sie bei der Einführung von Cloud Computing keine Kompromisse bei
Benutzerfreundlichkeit, Funktionalität, Hybrid Cloud-Bereitstellung oder Portabilität eingehen müssen. Azure ist
auf Offenheit mit der Stärke von Überwachung und Support auf Unternehmensebene ausgelegt und direkt in
branchenübliche Open Source-Lösungen integriert, von denen einige durch Open Source-Anwender seit Jahrzehnten
verwendet werden.
Mit Microsoft Azure nutzen Sie alle Vorteile der Cloud zu Ihren Bedingungen, ohne Beeinträchtigung Ihres Teams und
ohne Zugeständnisse bei der Funktionalität.
Testen Sie Azure noch heute kostenlos.
https://azure.microsoft.com/trial/free-trial-open-source/
Weitere Informationen zu Open Source-Lösungen in Azure.
https://azure.microsoft.com/overview/choose-azure-opensource/
Einstieg in AzureArchitekten und Entwickler aus allen Bereichen und Technologien können cloudbasierte Anwendungen auf der
Microsoft Azure-Plattform bereitstellen. Erleben Sie in diesem Azure OSS-Webinar, wie ein echtes Projekt Gestalt
annimmt.
https://info.microsoft.com/harness-the-power-of-open-source.html?ls=E-Book