- Home
- Blog
- Cloud Infrastruktur
-
Ansible: der neue Standard der Automatisierungstechnik im Cloud Computing
Ansible: der neue Standard der Automatisierungstechnik im Cloud Computing
Das Automatisierungstool Ansible existiert schon einige Jahre, hat seine Popularität in den letzten zwei Jahren aber extrem gesteigert. Damit ist es zum Standard der Automatisierungstechnik im Cloud Computing avanciert. Doch wie kam es dazu?
In diesem Artikel lesen Sie:
- mehr zum Funktionsumfang des Automatisierungstools Ansible.
- wie Sie Ansible verwenden können.
- welche Rolle Ansible für die Open Telekom Cloud spielt.
- wo Sie Quellcodes zum OpenStack-Projekt einsehen können.
Ansible: Automatisierung für jeden
„Automatisierung für jeden“ – so wirbt die Webseite www.ansible.com für den Einsatz des Tools. Verwendet werden kann dieses für Konfigurationsmanagement, Rechnerverwaltung, Softwareverteilung oder nur zum Ausführen einzelner Kommandos. Dabei kommt es auf den Zielsystemen ohne jegliche Konfiguration oder Installation von Agenten aus – ein simpler Zugriff per Security Shell (ssh) genügt. Ermöglicht wird dies durch Module, die aus dem Werkzeug eine ganze Werkzeugkiste machen. Im Softwarepaket von Ansible, das der Administrator auf seiner Workstation installieren kann, sind schon sogenannte Core-Module enthalten. Diese stellen Kernfunktionalitäten in Ansible bereit. Das sind zum Beispiel Shell-Aufrufe auf dem entfernten System oder das Agieren mit einer API über eine REST-Schnittstelle. Mit den Cloud-Modulen kann man Ressourcen beliebiger Cloud-Systeme ansteuern wie etwa Amazon Web Services, Microsoft Azure International und OpenStack. Doch wie funktioniert das im Detail?
Arbeiten mit Ansible – so geht’s
Die durchzuführenden Aufgaben werden in sogenannten Tasks beschrieben. Ein Task kann zum Beispiel sein: „Logge dich auf allen Rechnern ein und schaue nach, welche Kernel-Version installiert ist.“ Mehrere Tasks werden in Playbooks zusammengefasst. Das vollautomatische Update-System besteht zum Beispiel aus einem Playbook, das die neuesten Paketversionen vom Repository bezieht, diese installiert und bei Bedarf den Rechner neu bootet. Die genutzten Kernmodule von Ansible sind hier „apt“, „file“ und „shell“, alle beschrieben auf der umfangreichen Online-Dokumentation.
Zielsysteme werden in sogenannten Inventories zusammengefasst. Das kann zum Beispiel eine einfache Textdatei mit der Liste aller Rechnernamen sein, die man verwalten möchte. Es gibt aber auch dynamische Inventory-Scripte wie openstack.py, das die Rechnerliste bei jedem Aufruf automatisch zusammenstellt. Der Aufruf des Playbooks erfolgt mit dem Kommando „ansible-playbook“. Danach werden die einzelnen Tasks darin abgearbeitet.
Eine weitere Möglichkeit sind sogenannte Roles. Diese werden mit dem Dienst „Ansible-Galaxy“ bereitgestellt. Roles beinhalten generische Tasks, die in einem Playbook direkt angesprochen werden können. Ein Beispiel hierfür ist die Rolle „mysql-server“, die auf dem Zielsystem MySQL installiert, konfiguriert und startet.
Und wie hängt Ansible mit der Open Telekom Cloud zusammen?
Ansible und die Open Telekom Cloud
Wie oben bereits erwähnt, entwickelte sich Ansible insbesondere in der Cloud zum Standard für Automatisierungstechnik. Brad Topol (Distinguished Engineer bei IBM) wählte zusammen mit seinem Team aus unterschiedlichen Firmen mit verschiedenen Cloud-Produkten Ansible als Werkzeug, um auf dem OpenStack Summit in Barcelona mit demselben Playbook in einer Interoperability Challenge gegeneinander anzutreten. Aufgabe war es, auf einer Cloud eine Applikation wie Wordpress oder LAMP zu installieren. Unsere Kollegin Daniela Ebert zeigte dies auf der Open Telekom Cloud.
Ansible wird auf dem OpenStack Summit in Barcelona eingesetzt
OpenStack: Quellcodes sind frei zugänglich
Wie alles beim OpenStack-Projekt kann auch dieser Quellcode online betrachtet und selbst ausprobiert werden. Die Basis für das verwendete Playbook ist das OpenStack Cloud-Modul von Ansible. Exemplarisch hier die Funktion zum Erstellen einer virtuellen Maschine:
os_server: state: "present" auth: "{{ auth }}" region_name: "{{ app_env.region_name }}" availability_zone: "{{ app_env.availability_zone }}" validate_certs: "{{ app_env.validate_certs }}" name: apache-{{ item }} image: "{{ app_env.image_name }}" key_name: "lampstack" timeout: 200 flavor: "{{ app_env.flavor_name }}" network: "{{ app_env.private_net_name }}" floating_ip_pools: "{{ app_env.public_net_name | default(omit) }}" userdata: "{{ lookup('file', 'templates/userdata.j2') }}" config_drive: "{{ app_env.config_drive | default('no') }}" security_groups: lampstack_sg meta: hostname: apache-{{ item }} with_sequence: count={{ app_env.stack_size - 2 }} register: webserver
Wer mehr Interaktion mit der Open Telekom Cloud API möchte, kann sich in der Online-Dokumentation zum Fortschritt der Implementierung informieren. Möglichkeiten der Nutzung zeigt ansible-otc, eine Sammlung von Ansible-Rollen, die Ressourcen in der Open Telekom Cloud anzeigt oder erstellt. Ansible wird zudem ständig um neue Funktionen erweitert: Die letzten Versionen punkten mit einem verbesserten Community Support, neuem Networking Add-On und verbessertem Multicloud-Management sowie Optionen für die Orchestrierung von Azure und AWS. Damit Ansible stabil und sicher arbeitet, stehen für Nutzer regelmäßige Wartungs- und Sicherheitsupdates bereit. Sie möchten sich mit den Grundfunktionen von Ansible vertraut machen? Dann nutzen Sie das kostenlose Einsteiger-Seminar (englisch) von Ansible.
Auf einen Blick: die Vorteile der Open Telekom Cloud
- Sicherheit: Die Daten werden in hochsicheren Rechenzentren der Telekom gehostet.
- Skalierbarkeit: Rechenleistung und Speicher können in wenigen Augenblicken online bestellt, eingerichtet und jederzeit flexibel angepasst werden.
- Preismodelle: Wir bieten Ihnen flexible und feste Vertragslaufzeiten und auch eine Kombination aus beiden Modellen.
- Kein Vendor Lock-in: Die Open Telekom Cloud basiert auf OpenStack, einem offenen Open-Source-Standard. Sie können den Anbieter jederzeit wechseln.
- Individuelle Konfiguration: CPU, RAM, Storage, Netzwerk – stellen Sie sich ein Angebot zusammen, das Ihren Anforderungen optimal entspricht.
- IaaS für alle: Die Open Telekom Cloud ist hochgradig flexibel und daher für Unternehmen jeder Größe geeignet.
Dies könnte Sie auch interessieren
Arbeiten in der Wolke – wie Cloud Computing unser Leben verändert
Wir leben mitten im digitalen Zeitalter – Cloud Computing ist längst integraler Bestandteile unseres Alltags geworden. Lesen Sie hier, wie Cloud-Anwendungen unser Leben signifikant verändern!
> Artikel lesenIaaS-Lösungen im Vergleich (Teil 2): Multi-Cloud-Ansätze und Preismodelle
Multiclouds kombinieren mehrere Cloud-Dienste als IaaS nach Laufzeit und Verbrauch. Lesen Sie im Interview, worauf Sie bei der Auswahl achten sollten.
> Artikel lesenOpenStack: Einblick in die technische Seite des Cloud-Betriebssystems
OpenStack erlaubt es Unternehmen, eine eigene Cloud zu verwirklichen. Ein Verständnis der OpenStack-Elemente und eine Vernetzung in der Community sind dabei essenziell. Erfahren Sie hier, wie Sie mit OpenStack arbeiten!
> Artikel lesen