Open-Source-Software zur automatisierten Konfiguration von IT-Systemen

Was ist Ansible?

| Autor / Redakteur: Stefan Luber / Florian Karlstetter

Ansible ist ein Member-Projekt der Cloud Native Computing Foundation zur automatisierten Konfiguration von IT-Systemen.
Ansible ist ein Member-Projekt der Cloud Native Computing Foundation zur automatisierten Konfiguration von IT-Systemen. (Bild: gemeinfrei (© Gerd Altmann / pixabay) / Pixabay)

Ansible ist ein Member-Projekt der Cloud Native Computing Foundation und wird von Red Hat verantwortet. Es handelt sich um eine Open-Source-Software, mit der sich IT-Systeme automatisiert konfigurieren und verwalten lassen. Die Software verfolgt einen minimalistischen Ansatz und benötigt keine Agenten auf den zu managenden Systemen.

Ansible wurde 2012 erstmals veröffentlicht. Es handelt sich um eine freie Software unter GNU General Public License, mit der sich IT-Systeme wie Server automatisiert administrieren und konfigurieren lassen. Ansible kann beispielsweise Software verteilen, Befehle auf den Systemen ausführen oder Konfigurationen managen. Es sind sowohl einfache als auch komplexe Aufgaben automatisiert ausführbar. Die Software verfolgt einen minimalistischen Ansatz und benötigt im Vergleich zu vielen anderen Tools dieser Art keine Agenten auf den zu verwaltenden Systemen.

Die Kommunikation mit den einzelnen Rechnern erfolgt über SSH (Secure Shell). Unter anderem kommt die recht einfach zu verstehende Auszeichnungssprache YAML zum Einsatz. Genutzt wird Ansible weltweit von zahlreichen Unternehmen und Organisationen beispielsweise zur Vereinfachung der Administration der Systeme in einem Rechenzentrum.

Ansible arbeitet mit allen Unix-artigen Betriebssystemen wie den verschiedenen Linux-Distributionen zusammen. In vielen Distributionen wie CentOS, Ubuntu oder Debian ist Ansible enthalten. Auch Windows-Server lassen sich mit Ansible verwalten. Es werden die Befehle der Powershell 3.0 verwendet. Seit 2012 ist das Unternehmen AnsibleWorks maßgeblich an der Weiterentwicklung der Software beteiligt und bietet verschiedene kommerzielle Produkte auf Basis von Ansible inklusive Supportleistungen an. 2015 wurde AnsibleWorks von Red Hat übernommen.

Red Hat verkauft eine Enterprise-Variante der freien Software unter der Bezeichnung Ansible Tower. Die Enterprise-Variante integriert Zusatzfunktionen wie Rollensysteme für User und grafisch aufbereitete Benutzeroberflächen. Die Open-Source-Version von Ansible ist aktuell in der Version 2.9.4 (Stand Anfang 2020) erhältlich und kann über GitHub kostenlos geladen werden.

Ansible und die Cloud Native Computing Foundation

Ansible wird von Red Hat, einem Mitglied der Cloud Native Computing Foundation (CNCF), verantwortet. Damit hat das Ansible-Projekt bei der CNCF den Status eines CNCF-Member-Projekts. Die Cloud Native Computing Foundation ist ein Teilprojekt der Linux Foundation und hat sich zum Ziel gesetzt, das Cloud Native Computing und die Zusammenarbeit zwischen Herstellern, Entwicklern und Anwendern zu fördern.

Cloud Native Computing hat sich weltweit etabliert und wird von großen Unternehmen wie eBay, Pinterest oder Twitter und anderen intensiv genutzt. Das Cloud Native Computing basiert auf Microservices und Containern. Diese Architektur bietet den Vorteil, dass sich neue Applikationen schneller realisieren lassen und die Möglichkeiten des Cloud Computings voll ausgeschöpft werden.

Die Cloud Native Computing Foundation wurde 2015 gegründet und hatte sich ursprünglich zum Ziel gesetzt, die Verbreitung und Verwendung der Container-Technologie voranzutreiben. Das Projekt Kubernetes zur Orchestrierung von Containern wurde damals von Google an die CNCF gespendet. Mittlerweile zählt die Organisation mehrere hundert Mitglieder wie große Public-Cloud-Provider und Software-Hersteller beispielsweise Amazon, Google, IBM, Microsoft, Oracle, Red Hat oder VMware und viele andere. Die Organisation begleitet zahlreiche Projekte, arbeitet Hersteller-neutral und setzt auf frei verfügbare Open-Source-Software wie Ansible. Die Projekte sind in verschiedene Kategorien eingeteilt. Diese Kategorien sind beispielsweise:

  • CNCF Graduated Projects
  • CNCF Incubating Projects
  • CNCF Sandbox Projects
  • CNCF Member Projects/Products
  • Non-CNCF Member Projects/Products

Ansible zählt zur Kategorie der CNCF Member Projects/Products.

Was ist die Cloud Native Computing Foundation (CNCF)?

Community rund um Microservices und Container

Was ist die Cloud Native Computing Foundation (CNCF)?

10.05.19 - Die Cloud Native Computing Foundation ist ein wichtiges Unterprojekt der Linux Foundation. Die Vereinigung hat sich zum Ziel gesetzt, das Cloud Native Computing zu fördern. Cloud Native Computing basiert auf Open Source Software und nutzt Microservices und Container zur Realisierung der Applikationen. lesen

Grundsätzliche Funktionsweise und Architektur von Ansible

Ansible unterscheidet prinzipiell zwischen den Systemen (Knoten), die verwaltet und konfiguriert werden sollen, und den Systemen (Managementsystemen), die das Konfigurationsmanagement durchführen. Das Design der Software verfolgt einen minimalistischen Ansatz. Auf den Knoten ist keine besondere Software wie Agenten notwendig. Es müssen lediglich OpenSSH und Python vorhanden sein. Der bewusste Verzicht auf Agenten-Software macht Ansible sehr sicher und reduziert die Fehlerwahrscheinlichkeit. Die beschreibenden Sprachen zur Ausführung der Aktionen und Befehle sind einfach anzuwenden und zu erlernen. Unter anderem kommen YAML-Templates zum Einsatz.

Der gewünschte Zustand eines zu verwaltenden oder zu konfigurierenden Knotens ist in sogenannten Playbooks beschrieben. Zur Konfiguration eines Knotens verbindet sich das Managementsystem per SSH mit dem Knoten. Anschließend werden die einzelnen Befehle übergeben und die verschiedenen Tasks auf dem Knoten ausgeführt. Ein Task beinhaltet jeweils einen Konfigurationsschritt. Die Tasks rufen Module auf, die für die eigentliche Umsetzung der Tasks sorgen. Bestandteil von Ansible sind mehrere tausende Module. Darüber hinaus existieren weitere Module, die importiert werden können. Ansible bietet zudem die Möglichkeit, einzelne Befehle direkt per Kommandozeile abzusetzen.

Die zentralen Ressourcen von Ansible

Die drei zentralen Ressourcen, die von Ansible zur automatisierten Ausführung der verschiedenen Aufgaben genutzt werden, sind:

  • Module
  • Inventar
  • Playbooks

Bei den Modulen handelt es sich um Unterroutinen oder Unterprogramme, mit denen sich immer wieder auszuführenden Aufgaben in geschlossene Einheiten auslagern lassen. Module sind sowohl in Playbooks als auch über die Kommandokonsole nutzbar. Ziel der Modul-Technik ist es, wiederkehrende Aufgaben oder Standardaufgaben nicht immer wieder neu programmieren zu müssen. Anwender von Ansible können selbst Module entwerfen und programmieren oder die mit Ansible ausgelieferten Module verwenden. Module sind mit beliebigen Programmiersprachen erstellbar.

Das Inventar fast die Knoten zusammen, die von den Managementsystemen per Ansible erreichbar und konfigurierbar sein sollen, und beschreibt sie. Für die verschiedenen Knoten existieren im Inventar Einträge, die Information wie IP-Adressen oder Hostnamen beinhalten. Inventare können statisch bereitgestellt oder dynamisch aus verschiedenen Quellen bezogen werden. Sie sind parallel nutzbar und lassen das Gruppieren der Knoten zu.

Im Playbook ist der gewünschte Zustand eines zu konfigurierenden oder zu verwaltenden Knotens beschrieben. Es enthält die Vorgaben, die automatisiert abzuarbeiten sind, in Form einzelner Arbeitsanweisung. Innerhalb eine Playbooks sind prinzipiell beliebige Shell-Kommandos zur Ausführung der Aufgaben auf dem Zielknoten nutzbar. Playbooks können beispielsweise Anweisungen zur Installation einer einzelnen Software, zur Ausführung bestimmter Konfigurationseinstellungen oder zur kompletten Einrichtung des Systems enthalten. Windows und die Powershell-Befehle werden ebenfalls unterstützt. Die Playbooks verwenden unter anderem YAML als beschreibende Sprache.

Vorteile von Ansible

Die wichtigsten Vorteile von Ansible und der automatischen Verwaltung und Konfiguration der IT-Systeme sind:

  • Reduzierung des Arbeitsaufwands zur Verwaltung und Konfiguration der IT-Systeme
  • vielfältige Konfigurations- und Verwaltungsmöglichkeiten
  • keine separate Software wie Agenten auf den zu verwaltenden Knoten notwendig
  • minimalistischer Ansatz der Software - sicher und einfach einzusetzen
  • Ansible ist frei verfügbar
  • kompatibel mit Unix-artigen Systemen wie Linux und mit Windows-Systemen
  • in vielen Linux-Distributionen bereits enthalten
  • sichere Verbindungen über SSH
  • einfache Beschreibungssprache YAML
  • niedriger Einarbeitungsaufwand
  • viele fertige Module und Playbooks verfügbar
Die Cloud Native Computing Foundation im Fokus

CNCF: „Wir machen die nächste Technologie-Generation“

Die Cloud Native Computing Foundation im Fokus

05.02.19 - Unter dem Dach der Cloud Native Computing Foundation (CNCF) besteht ein weiterer Kreis von Open-Source-Projekten, die auf offenes Cloud Computing zielen. Mit dem Vorsitzenden der Organisation, Dan Kohn, sprach Autor Ludger Schmitz über das Profil und die Ziele der Organisation. lesen

Kommentare werden geladen....

Kommentar zu diesem Artikel abgeben

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

Integrierte Lösungen vom Code zum Kunden

Ein Jahr F5 und NGINX

Integrierte Lösungen vom Code zum Kunden

Durch die Übernahme von NGINX kann F5 Networks nun einheitliche Angebote vom App- und Web-Server über API Gateways, Load Balancer, Security und DNS bis zum Customer Delivery Network (CDN) unterbreiten. Die Bereitstellung von Apps in Multi Cloud-Umgebungen über den gesamten Lebenszyklus hinweg soll künftig durch den NGINX Controller 3.x einfacher werden. Er ist das jüngste Resultat des Zusammenschlusses. lesen

Fujitsu Forum 2019 - Innovationen und Praxis

Digital-Annealer-Projekte, KI und Strategien

Fujitsu Forum 2019 - Innovationen und Praxis

Vergangene Woche fand die Hausmesse „Fujitsu Forum“ in München statt. Es war voll, wenngleich das Medieninteresse im Vergleich zum Vorjahr abgeflaut schien. Vom Fujitsu-President Takahito Tokita erneut kein Wort über die Schließung der Augsburger Produktion. lesen

Privileged Access Management in einer Cloud-Umgebung

Bevorrechtete Accounts in hybriden Clouds absichern

Privileged Access Management in einer Cloud-Umgebung

Cloud- und hybride Infrastrukturen bringen besondere Herausforderungen mit sich. Sie abzusichern, ist auf Grund der unterschiedlichen Zugriffswege und Systemmerkmale schwierig. Doch beim Betrieb in einer Hybrid-Cloud-Umgebung ist die Absicherung insbesondere privilegierter Accounts – also Benutzern, die aufgrund ihrer Tätigkeit über erweiterte Berechtigungen verfügen müssen –unerlässlich. lesen

Open Source verbindet DevOps und NetOps

Continuous Deployment verwirklichen

Open Source verbindet DevOps und NetOps

Die Bereitstellung von Anwendungen muss sich in Unternehmen verändern, um in einer Multi-Cloud-Welt die Anforderungen an Konsistenz und Transparenz zu erfüllen. Open Source kann hier die Kluft zwischen DevOps und NetOps überwinden. lesen

Unnötige Cloud-Kosten unterschätzt

RightScale 2019 State of the Cloud Report

Unnötige Cloud-Kosten unterschätzt

Cloudnutzer zahlen offenbar mehr als sie eigentlich müssten. Zu diesem Ergebnis kommt Flexera im jetzt vorgestellten „RightScale 2019 State of the Cloud Report“. lesen

Integrationsplattform für Cloud-native Entwicklung

Red Hat Integration bringt Agilität in Hybrid-Architekturen

Integrationsplattform für Cloud-native Entwicklung

Red Hat Integration wird um neue Komponenten und Funktionen zur Verbindung von Anwendungen, Daten und Geräten in hybriden Architekturen erweitert. Cloud-basiertes Self-Service Messaging und Event Streaming gehören dazu ebenso wie die vollständige Abdeckung des API-Lebenszyklus. lesen

Wie Unternehmen sich sicher im Cloud-Dschungel bewegen

Fünf Tipps von McAfee

Wie Unternehmen sich sicher im Cloud-Dschungel bewegen

As-a-Service-Lösungen verbreiten sich immer weiter. Dabei bleibt es längst nicht mehr bei einer einzigen Cloud. 82 Prozent der Unternehmen nutzen mehr als zehn verschiedene Public-Cloud-Dienste. Dazu kommen noch Private Clouds und On-Premise-Systeme, so eine aktuelle Studie von McAfee. Sicherheitssysteme stoßen im Angesicht dieser neuen komplexen Architekturen schnell an ihre Grenzen. lesen

Betatester für MiCADOscale gesucht

EU-Forschungsprojekt COLA auf der Zielgeraden

Betatester für MiCADOscale gesucht

Nach knapp zwei Jahren im COLA-Projekt (HORIZON2020) ist das Softwareprodukt MiCADOscale 0.6.1 veröffentlicht worden. Die europäische Innovationsaktion sucht nun Betatester. lesen

Multi Cloud macht Cloud-Management unverzichtbar

Verwaltung heterogener IT-Umgebungen

Multi Cloud macht Cloud-Management unverzichtbar

Die Multi Cloud liegt im Trend: Immer mehr Unternehmen nutzen parallel unterschiedliche Cloud-Plattformen und Services. Die zentrale Herausforderung liegt dabei in der Komplexität der Verwaltung. Sinnvoll beizukommen ist ihr nur mit einer Cloud-Management-Plattform, die die integrative Verwaltung heterogener Private, Public, Hybrid und Multi Clouds unterstützt. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 46339921 / Definitionen)