SmartCloud Entry – eine intelligente Infrastructure as a Service

IBM SmartCloud Entry ist eine einfache Infrastructure-as-a-Service(IaaS)-Lösung für Power Systems und x86-basierte Systeme. In dieser Lösung können unter einem Dach mehrere Hypervisoren beziehungsweise Virtualisierungs-Engines angesprochen werden, die dann die virtuellen Ressourcen eines Systems zur Verfügung stellen.

Wie sieht nun eine solche Umgebung aus? Am besten lässt sich dies anhand eines Beispiels erläutern. Stellen wir uns vor, in unserem Unternehmen gäbe es eine DB2-Datenbank-Entwicklungsabteilung. In dieser Abteilung kommt es immer wieder vor, dass Tests durchgeführt werden müssen, für die eine oder mehrere virtuelle Maschinen/LPARs (logische Partitionen) für eine kurze Zeit zur Verfügung zu stellen sind.

In einer solchen Umgebung würde sich der DB2-Entwickler auf dem SCE-Portal mit seinem Benutzer einloggen und würde für sein Projekt (seine Abteilung) ein oder mehrere vorgefertigte Images (Virtual Appliances) vorfinden. 

Der Entwickler kann nun ein für seine Abteilung zugeschnittenes Image auswählen – in unserem Beispiel das auf AIX 7.1 aufsetzende DB2-Testsystem aus dem Projekt DB2.

Im nächsten Screen hat er dann noch die Möglichkeit, die gewünschten Ressourcen, die der neuen virtuellen Maschine zur Verfügung gestellt werden sollen, zu beeinflussen. Er könnte zum Beispiel von der Standardkonfiguration einen Prozessor und 8 GByte Memory dieses Images abweichen, weil er für einen Performance-Test acht Prozessoren und 64 GByte Memory benötigt.

In SmartCloud Entry lassen sich sehr viele Eigenschaften konfigurieren, so kann man dem Benutzer auch die Möglichkeit der Einflussnahme entziehen, so dass er einfach nur eine neue Instanz des Images bestellen kann. Oder es gibt die Möglichkeit, ihn alle Eigenschaften der virtuellen Maschine beeinflussen zu lassen (für erfahrene Benutzer).

Nachdem der Entwickler in unserm Beispiel den Request für ein neues Testsystem abgeschickt hat, geht nun eine E-Mail an den Manager der Abteilung, der diesen Request freigeben oder ablehnen oder ihn auch im Blick auf die Ressourcen beeinflussen kann. Auch dies ist wieder konfigurierbar – man könnte den ganzen Genehmigungs-Workflow auch ausschalten, wenn dieser nicht benötigt wird, oder auf einzelne Projekte beschränken.

Nachdem nun unser Manager die Mail bekommen hat, dass einer seiner Mitarbeiter einen Request gestellt hat, schaut er sich diesen in SmartCloud Entry an. 

Im Request werden alle Details aufgeführt, sowohl welche Anforderungen der Benutzer hat, als auch welche Pools wie viel Kapazität aufweisen. Was ist ein Pool? Die Pools sind das zentrale Element einer Cloud. Ein Pool besteht aus einer Anzahl von Servern und einem Storage-Pool eines Speichersystems. Ein Pool kann also alle Ressourcen bereitstellen, die eine virtuelle Maschine benötigt. In der Abbildung oben sehen wir, dass unsere Power Cloud zwei Pools, einen Production Pool sowie eine Test Pool zur Verfügung stellt.

Zurück zu unserem Beispiel. Unser Manager prüft nun den Request kritisch und kann diesen auch verändern. Er könnte zum Beispiel die VM für den Performance-Test nicht wie vorgesehen im Test-Pool erstellen lassen, sondern auf dem Production Pool, um den Test auf den performanteren Produktionssystemen laufen zu lassen.

Deployment-Prozess

Nach der Prüfung und Freigabe durch den Manager, der auch der Owner des Budgets für diese Abteilung ist, wird der eigentliche Deployment-Prozess auslöst. Dies bedeutet, dass sich SmartCloud Entry an die Virtualisierungs-Engine wendet und das System erstellen lässt. Bei Power Systems wendet sich das Tool also entweder an PowerVC oder an VMControl. Je nach Größe der zu kopierenden Platten-Images ist dann das System nach wenigen Minuten fertig und der Entwickler kann darauf zugreifen.

Die Platten-Images sind Bestandteil des Images und werden auf dem Storage als Templates vorgehalten. Dies bedeutet, dass nach dem Erstellen der Platten für die neue Instanz der Inhalt der Template-Platten auf die neuen Platten kopiert wird. Idealerweise wird dies mit FlashCopy erledigt, was die kopierten Platten bereits logisch bereitstellt, obwohl der Kopiervorgang im Hintergrund noch nicht abgeschlossen ist. Nach dem Kopieren der Daten wird beim ersten Start der neuen virtuellen Maschine eine so genannte Activation Engine ausgeführt. Diese verändert Parameter wie IP-Adressen und Hostname der neuen Instanz und sorgt somit dafür, dass diese gegenüber dem Template eindeutig ist. Die Aufgaben der Activation Engine können gegebenenfalls auch erweitert werden, um über diesen Weg weitere Konfigurationsaufgaben zu erledigen.

Woher weiß nun unser Entwickler, wie er sich auf dem neuen System anmelden kann? Diese Informationen kann er ebenfalls aus dem Bereich Instances herauslesen. 

In der entstandenen Instanz kann der Entwickler nun sehen, dass er den Host cl-host1 mit zwei IP-Adressen zugewiesen bekommen hat und ist in der Lage, sich auf der virtuellen Maschine anzumelden.

Vielleicht stellt sich nun die Frage, woher das System die IP-Adresse und den Host-Namen nimmt? Für jedes in SmartCloud Entry definierte Netzwerk wird ein IP-Adressen-Pool definiert, aus dem beim Deployment eine freie Adresse genommen wird. Der Hostname kann dort ebenfalls festgelegt werden, oder er wird aus DNS übernommen.

Zurück zu unserem Beispiel: Der Entwickler kann nun seine Tests durchführen. Sollte er feststellen, dass er zu wenig Ressourcen hat, kann er in der gleichen Maske (siehe Abbildung oben) die Anzahl Prozessoren, die Memory-Größe beziehungsweise alle anderen Eigenschaften der virtuellen Maschine verändern. Er hat auch die Möglichkeit, weitere Platten anzufordern. Eine solche Änderung zieht dann wieder einen Genehmigungsprozess nach sich, sofern dieser aktiviert wurde. Alle Ressourcenveränderungen werden bei Power Systems ohne Reboot im laufenden Betrieb über Dynamic LPARing durchgeführt.

Ressourcen zurückgeben

Nach getaner Arbeit kann beziehungsweise sollte unser Entwickler die Ressourcen auch wieder zurückgeben. Dies kann er selbstständig tun, indem er in der Instanzenmaske seine Instanz löscht. Damit fallen dann auch keine weiteren Kosten an, sofern die Kostenverrechnung eingeschaltet wurde.

Ist die Kostenverrechnung aktiv, kann in den Konfigurationsdateien festgelegt werden, was eine Prozessorminute, eine Gigabyte-Memoryminute beziehungsweise eine Gigabyte-Diskminute kostet und auch die zu verwendende Währung. Kosten fallen natürlich nur an, wenn Ressourcen benutzt werden. Wenn der Entwickler etwa in Urlaub fährt und für diese Zeit seine virtuelle Maschine stoppt, sind nur Kosten für den Plattenplatz zu zahlen, nicht aber für Prozessoren und Memory.

Nachdem in unserem Beispiel der Entwickler seine virtuelle Maschine wieder gelöscht hat, interessiert sich nun unser Manager dafür, welche Kosten sein Mitarbeiter verursacht hat. Dies kann er einfach in SmartCloud Entry herausfinden. Zu jeder virtuellen Maschine wird eine Rechnung erzeugt, die er sich anzeigen lassen kann. 

Der Test unseres Entwicklers schlägt mit 109,18 zu Buche. Durch Anklicken der Rechnung können die Kosten auch noch nach Prozessor, Memory und Disk aufgeschlüsselt werden.

Für Power Systems ist SmartCloud Entry Bestandteil des SmartCloud Entry Bundle. Dieses Bundle beinhaltet alle Komponenten, die zum Betreiben einer Cloud notwendig sind inklusive PowerVC und VMControl. Dieses Bundle wird nach Cores lizenziert und ist auch in der AIX Enterprise Edition enthalten. Somit fallen keine weiteren Kosten an, wenn bereits die AIX Enterprise Edition lizenziert wurde.

Fazit

SmartCloud Entry ist ein einfach zu bedienendes Tool zur Realisierung einer Infrastructure as a Service Cloud für Power Systems mit AIX, IBM i und Linux sowie für x86-basierte Systeme. Es kann der komplette Lifecycle einer virtuellen Maschine abgebildet werden, inklusive Genehmigungsworkflow und Kostenverrechnung. 

Autor: Stephen Lutz ist Open Group Master certified Senior IT Specialist im Bereich Power Systems bei der IBM Deutschland GmbH. Er hat 15 Jahre Erfahrung im Bereich AIX, Linux, Virtualisierung und Power Systems. Ein Schwerpunkt seiner Tätigkeit liegt im Bereich Systems Management mit PowerVC, IBM Systems Director und Plug-ins sowie Smart Cloud Entry.

 

INFO:

Für x86-basierte Systeme:

  • OpenStack mit KVM als Hypervisor
  • VMControl mit KVM als Hypervisor
  • VMware

Für Power Systems:

  • PowerVC – Power Virtualization Center: PowerVC ist eine neue auf OpenStack basierende Image-Deployment-Lösung für Power Systems.
  • VMControl: VMControl ist ein Plug-in für den IBM Systems Director, das ebenfalls ein Deployment von Images beziehungsweise Virtual Appliances auf  IBM Power Systems und anderen Plattformen ermöglicht.

Beide Produkte arbeiten mit dem Power Hypervisor, PowerVM beziehungsweise den Virtual-I/O-Servern zusammen.

RSS Feed

Entdecken Sie die Printmagazine des WIN-Verlags