Archives

cloud-native apps

Attention SISO Partners Attending Partner Exchange @ VMworld 2017 US…

Wondering how you can leverage emerging technologies for future growth? Don&#rsquo;t miss VMware & Pivotal&#rsquo;s session with guest speakers from Cognizant & Worldwide Technologies. Paul Fazzone, GM, Cloud-Native Apps, VMware and Nick Cayou, VP, Global Alliance, Pivotal will present how VMware and Pivotal&#rsquo;s partnership is building and taking to market state of the art cloud native solutions such as Developer-Ready Infrastructure. Space is limited. Click here to add this session [PAR4411PU] to your Partner Exchange schedule.

The post Attention SISO Partners Attending Partner Exchange @ VMworld 2017 US… appeared first on Partner News.

Read more..

Kubernetes und Docker: Automatisierung als Schlüsselprinzip für agile Softwareentwicklung

Beitrag von Thomas Wirtz, Pre-sales Director Germany

CIOs stehen heute vor großen Herausforderungen: Einerseits sollen sie Kosten einsparen, andererseits aber auch immer mehr Services auf unterschiedlichen IT-Plattformen bereitstellen und betreuen. Nur mit automatisierten Abläufen wird es möglich, diese Herausforderung zu meistern – denn die IT-Umgebungen insbesondere großer Unternehmen wachsen beständig und die manuelle Verwaltung nimmt zu viel Zeit in Anspruch und verursacht gleichzeitig zu hohe Kosten. An dieser Stelle spielen immer häufiger Cluster Manager, wie beispielsweise Kubernetes, eine wichtige Rolle. Oftmals als Datacenter oder Cloud Betriebssystem bezeichnet, vereinheitlichen sie heterogene Infrastrukturen, darunter selbstverständlich auch Public Clouds. Doch davor steht die Entwicklung von neuer Software, die dann für unterschiedliche Betriebssysteme und in Abhängigkeit von Datenbanken und Systemen getestet werden muss. Container-Technologie und Docker vereinfachen Entwicklern diese Schritte enorm.

Wie arbeiten Entwickler?

Entwickler nutzen in erster Linie Docker-Umgebungen, um Software als Container zu starten und später zu verteilen. Dabei können Anwendungen und komplexe Stacks schnell und trotz unterschiedlicher Betriebssysteme ausgeführt werden, da Docker eine Abstraktionsebene über das Betriebssystem und den darunterliegenden Host legt. So wird es möglich, dass Entwickler beispielsweise eine Linux-Datenbank auf einem Mac- oder Windows-Rechner ausführen können. Konkret bedeutet das, dass ein Entwickler Source Code schreibt und diesen mithilfe einer Beschreibung („Dockerfile&#rsquo;) in ein Docker-Image packt und zentral ablegt („Docker Registry&#rsquo;). Anschließend wird lediglich der Name der Anwendung weitergegeben. Andere Entwickler können dann über Docker das Programm auf ihren jeweiligen Rechnern ausführen – unabhängig vom Betriebssystem. Ein weiterer Vorteil ist, dass alle Abhängigkeiten und die Zielumgebung in dem Docker-Image beschrieben sind, sodass im Betrieb ein vollständiges Paket vorhanden ist und nicht alle einzelnen Abhängigkeiten zusammengestellt werden müssen.

Die Anwendungsentwicklung findet typischerweise zunächst lokal statt – anschließend wird der neue Code getestet und ausgerollt. Aus Gründen der Ausfallsicherheit wird in der Produktion natürlich nicht nur ein Docker-Host, sondern gleich mehrere betrieben – und natürlich werden zeitgleich unüberschaubar viele Docker-Images verschickt und ausgeführt. Um all diese Hosts und Images zu verwalten, benötigen Unternehmen einen Container Cluster Manager. Aktuell gibt es drei prominente Cluster Manager mit flexiblen Deployments (eigenes RZ und/ oder Public Cloud): Docker Swarm, Kubernetes und Mesos. Bei VMware setzen wir aktuell vor allem auf Kubernetes, da hier von unserer Community aus die größte Nachfrage herrscht.

Was hat Vereinssport mit Kubernetes zu tun?

Ein Cluster Manager simuliert einen Verbund aus mehreren Docker-Hosts und sorgt für die richtige Verteilung der Aufgaben (beispielsweise Docker Images). Zu den wichtigsten Aufgaben des Container Cluster Managers gehören neben intelligenter Orchestrierung auch Scheduling (Zuweisen von Ressourcen, beispielsweise von Docker Images zu Cluster Nodes respektive Docker Hosts) und Skalierung (bei einem Ausfall eines Docker-Hosts wird ein neuer automatisch gestartet, bei steigender Last müssen automatisch neue Hosts gestartet werden). Das bedeutet, dass der Cluster Manager sich um die alltäglichen Betriebsaufgaben kümmert, die aktuell noch oftmals manuell von IT-Administratoren übernommen werden. Er gleicht einem Trainer, der seine Spieler anweist, koordiniert und auf Fehler hinweist. An dieser Stelle tut sich ein weiterer Knackpunkt auf: Einerseits schafft der Cluster Manager erstmal eine neue Rolle, da es sich um ein sehr komplexes System handelt, um das sich jemand kümmern muss. Andererseits jedoch fallen durch die Automatisierung auch Routineaufgaben und klassische Administratorenrollen weg.

Eine kleine Kubernetes-Geschichte

Die Blaupause von Kubernetes, genannt Borg, wurde ursprünglich von Google entwickelt. In vielen Fällen hat Google die Probleme, mit denen Unternehmen heute zu kämpfen haben, bereits vor Jahren gelöst. Google experimentierte bereits vor mehr als 10 Jahren mit Container-Technologien, da das Unternehmen damals vor der großen Herausforderung stand, dass Anwendungen für mehrere Millionen Server ausgerollt und effizient betrieben werden mussten – eine manuelle Herangehensweise hätte die Kapazitäten von Google deutlich überstiegen. 2015 veröffentlichte Google schließlich ein Paper, in dem Borg der Öffentlichkeit vorgestellt wurde.

Ein sehr gutes Beispiel für den erfolgreichen Einsatz von Automatisierung und Standardisierung mittels eines Cluster Managers ist Facebook: Dank dieses Ansatzes ist ein einzelner Administrator für die Betreuung von rund 20.000 Servern zuständig. Ein weiteres aktuelles Problem, vor dem CIOs stehen, ist die Auslastung der Server in ihrem Rechenzentrum. Netflix zählte beispielsweise zu den Early Adoptern von AWS. Doch schon bald stellte sich heraus, dass die virtuellen Maschinen lediglich zu 20 Prozent ausgelastet waren – je nach Umgebungsgröße ist das ein enormer Kostenfaktor! Durch einen Cluster Manager kann die Auslastung erhöht werden, sodass Server typischerweise einen Auslastungsgrad von 80 bis 90 Prozent erreichen und somit direkt Kosten gespart werden können.

Lutz Andre Barroso von Google hat die moderne Vorgehensweise kompakt zusammengefasst: &#rsquo;We must treat the datacenter itself as one massive warehouse-scale computer.&#rsquo; Und ganz genau darum geht es letztendlich: Das Rechenzentrum nicht als mehrere Tausend Server zu sehen, sondern als eine Einheit, die sich mittels Automatisierung und der richtigen Tools sehr viel einfacher verwalten lässt.

Sie haben Fragen zu agiler Softwareentwicklung und Cloud-native Apps? Auf Twitter können Sie gerne direkt mit mir in Kontakt treten und meine News rund um #CrossCloud verfolgen!

Read more..

Cloud-native Apps im Kontext: Sehr viel mehr als „nur“ Softwareentwicklung

Beitrag von Thomas Wirtz, Pre-sales Director Germany

Seit ein paar Jahren lässt sich beobachten, dass sich die globalen Machtverhältnisse der Unternehmen verschieben. Was das genau bedeutet? Plötzlich reden alle nur noch über Netflix, Uber und Airbnb – Unternehmen, die ganze Branchen auf den Kopf stellen und zu harten Konkurrenten der traditionellen Anbieter werden. Heute sind die größten Unternehmen IT-Organisationen, die die Potentiale von Software erkannt haben und gezielt einsetzen. Wie ist es möglich, dass Unternehmen, die keine Assets haben, innerhalb kürzester Zeit zu Giganten heranwachsen? Die Schlüssel zum nachhaltigen Erfolg heißen: Software und Skalierbarkeit. Noch vor 30 Jahren mussten Unternehmen erst in teure Rechenzentren investieren, bevor sie ihre Kapazitäten erweitern konnten. Heute können Cloud-Ressourcen für 3 Cent pro Stunde gebucht werden – die Basis für große Geschäftsmodelle ist gelegt! Die ‚Economy of Speed&#lsquo; hat die ‚Economy of Scale&#lsquo; abgelöst.

Die große Frage: Wie wird IT im Unternehmen wahrgenommen?

Leider hat der größte Teil der Unternehmen diesen Trend verschlafen – oder ihn auch zunächst absichtlich ignoriert. Erst jetzt, da sich zeigt, dass ihre Marktpräsenz massiv bedroht wird, versuchen sie durch die Adaption der Technologien zu reagieren. Doch es ist schwierig, mit den neuen Konkurrenten mitzuhalten, deren Prozesse so viel schneller ablaufen und agilere Geschäftsmodelle haben. Sie sehen IT nicht als notwendigen Kostenfaktor, der nur den Betrieb gewährleistet, sondern als Partner oder Enabler, der den strategischen Fokus verändern und vorantreiben kann. Wie also reagieren die traditionellen Unternehmen? Sie versuchen, sich Expertenwissen ins Haus zu holen – allerdings bedeutet Cloud-native Apps sehr viel mehr als nur eine bestimmte Entwicklungsart und die Nutzung von Microservices. Vielmehr stellt sich die Frage: Wie müssen die Prozesse und Strukturen angepasst werden, damit Unternehmen agiler werden?

DevOps revolutioniert Prozesse und die kulturelle Zusammenarbeit zwischen den IT-Teams

Bevor der Cloud-native Trend die Softwareentwicklung revolutioniert hat, herrschte das sogenannte Wasserfall-Modell vor, das eine klare Trennung von Entwicklungsteams und Betriebsteams vorsah. Geschäftsprozess-, Infrastruktur-, Entwicklungsteams arbeiteten isoliert voneinander an großen Programmen und Codes. Aufgrund der Komplexität des Programms benötigten Unternehmen auch ein komplexes Organisationsmodell. Die Trennung von Entwicklung und Betrieb führte jedoch dazu, dass Betriebsteam oftmals Probleme, die beim Einsatz der Anwendungen auftraten, nicht nachverfolgen konnten – zudem waren die Release-Zyklen sehr lang. Durch die Verbindung von Development und Operations zu DevOps werden die Teams neu aufgeteilt, sodass die Entwickler bestimmter Anwendungen für den vollständigen Service (Entwicklung, Optimierung, Qualitätssicherung, Betrieb) zuständig sind und so Probleme schneller nachvollziehen können. Durch die kleinen Teams, die sich jeweils nur mit einem vergleichsweise kleinen Code beschäftigen, werden auch Kommunikationsprobleme behoben.

Die Entwicklung ist jedoch nur ein erster Schritt, der Rollout ein ganz anderer. Für die Koordination benötigen Unternehmen eine entsprechende Plattform oder Schnittstelle: hier kommt die sogenannte CI/CD (Continuous Integration, Continuous Delivery)-Pipeline ins Spiel. Zwischen der Entwicklung und dem finalen Rollout befinden sich Automationsstrecken, bei denen die kleinen Einheiten auf die Integration mit anderen Services getestet werden. Funktioniert alles einwandfrei, findet schließlich der Rollout statt. Dass die jeweilige Infrastruktur dabei auch über Schnittstellen und Fähigkeiten zum vollautomatisierten „software-defined&#rsquo; Deployment verfügen muss, ist ein weiterer entscheidender Faktor.

Container-Technologie reduziert Komplexität

Ein Software-Code muss immer in Abhängigkeit von anderen Systemen und Bibliotheken entwickelt werden. Das bedeutet: Entwickelt man Code, muss man sicherstellen, dass die entsprechenden Bibliotheken auch auf dem neuen System laufen, sprich man benötigt Java, Webserver oder Linux-Maschinen. Die Abhängigkeiten von anderen Systemen summieren sich sehr schnell, sodass eine komplexe Matrix entsteht. Mithilfe von Docker bzw. Containern wird eine Standardisierung erreicht. Die Entwickler bestimmen bereits beim Design der Services, was genau sie benötigen (Java, Python, Apache etc.) – entsprechend wird der Container dann auch gebaut, sodass alle Abhängigkeiten innerhalb des Containers vorhanden sind. Der Betreiber hingegen sieht nur das standardisierte Format, das sich leicht ausrollen lässt.

Es zeigt sich also, dass es bei Cloud-native Apps um sehr viel mehr als „nur&#rsquo; um Entwicklung geht – Strukturen werden umgewälzt, die Organisation vereinfacht und die IT wird anders wahrgenommen. DevOps und Container-Technologien sind nur der Anfang, die veränderte Prozesse bewirken. Letztendlich handelt es sich um einen Wandel, der nicht nur das IT-Team betrifft, sondern sich auf das ganze Unternehmen ausweiten soll.

Sie möchten mehr zum Thema Cloud-native Apps erfahren? Auf Twitter halte ich Sie auf dem Laufenden! Ich freue mich auch über Kommentare! Über welches Gebiet bei Cloud-native Apps möchten Sie mehr erfahren? Haben Sie bereits Erfahrungen in Ihrem Unternehmen gesammelt?

Read more..

Demonstrating Highly-Available, Stateful Apps on Docker

Another great DockerCon event is complete, and we enjoyed showing off the latest VMware solutions for containers and cloud native applications. One question that we fielded from a number of attendees was around how to run stateful applications with Docker swarm mode, vSphere, and persistent storage. If you are also struggling with this question and

The post Demonstrating Highly-Available, Stateful Apps on Docker appeared first on Virtual Blocks.

Read more..

Part 2: Storage Policy Based Management for Containers Orchestrated by Kubernetes

This blog is written by Balu Dontu and Tushar Thole from Cloud Native Applications Storage team See Part 1 of the blog:Deploying WordPress-MySQL Application with Persistent Storage Create deploymentwith Persistent Volume Claim Create a MySql deployment Create a MySql deployment using this resource file: [crayon-58f516cd7e415539323450/]   Key parts here are: Resource defines a Deployment usingmysqlDocker

The post Part 2: Storage Policy Based Management for Containers Orchestrated by Kubernetes appeared first on Virtual Blocks.

Read more..

Part 1: Storage Policy Based Management for Containers Orchestrated by Kubernetes

This blog is written by Balu Dontu and Tushar Thole from Cloud Native Applications Storage team In a previous blog, we learnt how stateful containers orchestrated by Kubernetes can leverage storage exposed by vSphere (vSAN, VMFS, NFS) by using standard Kubernetes volume, persistent volume and dynamic provisioning primitives. Once you start enjoying the convenience of

The post Part 1: Storage Policy Based Management for Containers Orchestrated by Kubernetes appeared first on Virtual Blocks.

Read more..

vSphere Docker Volume Service is now Docker Certified!

We are happy to announcethat VMware has joinedDocker Certification ProgramandvSphere Docker Volume Service (vDVS) plugin is nowavailable on Docker Store! VMware’s inclusion into the program indicates that vSphere Docker Volume Servicehas been tested and verified by Docker, confirming to customers that the vSphere Docker Volume plugin hasbeen evaluated for security and issupported and built according

The post vSphere Docker Volume Service is now Docker Certified! appeared first on Virtual Blocks.

Read more..

vSphere Docker Volume Service is now Docker Certified!

We are happy to announcethat VMware has joinedDocker Certification ProgramandvSphere Docker Volume Service (vDVS) plugin is nowavailable on Docker Store! VMware’s inclusion into the program indicates that vSphere Docker Volume Servicehas been tested and verified by Docker, confirming to customers that the vSphere Docker Volume plugin hasbeen evaluated for security and issupported and built according

The post vSphere Docker Volume Service is now Docker Certified! appeared first on Virtual Blocks.

Read more..

Cloud-native Apps: Was versteckt sich hinter dem Hype?

Beitrag von Thomas Wirtz, Pre-sales Director Germany

Cloud-native Apps sind in aller Munde: Sie sollen dafür sorgen, dass Unternehmen sehr viel schneller auf aktuelle Entwicklungen reagieren können und somit wettbewerbsfähig bleiben. Agilität, die schnellere Bereitstellung von Services, Skalierbarkeit – das sind Schlagwörter, die mit Cloud-native Apps automatisch verbunden werden. Und doch ist noch in vielen Unternehmen unklar, wo wirklich der Vorteil liegt, wie die Abläufe beim Programmieren vereinfacht werden und was die ganze Thematik mit der Transformation des Geschäftsmodells zu tun hat. Denn die Erklärungsansätze sind oftmals recht technologisch. In diesem Beitrag möchte ich gerne auch den nicht-IT-affinen Lesern einen ersten Einblick geben, da hier viel Potential schlummert, das deutsche Unternehmen für sich nutzen können.

Monolithen-Systeme verhindern schnelle Innovationszyklen

Mit der Einführung von Cloud-native Apps wenden sich Unternehmen vom traditionellen Monolithen-System ab. Unter Monolithen versteht man Systeme oder Komponenten, die über die Jahre hinweg gewachsen sind und heute teilweise mehr als eine Million Zeilen Source Code umfassen. Möchte ein Programmierer auch nur eine kleine Änderung vornehmen, muss er die gesamte Software erst aus dem internen Source-Verwaltungssystem auf seinen eigenen Rechner ziehen, dort bearbeiten und anschließend wieder komplett zurück in die Versionsverwaltung verschieben. Diesen Prozess bezeichnet man als Versionierung. Möchte ein Programmierer einen Monolithen bearbeiten, steht er mehreren Herausforderungen gegenüber: Der Prozess dauert aufgrund der Dateigröße lange und der IT-Profi muss sich erst wieder in den Code einarbeiten, da er über die Jahre hinweg sehr komplex geworden ist.

Cloud-native Apps folgen den Prinzipien von Microservices

Bei Microservices handelt es sich hingegen um kleinere Softwarekomponenten, die schneller zu überblicken und zu bearbeiten sind. Cloud-native Apps bedienen sich oft dieses Konzepts, ergänzt um Eigenschaften, die Cloud-Plattformen typischerweise voraussetzen: Elastizität, Entkopplung und Abstraktion, Isolation, intelligentes Fehlerverhalten/Reaktionen auf Fehler.

Aber aufgepasst: Arbeiten Programmierer nun mit überschaubaren Codes statt mit Monolithen, muss beständig geprüft werden, ob die einzelnen Codes noch miteinander kompatibel sind. Deshalb werden sie regelmäßig automatischen Unit- und Integrationstests unterzogen, sobald der Programmierer seine Arbeit am Source Code abgeschlossen hat. Diese Tests können auf Basis einer Cloud stattfinden, müssen aber nicht. Bei Monolithen, die nur einmal im Jahr aktualisiert werden, kann auch mehrere Wochen abgewartet werden, bis die entsprechende Infrastruktur bereitsteht. Soll jedoch regelmäßig und schnell ein neuer Code ausgerollt werden, muss die entsprechende Infrastruktur automatisiert und kurzfristig zur Verfügung stehen. Abstraktion dient dafür, wie so oft in der Softwareentwicklung, als Grundlage – beispielsweise über eine Private oder Public Cloud.

Und wie sieht das nun konkret aus?

Die Einsatzmöglichkeiten und -varianten von Cloud-native Apps sind sehr vielfältig. Ein Beispiel wäre die Homepage eines E-Commerce Unternehmens. Die Homepage, die wie aus einem Guss aussieht, besteht aus vielen Microservices: Warenkorb, Impressum, Log-In Formular, Hilfeseite, Suchfunktion etc. Hinter jedem Service steht ein eigenes Team, das beständig an der Weiterentwicklung arbeitet. So kann die Website stetig weiterentwickelt und auf die Bedürfnisse der Kunden abgestimmt werden.

In meinen kommenden Blogposts werde ich mich intensiv mit der Funktionsweise und den Vorteilen von Cloud-native Apps auseinandersetzen und innovative Ideen aus diesem Bereich vorstellen. Folgen Sie mir gerne auch auf Twitter, um über alle Entwicklungen auf dem Laufenden zu bleiben!

Übrigens: Wenn Sie mehr über Cloud-native Apps erfahren möchten, besuchen Sie die VMware vInnovation Roadshow am 6- April 2017 in Hamburg! Wir freuen uns auf Sie!

Read more..

Go Que Newsroom Categories

Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 53 bytes) in /home/content/36/8658336/html/goquecom/wp-includes/wp-db.php on line 1889