HPE investiert in Container

    Heutzutage widmen viele Technologieunternehmen der Containertechnologie große Aufmerksamkeit. Unter ihnen - Google, IBM, Microsoft und natürlich HPE. Mit Containern können Sie viel mehr Anwendungen auf einen physischen Server packen, als es virtuelle Maschinen zulassen. Containertechnologien sind nicht neu, viele kennen sie beispielsweise von Parallels, aber sie spielen eine immer wichtigere Rolle in Rechenzentren und Clouds. Sie werden besprochen. Ein bisschen nicht die Container, über die wir reden, aber wir müssen Aufmerksamkeit erregen :)

    Bild


    Wie viele Unternehmen in der Hightech-Welt ist Hewlett Packard Enterprise eine Risikokapitalgesellschaft. Ein aktuelles Beispiel ist die Investition in einen Entwickler von Scality-Software für die Speicherung definierter Objekte. Ein weiteres Beispiel für eine Investition in fortschrittliche Technologie ist die Unterstützung des Startups Mesosphere, dem Entwickler des sogenannten DC / OS.

    Was ist DC / OS und wofür ist es gut?


    Das DC / OS-Betriebssystem (Data Center Operating System), früher als DCOS bekannt, ist kürzlich zu Open Source gewechselt. Das in San Francisco ansässige Softwareunternehmen Mesosphere hat beschlossen, den Quellcode für seinen Kern zu öffnen.

    Mesosphere hat vor einigen Jahren eine kommerzielle Version von DCOS entwickelt. DC / OS basiert auf dem Apache Mesos-Kern und vereinfacht das heterogene Workload-Management auf Plattformen wie Hadoop, Spark, Kafka und Docker. Bisher wurde Mesosphere DC / OS zu einem Verbundprojekt von mehr als 50 Unternehmen, darunter Autodesk, Canonical, Cisco, Citrix, EMC, HPE, Joyent, Microsoft, NetApp und Verizon.

    Container und Microservices haben im Zusammenhang mit der Entwicklung und Bereitstellung verteilter Anwendungen an Popularität gewonnen. Wie sich herausstellte, bietet die Containerisierung eine Reihe von Vorteilen. Anwendungen in Containern werden native Cloud-Anwendungen genannt.

    Was nützt DC / OS in dieser Hinsicht? Container können zwar eine gute Skalierbarkeit erzielen, haben jedoch den Nachteil, dass eine enge Integration in vorhandene Anwendungen wie Datenbanken, Data Warehouses und Big-Data-Plattformen schwierig ist. DC / OS ist nur dafür ausgelegt, verschiedene Arten von Anwendungen in einer Umgebung zu verwalten. Es schließt die Lücke zwischen traditionellen Geschäftsanwendungen und modernen Cloud-Anwendungen und bietet Orchestrierung.

    In DC / OS können Sie beispielsweise mit horizontal skalierbaren Webanwendungen in Containern arbeiten, die mit Apache Hadoop- oder Cassandra-Clustern interagieren, mit Marathon Containeranwendungen orchestrieren und mit Chronos langfristige Aufgaben planen. In einer solchen einheitlichen Umgebung können neben den herkömmlichen auch skalierbare Containeranwendungen ausgeführt werden. Dies ist das Hauptmerkmal von DC / OS.

    Obwohl Docker traditionell zum Erstellen und Bereitstellen von Containern verwendet wird, ist eine zusätzliche Ebene erforderlich, um Containeranwendungen zu orchestrieren. Übergeordnete Container-Management-Lösungen sind Docker Swarm und Kubernetes. Die Docker Swarm-Software wird von Docker entwickelt und gewartet. Kubernetes ist das Ergebnis der Übersetzung einer Teilmenge des Google-Tools zur Verwaltung von Rechenzentren namens Borg in Open Source. Interessanterweise kann DC / OS sowohl Docker Swarm- als auch Kubernetes-Umgebungen verwalten.

    Das DC / OS-Betriebssystem deckt alle Server im Rechenzentrum oder in der Cloud ab und implementiert eine leistungsstarke Ebene der Ressourcenabstraktion. Der zugrunde liegende Apache Mesos DC / OS-Kern für verteilte Systeme enthält einen Scheduler, der einen Ressourcenpool erstellt, diese automatisch verteilt und Aufgaben gemäß Anforderungen und Richtlinien plant.

    In der Tat arbeitet das Rechenzentrum als ein großer Computer. Die Mesosphärentechnologie kann als eine Art Gehirn angesehen werden, das automatisch Ressourcen und Daten für Anwendungen verteilt.



    DC / OS bietet flexible Bereitstellungsfunktionen für Anwendungen, Dienste und Big Data-Infrastrukturen, die Ressourcen gemeinsam nutzen. In einer solchen skalierbaren Umgebung können Sie verschiedene Anwendungen und Ladevorgänge ausführen - von PaaS über Big Data-Anwendungen bis hin zu DBMS. Unterstützt von DC / OS in jeder modernen Linux-Umgebung, in einer privaten und öffentlichen Cloud, in virtuellen Maschinen, auf der x86-Hardware, um eine effiziente Ressourcennutzung sicherzustellen.

    Branchenunterstützung


    Im vergangenen Jahr wurde ein Konsortium der Cloud Native Computing Foundation (CNCF) gegründet, um native Cloud-Anwendungen unter der Leitung von Google zu bewerben. Zu den Mitgliedern zählen Joyent, CoreOS, IBM, VMWare, Cisco, Weaveworks usw. Die Linux Foundation verwaltet das CNCF-Konsortium. Mesosphere ist einer der Gründer dieses Konsortiums.

    Mesosphere hat kein separates DC / OS-Konsortium erstellt, unterstützt jedoch die Community der Entwickler der entsprechenden Software. Wenn das CNCF-Konsortium enger mit Kubernetes verbunden ist, ist die Entwicklung und Förderung von DC / OS die Agenda der Community, die von Mesosphere und Microsoft geleitet wird. Experten glauben, dass DC / OS im Laufe der Zeit eine echte Alternative zu Kubernetes werden kann.

    HPE und Microsoft sind die Hauptinvestoren von Mesosphere. Ihre Investition betrug 73,5 Millionen US-Dollar, wobei Hewlett Packard Enterprise die Führung übernahm. Die DC / OS-Technologie wird in den Hybrid-Clouds von Microsoft eine wichtige Rolle spielen und kann in die zukünftige private Cloud-Plattform von Microsoft Azure Stack integriert werden. Mit dem Azure Container Service in der öffentlichen Cloud und DC / OS in der privaten Cloud kann Microsoft Unternehmenskunden Hybrid-Hybrid-Funktionen anbieten. In Rechenzentren von Unternehmen können auch andere Technologien, z. B. HDInsight in Windows Server, DC / OS-Funktionen verwenden.

    Die Entwicklungen in der Mesosphäre spiegeln sich im Microsoft Azure Container Service (ACS) wider. Azure Container Service beschleunigt die Softwareentwicklung erheblich. Microsoft hat seinen Container-Orchestrierungsdienst zeitgleich mit der Ankündigung von Mesosphere DC / OS zur Verfügung gestellt. ACS ist ein CaaS-Dienst (Container-as-a-Service), der mit der Google Container Engine und dem Amazon EC2-Containerdienst konkurriert. Weder Amazon noch Microsoft sind jedoch Mitglieder der Cloud Native Computing Foundation. Amazon CaaS verwendet einen proprietären Orchestrierungsmechanismus, und der Azure Container Service unterstützt Docker Swarm und DC / OS. Kubernetes benutzen sie nicht.

    Verizon verwendet Mesosphere DC / OS, um seine Rechenzentren zu verwalten, während Apple, Twitter und Airbnb diese Technologie verwenden, um mit großen Datenmengen zu arbeiten. Zum Beispiel hat Apple es in seinem virtuellen Siri-Assistenten verwendet.   

    Zweifellos spielt DC / OS eine wichtige Rolle bei der Verwaltung von Cloud-Rechenzentren in Unternehmen. Dies erklärt die HPE-Investition. Unternehmenskunden, die an Produkten wie HP Helion und Microsoft Azure Stack beteiligt sind, sollten auf das Cloud-Modell umsteigen und gleichzeitig weiterhin in das Rechenzentrum investieren können.

    Durch die Bereitstellung von Apache Spark, Kafka, Cassandra und Zeppelin unter DC / OS erhalten Sie eine optimierte Umgebung für die Datenverarbeitung in großem Maßstab, deren Ressourcen gleichzeitig für andere Workloads verfügbar sind, z. B. für Webserver oder Java-Anwendungen.

    DC / OS auf HPE ProLiant- und Cloudline-Servern


    Was ist der Vorteil der Bereitstellung von DC / OS auf HPE ProLiant- und Cloudline-Servern? Es gibt viele Vorteile:

    Skalierbarkeit, Flexibilität und Automatisierung. Mit dem DC / OS-Scheduler können Sie einen verteilten Lastpool (DC / OS-Dienste) erstellen. Die Aufgaben der Bereitstellung, Skalierung und Verwaltung von Diensten werden auf einfache Befehle reduziert, und Sicherheit und Geschäftskontinuität werden erheblich vereinfacht. HPE ProLiant Server verfügen über eine flexible Architektur und ein erweiterbares E / A-Subsystem, sodass sie sich gut für diese Umgebung eignen. Die HPE Cloudline-Familie von hyper-skalierbaren Servern wurde speziell für Anbieter entwickelt. Sie bieten schnelle Bereitstellung, betriebliche Flexibilität und niedrige Gesamtbetriebskosten.

    Schnellere Ergebnisse durch neue Dienste.Mit DC / OS können Unternehmen auf einfache Weise Services bereitstellen und skalieren (darüber hinaus können mehrere Teams daran teilnehmen), Integrationstools wie Jenkins verwenden, Objekt-Repositorys und Tools zur Codesteuerung verwenden.

    Flexibles Infrastrukturmanagement.ProLiant Server unterstützen Verwaltungstools und Software-Updates wie HPE OneView und Smart Update sowie die integrierte Remote-Verwaltung und -Überwachung mit HPE iLO. Cloudline-Server sind für offene Verwaltungstools und Standardschnittstellen konzipiert und fügen sich problemlos in eine heterogene Umgebung mit Plattformen verschiedener Hersteller ein. HPE ist einer der Begründer der offenen Redfish-Spezifikation für softwaredefinierte Rechenzentren. Dieser Standard basiert weitgehend auf der Implementierung der RESTful-API für HPE iLO. Die Redfish-API kann mit HPE ProLiant- und Cloudline-Servern verwendet werden.

    Anwendungen zwischen verschiedenen Umgebungen verschieben, integrieren und bereitstellen.HPE hält sich an offene Standards, API- und Open Source-Architekturen, einschließlich Cloud Foundry, DC / OS und OpenStack. Unabhängig davon, ob es sich um eine private, öffentliche oder hybride Cloud-Umgebung handelt, steht ein umfassendes System aus Hardware, Software und Diensten zur Verfügung.

    Schnelle Analyse heterogener Daten. DC / OS unterstützt Dienste wie Kafka, Spark und Cassandra, die häufig im Internet der Dinge und in der Big-Data-Analyse verwendet werden. Auf diese Weise erhalten Unternehmen eine einfache und vollständige Lösung für Big-Data-Anwendungen.

    Beispiel: Container-Orchestrierung



    In diesem Beispiel haben wir ProLiant DL380 Gen 9-Server für die Container-Orchestrierung mit der folgenden Konfiguration verwendet:



    Die logische DS / OS-Architektur mit Marathon sieht folgendermaßen aus:



    Marathon ist der Ressourcenplaner im Cluster. Es bietet hochskalierbare Anwendungen und Dienste in einer DC / OS-Umgebung. Marathon läuft auf DC / OS, das über einen eigenen Scheduler zum Starten / Stoppen von Aufgaben oder Anwendungsdiensten verfügt. In diesem Fall führt Marathon die Funktionen eines höheren Niveaus aus - es führt Überwachung und Orchestrierung durch.

    DC / OS wird mit Marathon Failover Service für Anwendungen mit langer Lebensdauer geliefert. In diesem Beispiel wird es verwendet, um Container zu orchestrieren - Container-Orchestrierung. Der Marathon-lb-Dienst bietet einen Lastenausgleich für Marathon-Anwendungen. Es beginnt so:

    $ dcos package install –yes marathon-lb

    Jetzt können Sie die DC / OS-Clusterumgebung mit marathon-lb im DC / OS Public Agent verwenden. Für den Lastenausgleich konfigurierte Marathon-Anwendungen sehen die entsprechenden Adressen und Ports. Die Marathon-Benutzeroberfläche sieht folgendermaßen aus:



    DC / OS unterstützt sowohl native Linux-Container als auch Docker-Container. Die Marathon-Anwendungsspezifikationssprache ist dieselbe.

    Das folgende Python-Beispiel zeigt, wie Sie eine Marathon-Webserver-Anwendung in einem nativen Linux-Container konfigurieren. Diese App dient dem Corporate Cafeteria-Menü des Load Balancer VIP. Der Marathon Load Balancer wird verwendet. Wie unten gezeigt, ist die Marathon-Anwendungsdefinition eine einfache simple.json-Datei.



    Die Anwendung kann über die Marathon-Benutzeroberfläche oder über den DC / OS-CLI-Befehl gestartet werden:

    $ dcos marathon app add 0c-python-corpmenu-lb.json


    So sieht die Benutzeroberfläche von Container Orchestration Marathon mit der Webmenü-App aus. Die Corporate Menu-Anwendungsdefinition enthält Anweisungen zum Verbinden dieser Anwendung mit dem Load Balancer und gibt an, welcher TCP-Port für den Webdienst geöffnet ist.

    Jetzt testen wir die Anwendung, die über den angegebenen Service-Port (10001) auf den Load Balancer VIP zugreift. Verwenden Sie zum Ausführen des Lastenausgleichs den öffentlichen DC / OS-Agenten unter 10.250.40.138. Der Marathon-Lastenausgleich zeigt die folgende Benutzeroberfläche der Webmenü-Anwendung Container Orchestration an:



    Jetzt können Sie die Anwendung auf 1000 Instanzen skalieren. Marathon führt sie aus, verfolgt sie und zeigt den Status in der Benutzeroberfläche an. Instanzen werden auf alle verfügbaren DC / OS-Agenten verteilt. Die Belastung des DC / OS-Clusters steigt:



    Testen Sie nun die Java-Anwendung mit Docker. Erstellen Sie nach dem Start von 1000 Instanzen im Corporate Web Menu die zweite Marathon-Anwendung. Es wird ein Docker-Image verwendet, das die Java-Laufzeitumgebung installiert. Diese Anwendung startet Apache FTP Server. Die Definition einer Marathon-Anwendung für eine Java-Anwendung in einem Docker-Container sieht folgendermaßen aus:



    Führen Sie die Anwendung mit dem DC / OS-CLI-Befehl aus:

    $ dcos marathon app add 10b-apacheftp-java-docker.json

    Nachdem wir eine Instanz der Java-Anwendung für Docker gestartet haben, gelangen wir zur Marathon-Benutzeroberfläche:


    Skalieren Sie diese auf 250 Instanzen:



    Im Gegensatz zum Beispiel mit dem Webserver wird der Load Balancer für diese Anwendung nicht verwendet. In diesem Fall wird Mesos-DNS als Teil von DC / OS als Dienstermittlungstool verwendet. Die Marathon-Benutzeroberfläche wird verwendet, um den IP-Port zu bestimmen. Für eine Instanz einer Java-Anwendung zeigt die Marathon-Benutzeroberfläche die folgenden Informationen an:



    Jetzt verwenden wir einen FTP-Client, um eine von 250 Instanzen einer Java-Anwendung zu testen:



    Container Orchestration: Ergebnisse


    In diesem Beispiel wurde daher eine große Anzahl von Anwendungsinstanzen in einem DC / OS-Cluster mit zwei verschiedenen Containertechnologien gestartet. Dies geschieht in Minuten und die Skalierung von Anwendungen ist eine Frage von Sekunden.



    Darüber hinaus wird eine hohe Auslastung des DC / OS-Clusters erreicht und der ROI verbessert.





    Container Zukunft - Heute


    Also, um es zusammenzufassen. Das Datacenter Operating System (DC / OS) ist eine Open-Source-Plattform für die Ausführung von Anwendungen der Enterprise-Klasse, die auf dem Apache Mesos-Kern basieren. Durch die Verwendung von DC / OS durch Unternehmenskunden und Cloud-Anbieter mit Servern der HPE ProLiant- und Cloudline-Serie können Sie eine hyper-skalierbare Umgebung mit Open Source-Software erstellen. Unternehmen haben die Flexibilität, verteilte Anwendungen auf zuverlässigen HPE-Systemen bereitzustellen. DC / OS hilft bei der Bewältigung der wachsenden Komplexität der abstrahierten (virtualisierten, containerisierten usw.) IT-Infrastruktur und kann alle Arten von Ressourcen im Rechenzentrum orchestrieren, einschließlich physischer und virtueller Server.

    Container werden auf derselben Ebene wie physische Server ausgeführt. Der Mangel an virtualisierter Hardware und die Verwendung von realer Hardware und Treibern sorgen für eine unerreichte Leistung. Jeder Container kann auf die Ressourcen des gesamten physischen Servers skaliert werden.

    Die Virtualisierungstechnologie auf Betriebssystemebene ermöglicht es Ihnen, die höchste Dichte unter den verfügbaren Virtualisierungslösungen zu erzielen. Es ist möglich, Hunderte von Containern auf einem physischen Standardserver zu erstellen und auszuführen. Container verwenden ein einzelnes Betriebssystem, was ihre Unterstützung und Aktualisierung vereinfacht. Anwendungen können auch in einer separaten Umgebung bereitgestellt werden.

    Container werden heute oft als Alternative zur Virtualisierung gesehen. Bei der Hardware-Virtualisierung ist die Basisschicht der Hypervisor. Es wird auf dem Server geladen und stellt die Interaktion zwischen seiner Hardware und den virtuellen Maschinen bereit. Um Ressourcen für virtuelle Maschinen bereitzustellen, werden diese auf dem Server virtualisiert. Auf virtuellen Maschinen wird eine eigene Kopie des Betriebssystems und der Anwendungen auf virtualisierter Hardware ausgeführt.

    VMs erfordern erhebliche Systemressourcen. Jede virtuelle Maschine enthält nicht nur eine Kopie des Betriebssystems, sondern eine virtuelle Kopie der gesamten erforderlichen Hardware. Und das erfordert CPU- und RAM-Ressourcen. Ein Container zum Ausführen einer bestimmten Anwendung ist für das Betriebssystem ausreichend und unterstützt Programme und Bibliotheken. In der Praxis bedeutet dies, dass der Server zwei- bis dreimal mehr Anwendungen unterstützen kann als bei einer VM. Verwenden Sie bereits Container in Ihrem Rechenzentrum?

    Jetzt auch beliebt: