Definition: Open-Source Management von IaaS-Ressourcen Was ist Apache CloudStack?
Apache CloudStack ist eine Open-Source-Software und -Plattform, mit der sich IaaS-Ressourcen in privaten, öffentlichen und hybriden Cloud-Umgebungen bereitstellen lassen. Sie Software wird von Service-Providern und großen Unternehmen genutzt und unterstützt die gängigsten Hypervisoren.
Anbieter zum Thema

Apache CloudStack ist der Name einer Open-Source-Software und -Plattform. Ursprünglich wurde die Software von Cloud.com entwickelt. 2011 übernahm Citrix Cloud.com und spendete die Software 2012 der Apache Software Foundation (ASF). Apache CloudStack steht mittlerweile unter Apache-2.0-Lizenz und ist ein Top-Level-Projekt der ASF.
:quality(80)/images.vogel.de/vogelonline/bdb/1265900/1265978/original.jpg)
Definition: OpenStack - vom Softwareprojekt zum Cloud-OS
Was ist OpenStack?
Mit Apache CloudStack lassen sich IaaS-Ressourcen in privaten, öffentlichen und hybriden Cloud-Umgebungen bereitstellen, verwalten und betreiben. Auf Basis vernetzter virtueller Maschinen managt Apache CloudStack die Netzwerk-, Storage- und Compute-Knoten mit ihren Ressourcen. Die Plattform ist in großem Umfang skalierbar, bietet Hochverfügbarkeit und eignet sich für die Realisierung rechenzentrumsübergreifender IaaS-Lösungen. Zahlreiche Service Provider und große Unternehmen weltweit nutzen die Software.
Apache CloudStack stellt eine Alternative zu OpenStack dar. Die gängigen Hypervisoren und Virtualisierungsplattformen wie Citrix XenServer, Xen Cloud Platform (XCP), KVM, VMware vSphere, Microsoft Hyper-V und Oracle VM Server werden unterstützt. Die mit Apache CloudStack realisierten IaaS-Lösungen können sich aus verschiedenen Hypervisoren und Virtualisierungsplattformen zusammensetzen. Neben der eigenen API bietet Apache CloudStack Unterstützung für die Amazon Web Services API (AWS API). Apache CloudStack ist überwiegend in Java geschrieben. Die aktuelle LTS-Version ist Apache CloudStack 4.16.1.0 (Stand April 2022).
Architektur und Funktionsumfang des Apache CloudStacks
Eine Installation des Apache CloudStacks besteht aus dem CloudStack Management Server und den zu managenden Ressourcen. In der minimalen Konfiguration genügt eine einzige Maschine. Große mit Apache CloudStack realisierte IaaS-Lösungen erstrecken sich über mehrere Rechenzentrumsstandorte und umfassen zahlreiche Management Server in einer hochverfügbaren Multi-Node-Installation sowie tausende über Netzwerke verbundene Hosts mit IaaS-Ressourcen.
:quality(80)/images.vogel.de/vogelonline/bdb/1765700/1765712/original.jpg)
Definition: Open-Source-Software zur Verarbeitung von Datenströmen
Was ist Apache Kafka?
Der Management Server erfüllt Orchestrierungsaufgaben und sorgt für die Zuordnung der virtuellen Maschinen zu den Hosts. Er weist den VM-Instanzen zum Beispiel IP-Adressen, VLANs oder Storage zu. Die Konfiguration speichert der Management Server in einer MySQL-Datenbank. Weitere Aufgaben des Management Servers sind die Bereitstellung der Benutzerinterfaces für die Administratoren und Anwender sowie die Bereitstellung der APIs. Ausfälle einzelner Management Server oder Wartungsarbeiten an den Management Servern haben keine Auswirkungen auf den Betrieb der virtuellen Maschinen und die Bereitstellung der gemanagten Ressourcen. Für die Verwaltung der Ressourcen einer Cloud-Infrastruktur definiert Apache CloudStack folgende Organisationseinheiten:
- Region,
- Zone,
- Pod,
- Cluster,
- Host.
Eine Region ist die größte Organisationseinheit einer Cloud-Stack-Installation und besteht aus einer oder mehreren geografisch benachbarten Zonen. Eine Zone setzt sich aus ein oder mehreren Pods und einem Secondary Storage zusammen. Typischerweise entspricht eine Zone einem Rechenzentrum. Es können aber auch mehrere Zonen innerhalb eines Rechenzentrums eingerichtet sein. Als Pod werden ein oder mehrere Racks mit Layer-2-Switch und ein oder mehreren Clustern bezeichnet. Bei einem Cluster handelt es sich um einen oder mehrere Hosts mit gleicher Hardware-Konfiguration. Sie sind mit Primary-Storage ausgestattet und nutzen die gleichen Hypervisoren.
:quality(80)/images.vogel.de/vogelonline/bdb/1659400/1659495/original.jpg)
Komposition verschiedener Einzeldienste zu einem Gesamtservice
Was bedeutet Orchestrierung im IT-Umfeld?
Ein Host ist die kleinste CloudStack-Organisationseinheit. Es handelt sich um einen einzelnen physikalischen Server, auf dem typischerweise der Hypervisor und ein oder mehrere virtuelle Maschinen betrieben werden. Der Host stellt den virtuellen Maschinen die benötigten Ressourcen wie Compute-, Memory-, Storage- und Networking-Ressourcen zur Verfügung. Innerhalb eines Clusters weisen die Hosts alle die gleiche Hardwareausstattung auf.
Das Networking unterteilt der Apache CloudStack in Basic Networking mit einem einzigen flachen Layer-2-Netzwerk und Advanced Networking mit Layer-2-Unterteilung beispielsweise per VLAN.
Apache CloudStack sorgt für die automatische Konfiguration der IaaS-Ressourcen. Über virtuelle Appliances sind Funktionen wie Routing, Firewalling, Load Balancing, Virtual Private Networking (VPN), Speicherzugriff und die Replikation von Storage realisiert. Mit einer großen Anzahl an virtuellen Maschinen lässt sich eine CloudStack-Installation in großem Umfang horizontal skalieren.
Sowohl für die Administratoren als auch für die Anwender stellt Apache CloudStack webbasierte grafische User-Interfaces zur Verfügung. Die grafischen Benutzeroberflächen lassen sich an individuelle Designs der Service Provider oder Unternehmen anpassen. Administratoren konfigurieren und verwalten die IaaS Cloud mithilfe der Benutzeroberfläche.
Die in der GUI implementierten Funktionen sind auch über die RESTful CloudStack-API ansprechbar. Über das Application Programming Interface lassen sich eigene kommandozeilenbasierte oder eigene grafische Tools für die Verwaltung der IaaS-Lösung integrieren. Mit CloudMonkey ist ein eigenes Command Line Interface (CLI) und eine interaktive Shell für CloudStack verfügbar. Skripte führen komplexe Administrationsvorgänge automatisiert aus. Für hybride Cloud-Installationen und die Einbeziehung von IaaS-Ressourcen der Amazon Web Services bietet Apache CloudStack eine mit AWS EC2 und S3 kompatible API.
Zum Funktionsumfang und zu den Leistungsmerkmalen des Apache CloudStacks zählen zudem:
- integriertes Ressourcen-Accounting für Compute-, Storage- und Networking-Ressourcen,
- integriertes User-Management,
- Unterstützung von NIC-Bonding (Kombination mehrerer physischer Netzwerkschnittstellen zu einer einzigen logischen Schnittstelle),
- Unterstützung von separaten Storage-Netzwerken und iSCSI-Multipathing,
- Replikation des MySQL-Servers des CloudStack Management Servers,
- integriertes Snapshot-, Template- und ISO-Image-Management,
- Orchestrierungsfunktionen für Netzwerkservices von Layer 2 bis Layer 7.
Anwendungsmöglichkeiten des Apache CloudStacks
Grundsätzlich lassen sich die Anwendungsmöglichkeiten des Apache CloudStacks in zwei Use Cases unterteilen. Ein Use Case umfasst die Bereitstellung von IaaS-Serviceangeboten durch Service- oder Cloud-Provider. Im zweiten Use Case realisieren und managen größere Unternehmen und Organisation ihre IaaS-Ressourcen mit dem Apache CloudStack auf Basis von privaten, öffentlichen und/oder hybriden Cloud-Computing-Umgebungen.
Weltweit setzen viele namhafte Service- und Cloud-Provider auf Apache CloudStack, um ihren Kunden IaaS-Leistungen anzubieten. Dazu gehören beispielsweise Exoscale oder die British Telecom und die China Telecom. Auf der Projektseite von Apache CloudStack ist eine Liste aller erfassten User einsehbar.
Vorteile des Apache CloudStacks
- frei verfügbare Open-Source-Software,
- Unterstützung zahlreicher Virtualisierungsplattformen und Hypervisoren,
- grafische Benutzeroberfläche für Administratoren und Anwender,
- eigene CloudStack-API und mit AWS kompatible APIs,
- breite Installationsbasis,
- elastische Infrastruktur-Services,
- in großem Umfang skalierbar,
- bietet integrierte Hochverfügbarkeit,
- IaaS-Leistungen auf einer einzigen verlässlichen Softwareplattform,
- relativ leicht zu implementieren,
- für private, public und hybrid Cloud Computing geeignet,
- einfach zu managende und zu orchestrierende Infrastrukturkomponenten,
- viele Aufgaben automatisiert ausführbar.

Zum Special: Definitionen rund um Cloud Computing
(ID:48205797)