In Zeiten der Digitalisierung ist es für die Sicherstellung der Geschäftskontinuität wichtig, dass sich die IT-Verantwortlichen innerhalb der Unternehmen vermehrt digitalen Technologieplattformen zuwenden. Fündig werden Sie oftmals auf Cloud Marketplaces, die heutigen „Online-Schaufenster“ für Softwarelösungen. Hier wartet ein umfangreiches Anbot an Cloud-Lösungen für Daten & Analyse, Geschäftsanwendungen oder Sicherheit auf sie. Die größten Cloud Marketplaces werden von Amazon Web Services, Microsoft Azure und Google Cloud Platform betrieben.
Doch was genau sind Cloud Marketplaces überhaupt? In unserem Blogbeitrag „Was sind Cloud Marketplaces?“ haben wir diese Frage geklärt und das Thema Marketplaces genauer beleuchtet.
Der zweite Teil der Blogreihe zum Thema Cloud Marketplaces widmet sich dem Thema: Image Erstellung auf Cloud Marketplaces. Ein Image ist eine einzelne Datei mit einer vollständigen Kopie der Struktur und des Inhalts des Dateisystems eines Datenträgers. Software-Distributionen, wie z. B. Betriebssystem-Distributionen oder Datenträger mit vorinstallierten Produkten, können über Images verteilt werden.
Je nach Cloud-Anbieter gibt es verschiedene Möglichkeiten, ein Image zu entwickeln. Das Amazon Machine Image (AMI) beispielsweise ist ein von Amazon Web Services (AWS) unterstütztes und gepflegtes Image, das die für den Start einer Instanz erforderlichen Informationen enthält. Das AMI muss beim Starten einer Instanz auf AWS angegeben werden und kann auf dem Cloud-Marktplatz eingestellt werden. (Quelle)
Ähnlich wie AMIs bietet Azure Images als virtuelle Festplatten (VHD) für die Konfiguration virtueller Maschinen. (Quelle) Unabhängig davon, ob es sich bei den Images um Kopien einer kompletten virtuellen Maschine (einschließlich aller Datenfestplatten) oder nur um die Betriebssystemfestplatte handelt, werden diese Images auf dem globalen Cloud-Marktplatz verwendet. Ein Image kann verwendet werden, um eine Instanz unendlich oft zu erzeugen, solange es auf dem Cloud-Service-Marktplatz existiert.
Cloud-Anbieter haben ihre eigenen Methoden zur Erstellung von Images, die in der Regel über ein Dashboard erfolgen, nachdem man sich bei einer bestimmten Cloud (z. B. AWS, Azure, Google Cloud usw.) authentifiziert hat. Die Abbildungen unten zeigen den Prozess der Erstellung eines Images aus einer bestehenden Instanz auf AWS. Diese Methode der Image-Erstellung ist wahrscheinlich die einfachste, da sie es Ihnen ermöglicht, eine Instanz eines bestehenden Images zu erstellen, dann zusätzliche Software zu installieren und anschließend Ihr eigenes benutzerdefiniertes Image daraus zu generieren.
Die Methode auf Azure ist der vorherigen ziemlich ähnlich. Sie müssen nur die Anweisungen befolgen.
Die meisten Unternehmen möchten, dass ihr Produkt auf einer Vielzahl von globalen Cloud-Marktplätzen angeboten wird. Daher kann es eine Herausforderung sein, ein Image in jeder Cloud manuell mit der oben beschriebenen Methode zu erstellen. Benutzerdefinierte Bilder können auch mit Software von Drittanbietern erstellt werden, sogar für mehrere Cloud-Marktplätze gleichzeitig. Eine solche Software ist Packer von Hashicorp; ein kostenloses und quelloffenes Tool zur Erstellung identischer Maschinen-Images für mehrere Plattformen aus einer einzigen Quellkonfiguration oder einer Vorlage. (Quelle)
Die Packer-Dokumentation enthält alle Informationen, die für die Erstellung benutzerdefinierter Images für jeden verfügbaren Cloud-Marktplatz erforderlich sind. Das folgende Beispiel zeigt eine Vorlage für die gleichzeitige Erstellung von Images auf AWS und Azure.
Jede Packer-Konfigurationsdatei hat das Format „hcl.pkr" (z. B. file.pkr.hcl) und enthält zwei obligatorische Blöcke: Quell- und Build-Blöcke. Gemäß der Packer-Dokumentation enthalten die Quellblöcke die Konfiguration für Builder-Plugins. Sobald die Quellen definiert sind, können sie verwendet und durch den „build"-Block weiter konfiguriert werden. (Quelle) Vereinfacht gesagt, enthält der Quellblock alle Informationen, die für die Erstellung eines Abbilds auf einem bestimmten Cloud-Anbieter erforderlich sind, einschließlich Authentifizierung, Region, Betriebssystem und Instanztyp sowie andere obligatorische oder optionale Parameter. Build-Blöcke enthalten die Konfiguration für eine bestimmte Kombination von Buildern, Provisionern und Postprozessoren, die zur Erstellung eines bestimmten Image-Artefakts verwendet werden. (Quelle) Das bedeutet, dass der Build-Block alles spezifiziert, was im Image enthalten sein wird, sowohl die ursprüngliche als auch die zusätzliche Software.
In der Beispielabbildung unten gibt es zwei Quellblöcke, die zwei verschiedene Cloud-Anbieter repräsentieren: AWS und Azure.
Der Build-Block wird benötigt, sobald der/die Quellblock(s) deklariert wurde(n). Die Build-Blöcke im folgenden Beispiel enthalten zwei bereits erstellte Quellen sowie das Kopieren und Ausführen eines einfachen Shell-Skripts.
Sobald diese drei Blöcke konfiguriert sind, wird der Befehl „packer build file.pkr.hcl" verwendet, um das endgültige Cloud Marketplace-Image zu erstellen. Dieser Ansatz zur Erstellung von Cloud-Service-Marktplatz-Images ist äußerst effektiv, da er sie automatisch und ohne großen manuellen Aufwand erzeugt.
Wenn ein Image für alle gewünschten Clouds fertig ist, muss ein manuelles Angebot auf diesen Cloud-Marktplätzen erstellt werden. Sobald dieser Prozess abgeschlossen ist, wird der Dienst auf dem globalen Cloud-Marktplatz öffentlich verfügbar.
Sie möchten noch mehr zum Thema Cloud erfahren? Dann besuchen Sie gerne unsere entsprechende Blog-Kategorie.
Auch wir bei der Libelle IT Group setzen auf die Vorteile der Cloud und stellen Ihnen verschiedene Lösungen zur Verfügung. Nutzen Sie jetzt die Cloud-Editions von Libelle DataMasking (AWS / Microsoft Azure), Libelle SystemCopy (AWS / Microsoft Azure) oder Libelle CloudShadow (IBM Cloud).