Ansible : Formation, écoles en un coup d'œil

vers les fournisseurs
(1)
Infos, conseils & tests Histoires vidéo
(1)

Vous êtes à la recherche d'un cours Ansible pour mieux connaître cette forme d'automatisation pour les applications et l'infrastructure informatique ? Vous êtes intéressé par un séminaire, un atelier ou dans ce domaine informatique ?

Vous trouverez ici, sur le portail suisse de formation Formation-Formation continue.ch, une liste des offres de formation appropriées pour apprendre cet outil d'automatisation open source. En quelques clics, vous pouvez commander des documents d'information de certaines écoles ou vous inscrire à un cours.

Télécharger les check-lists

Check-list «Trouver la bonne formation continue» » télécharger ici

Check-list «Choisir la bonne école» » télécharger ici

Apprendre Ansible : un outil d'automatisation open-source pour les applications et l'infrastructure informatique

Ansible est un outil d'automatisation open source pour l'orchestration et la configuration et l'administration générales d'ordinateurs. Ce type d'automatisation combine la distribution de logiciels, l'exécution de commandes ad hoc et la gestion de la configuration. L'administration des ordinateurs en réseau s'effectue via SSH et ne nécessite donc aucun logiciel supplémentaire sur le système à administrer. L'automatisation des applications et de l'infrastructure informatique facilite, simplifie et accélère la maintenance des systèmes ou encore leur installation ou leur configuration. En effet, les tâches administratives peuvent ainsi être implémentées de manière réutilisable.

Selon son orientation, une formation Ansible transmet des connaissances de base ou un savoir-faire approfondi pour l'utilisation d'Ansible, des playbooks comme scripts pour des tâches complexes ainsi que la structure modulaire des concepts de rôles. Les cours peuvent porter sur les thèmes suivants :

  • Principes de base
  • Idées d'automatisation
  • Architecture
  • Installation et configuration d'un hôte
  • Créer des playbooks - simples ou complexes
  • Rôle Ansible et galaxie Ansible
  • Introduction à YAML
  • Automatisation d'applications (p. ex. serveur web)
  • Interfaces avec d'autres plates-formes
  • Introduction aux modèles Jinja2
  • Automatisation de composants d'infrastructure (exemple Cisco) ou d'applications à 3 niveaux
  • Gestion des erreurs et des dépendances au sein des modèles
  • Débogage et tests

Les cours s'adressent, sous différentes formes, aux débutants dans le domaine de l'automatisation, aux administrateurs de serveurs, aux architectes de plateformes, aux collaborateurs avant-vente dans l'environnement de l'automatisation. Les personnes ayant suivi la formation savent comment utiliser Ansible dans le cycle de développement des applications et comment l'adapter aux environnements évolutifs et aux environnements d'entreprise.

Vous êtes intéressé par une formation, un perfectionnement, un séminaire, un atelier ou une formation sur les possibilités d'automatisation avec Ansible ? Sur le célèbre portail de formation Ausbildung-Weiterbildung.ch, vous trouverez un aperçu des prestataires de formation dans ce domaine informatique. Une possibilité de commande simple permet de demander rapidement et sans engagement des documents d'information de prestataires de formation appropriés en quelques clics.


Questions et réponses

Mit einem Ansible File können Sie Dateien mit Hilfe von Ansible-Modulen verwalten. Dateien können mit Ansible aber auch kopiert, bearbeitet, eingefügt, heruntergeladen oder ersetzt werden. Gemäss Ansible Tutorial können mit dem Modul «copy» Dateien mit dem Kopiermodul aus dem Verzeichnis «Ansible File» kopiert werden. Das Modul «template» kopiert die Jinja2-Vorlage hingegen aus dem Verzeichnis «Vorlage» auf Ansible Playbooks. Damit eignet sich das Ansible Copy gemäss Ansible Tutorial nur zum Kopieren persistenter Dateien wie Zertifikate. Das Modul «Template» hingegen eher für wiederverwendbare Konfigurationen wie virtuelle Host-Konfigurationen. Um eine Datei von der entfernten Maschine auf einen lokalen Ansible Knoten herunterzuladen eignet sich das Ansible Modul «Fetch». Um Dateien mit Ansible zu bearbeiten gibt es gemäss Ansible Tutorial folgende Möglichkeiten:

  • mehrere Zeilen in eine Datei einfügen mit dem Ansible Modul «blockinfile»
  • mehrere Zeilen mit den Markierungsoptionen einfügen mit Marker-Option «insertafter» oder «insertbefore»
  • Löschen/Entfernen mehrerer Linien durch Blockieren die Umgebung innerhalb der Markierungen
  • Neue Zeile in Datei einfügen mit «PermitEmptyPasswords»
  • Linie aus Datei entfernen mit dem Liniendatei-Modul
  • Ersetzen von Musterzeichenketten durch reguläre Ausdrücke und Ersetzen des Moduls mit «Replace»
  • Unkommentierte Konfigurationen mit «Server Tokens»
  • Kommentar zur Konfigurationslinie

Attribute von Dateien können gemäss Ansible Tutorial über das Dateimodul in Ansible gesetzt werden, z.B. über Symlink-Datei oder Erstellen eines neuen Verzeichnisses mit Hilfe des Dateimoduls. Es gibt also zahlreiche Möglichkeiten mit einem Ansible File Dateien zu verwalten.

 

Um Ansible als beliebtestes Tool für Konfigurationsverwaltung und Infrastrukturautomatisierung auch unter Windows zum Laufen zu bringen, folgen Sie der Ansible Documentation für «Ansible Windows». Das «Ansible Install» gelingt mit Cygwin – eine POSIX-kompatible Umgebung, die unter Windows ausgeführt werden kann. Denn Sie können viele Dinge unter Windows ausführen, was Sie normalerweise unter UNIX-basierten Betriebssystemen tun. Die Standardinstallation von Cygwin deckt Ansible nicht ab, daher müssen Sie sie während der Installation «Herunterladen Cygwin» auswählen. Auch das Verwenden von Ubuntu unter Windows 10 ist eine Möglichkeit.

Einzelne Dateienzeilen zu ändern, ist oft notwendig. Dazu wird jedoch von vielen lineinfile- oder blockinfile-Module verwendet. Praxiserfahrungen zeigen jedoch, dass man diese Module nicht verwenden sollte, wenn Dateien damit verändert werden möchten. Dann sollten lieber das Template– oder Copy-Modul verwenden. Insbesondere, um nicht nur einzelne Zeilen, sondern die gesamte Datei zu verwalten. Dafür gibt es zweierlei Gründe:

  • Bei der Verwendung von lineinfile muss oft Regex verwendet werden. Daraus resultieren folgende Probleme: Die Verwendung von Regex ist oft kompliziert und Personen, die Playbooks dann benutzen, müssen mit Redex vertraut sein.
  • Der Programmierer selbst muss wissen und sich erinnern können, dass diese bestimmte Zeile in dieser einen Konfigurationsdatei von Ansible verwaltet wird.

Wenn Sie die gesamte Datei mit einem Ansible Template verwalten, können Sie dieansible_managed-Variable verwenden, um deutlich zu machen, dass sich die Datei unter Ansible-Kontrolle befindet. Ein weiterer Vorteil ist zudem: Sie können eine Variable für den selinux-state verwenden und diese einfach auf Servern, auf denen selinux nicht im Enforcing-Status sein sollte, ändern.

Ansible ist ein Open-Source Automatisierungs-Werkzeug. Es wird zur Orchestrierung und allgemeinen Konfiguration und Administration von Computern genutzt. Dazu kombiniert es Softwareverteilung, Ad-hoc-Kommando-Ausführung und Konfigurationsmanagement. Dabei erfolgt die Verwaltung von Netzwerkcomputern unter anderem über SSH. Der Vorteil bei Ansible ist, es erfordert keinerlei zusätzliche Software auf dem zu verwaltenden System. Und Module können in jeder beliebigen Programmiersprache geschrieben sein, da sie zur Ausgabe JSON nutzen. Das System hingegen nutzt YAML zur Formulierung wiederverwendbarer Beschreibungen von Systemen. Ein Ansible-Beispiel (Ansible Example) ist Ansible Galaxy. Mit Ansible Galaxy ist es gar möglich, eigene Ansible-Repositories anzulegen. Der unter freier Lizenz durch Red Hat veröffentliche Quellcode von Ansible Galaxy ist der offizielle Community Hub für die gemeinsame Nutzung von Ansible Roles. Mit dem Open-Source-Projekt Ansible Galaxy können Unternehmen einen eigenen Galaxy-Server einrichten. Damit kann man den nativen Ansible-Client zur Weiterleitung m privaten Galaxy Repository nutzen. Zudem können Anwender und Unternehmen jetzt neue Features und Erweiterungen direkt in die Galaxy Codebase einbringen.

Eine Ansible Collection kann verschiedene Komponenten von Ansible enthalten: Ansible Roles, Ansible Modules oder Ansible Plugins. Inhalte können Sie mit dem Installieren der Ansible Collections (Collection der eigenen Ansible-Umgebung) zur Verfügung stellen. Mit der Form «Namespace» wird Naming Collisions bei Ansible Collections verhindert und Namespaces haben keine Relation zu Ansible Github Handles. Ansible Collections werden gepackt und gepushed auf Ansible Galaxy und können auf beliebigen Git Respostory gehostet sein – privat oder public. Der Namespace wird im Metafile galaxy.yml definiert. In einem Ansible-Kurs wird das Thema Ansible Galaxy meist behandelt.

Playbooks verwenden eine einfache beschreibende Sprache, die auf YAML- und Jinja-Templates basiert. Mit Jinja2 können Templates vererbt werden. In einem Base-Template können allgemeingültige Elemente definiert werden. In sogenannten „Blocks“ können Teile von Child-Templates überschrieben werden. Für die Webseite wird ein spezifisches Ansible Template verwendet. Die dort in Jinja-Syntax eingebundenen Variablen werden dann von Ansible ausgefüllt, wenn die Datei mittels template-Modul an die gewünschte Stelle kopiert wird. Template-Dateien bekommen die Dateiendung .j2. Mit der Ansible Template-Datei und dem Stylesheet erhält man dann eine genaue Ordnerstruktur. Der darauffolgende Task verläuft analog zum Neustarten des Firewall-Dienstes: Sofern sich die index-Datei oder das Stylesheet beim Deployment ändern, kann nginx ev. neu gestartet oder im laufenden Betrieb die ausgelieferten Dateien geändert werden. Der letzte Task soll nun noch eine Nachricht als «Message-of-the-day» setzen, die beim Server Login per SSH angezeigt wird. Auch hier wird wieder das Ansible template-Modul benutzt, um die gewünschte Datei nach etc/motd zu kopieren. Es wird also eine motd.j2-Templatedatei hinzugefügt. Die ansible_*-Variablen kommen analog zum Website-Template aus den Host-facts. Das gilt jedoch nicht für webserver_name, denn da diese Variable pro Server verschieden sein soll, muss diese auch dementsprechend festgelegt werden.

Jedes Ansible-Modul kann eigenständig und in einer beliebigen Programmiersprache geschrieben sein. Dabei sollten die Module idempotent im Sinne von einem «Ansible Loop» sein. Damit, selbst wenn ein Vorgang mehrfach wiederholt wird – z.B. bei der Wiederherstellung nach einem Ausfall – das System immer in denselben Zustand versetzt wird.

Ansible ist Teil der Systemmanagement-Produktgruppe für Unternehmens-IT von Red Hat und umfasst das Infrastrukturmanagement Satellite, das CloudForms-Cloud-Management und den Überwachungs- und Fehlerbehebungsdienst Red Hat Insights. Ansible Engine bietet Enterprise-Level-Support für das Open-Source-Projekt. Es handelt sich bei Ansible Engine um eine stabilisierte, gehärtete Version der vorgelagerten Automatisierungstechnologien. Ansible Engine umfasst den zentralen Task Runner und Module für Kernfunktionen, Networking, Community und andere Bereiche. Ansible Tower bietet eine Reihe von Funktionen für die Verwaltung und Zugriffskontrolle, um die Möglichkeiten von Ansible Engine zu erweitern. Ansible Tower ist dabei ein unterstütztes Red-Hat-Angebot, das auf dem vorgelagerten AWX-Projekt basiert. Das IT-Betriebsteam kann die Benutzeranmeldeinformationen für verwaltete Systeme dank der rollenbasierten Zugriffskontrolle (Role Based Access Control, RBAC) einfach kontrollieren. Ansible Tower umfasst auch anpassbare Dashboards und Bestandsverwaltung über eine grafische Benutzeroberfläche GUI (Graphic User Interface), ein Benachrichtigungssystem sowie Job Scheduling. Zusätzlich zur GUI verfügt der Ansible Tower über eine eigene CLI. Darüber können Tower-Benutzer Ansible über seine API in Entwicklungs-, IT- und DevOps-Prozesse und Toolchains einbinden. Instanz-Gruppen und isolierte Knoten ermöglichen dabei eine genaue Kontrolle über Implementierungen.

Ansible ist ein Konfigurations-Verwaltungs-Programm. Mit der Hilfe dieses Programms ist es möglich, von einem Computer aus Installations- und Konfigurations-Routinen simultan auf beliebig vielen anderen Rechnern auszuführen. Die Voraussetzung dafür ist lediglich, dass der auf dem Tower angemeldete Benutzer sich via SSH auf den anderen Rechnern anmelden kann (SSH-Schlüssel) und dort gegebenenfalls SuperUser-Rechte bekommt. Auf den Clients selbst muss jedoch keine weitere Software installiert werden. Beim Aufruf von Ansible kann der Pfad der gewünschten Hosts-Datei mittels der Option «-i hostfile» explizit angegebenen werden. Möchte man allerdings, dass Ansible standardmässig auf die Host-Datei im Verzeichnis «~/ansible» zurückgreift, so kann man folgende Zeile in einer Ansible Shell eingeben (oder diese am Ende der Konfigurationsdatei «~/.bashrc beziehungsweise ~/.zshrc» einfügen).

Ein Vorteil von Ansible ist die vorgängige Prüfung der vorliegenden Bedingungen. Erst danach werden bei Bedarf irgendwelche Routinen aufgerufen. Sind beispielsweise die gewünschten Programme bereits installiert oder die entsprechenden Konfigurationsdateien angepasst, so gibt es keine Veränderungen. Wegen derartiger Features wird Ansible häufig bei der Server-Verwaltung eingesetzt, da ein aktiver Server-Dienst damit nicht erneut gestartet wird. Ansible Service kann allerdings auch auf üblichen Computern genutzt werden. Zudem können Docker-Container mit Ansible Docker konfiguriert werden.

«Ansible Deutsch» - auf Deutsch bedeutet Ansible ein Open-Source-Orchestrierungstools. Ein Ansible Playbook ist eine organisierte Einheit von Skripten. Mit Ansible kann ein Master-Server einen Slave-Server konfigurieren - dazu verbindet sich der Master per SSH mit dem «Slave» und führt vorgegebene Tasks aus. Jeder Ansible Task beschreibt einen Konfigurationsschritt, wie z.B. das Installieren eines Pakets mittels Ansible Yum. Dabei ruft jeder Task ein Modul in Form von Ansible Modules auf, das die aktuelle Aufgabe umsetzt (beispielsweise das yum-Modul). Das copy-Modul wird dann eingesetzt, wenn eine Datei kopiert werden soll. Für das Managen für Ansible Systemd-Services hingegen kann das Ansible systemd-Modul zum Einsatz kommen. Ansible liefert in Version 2.7 ca. 2’100 Ansible Modules mit. Weitere Module können zusätzlich einfach importiert werden. Will man mehrere Ansible Tasks kombinieren, so benutzt man ein Ansible Playbook. Ansible Playbook definiert Serverkonfigurationen, die vom Automatisierungswerkzeug Ansible verwaltet werden. In diesem Ansible Playbook wird in YAML-Syntax zunächst mit dem hosts key definiert, auf welchen hosts des Inventories das Playbook laufen soll. Anschliessend werden unter dem key tasks alle Aufgaben definiert, die in eben dieser Reihenfolge ablaufen sollen. In einem Ansible-Kurs werden meist Themen wie Ansible Playbook behandelt.

Die Bedeutung von Ansible für die Programmierung ist:

  • Ansible ist eines der Tools, die bevorzugt zur Automatisierung von Vorgängen eingesetzt werden. Gemeint sind Vorgänge,  die man ansonsten mit viel Zeitaufwand und oft ohne professionelle Qualitätskontrolle manuell durchführen müsste. Gegenüber anderen Tools dieser Art (z.B. Puppet, Chef, SaltStack etc.) bietet Ansible einige Vorzüge.
  • Durch die minimale Ausstattung ist Ansible einfach in der Anwendung bei gleichbleibender Effizienz. mittels einfach zu schreibender und lesender YAML-Dateien (= Ansible Playbooks) beschreibt man den Systemzustand.
  • Über die sogenannten Playbooks steuert und gruppiert man die Aufgaben. Man schreibt alles rein, wie man das System haben möchte. Häufig wiederkehrende Elemente lagert man in sogenannten Playbook Roles aus und kann diese dadurch mehrfach verwenden.
  • Man braucht nicht viel installieren, denn auf dem System wird lediglich ein SSH-Server, Ansible Git (Ansible Github) und eine aktuelle Python-Installation (eine Skriptsprache die mit jedem aktuellen Linux System kommt) gebraucht.
  • Und die Lernkurve ist steil. Ansible hilft dabei das Wissen in der Konfiguration (Ansible-Setup) festzuhalten, so dass jederzeit ein DevOps Nachfolger an der Stelle einfach weiter arbeiten kann wo aufgehört wurde. Denn der Code dient als Dokumentation und alles ist reproduzierbar.

Redaktionelle Leitung:

Stefan Schmidlin, Bildungsberatung, Content-Team Modula AG

Quellen

Website des Schweizerischen Sekretariats für Bildung, Forschung und Innovation SBFI , Website www.berufsberatung.ch (offizielles schweizerisches Informationsportal der Studien-, Berufs- und Laufbahnberatung) sowie Websites und anderweitige Informationen der Berufsverbände und Bildungsanbieter.


Erfahrungen, Bewertungen und Meinungen zur Ausbildung / Weiterbildung

Aperçu de la vidéo «4 Schritte zur richtigen Weiterbildung»

Vous n'avez pas encore trouvé la formation initiale ou continue qui vous convient ? Profitez maintenant d'un conseil en formation !

Se former n'est pas seulement important pour maintenir ou augmenter l'attractivité professionnelle, investir dans une formation initiale ou continue reste le moyen le plus efficace d'augmenter ses chances d'obtenir une augmentation de salaire.

Le système éducatif suisse offre un grand choix de possibilités individuelles de formation et de perfectionnement - en fonction du niveau de formation personnel, de l'expérience professionnelle et de l'objectif de formation.

Le choix de la bonne offre de formation n'est pas facile pour de nombreuses personnes intéressées par la formation.

Quelle est la formation initiale et continue qui me convient le mieux ?

Notre équipe de conseillers en formation vous guide dans la "jungle de la formation", vous donne des informations concrètes et des informations de fond pertinentes pour choisir la bonne offre.

Vos avantages :

Vous recevrez

  • Propositions de cours, séminaires ou stages appropriés sur la base des informations que vous avez fournies dans le questionnaire.
  • Une vue d'ensemble des différents niveaux et types d'éducation
  • Renseignements sur le système éducatif suisse

Sur demande, nous proposons nos conseils en matière de formation dans les langues suivantes : français, italien, anglais

Inscrivez-vous maintenant et concrétisez vos projets de formation continue.

 


Sofort zur richtigen Weiterbildung

Filtrer par forme d'enseignement:
Apprentissage mixte (0) Autres (0)
Adresse:
Kronenstrasse 11
8735 St. Gallenkappel
ExperTeach AG
Nous soutenons le monde des TIC avec des formations, des certifications et des prestations de conseil. Vous trouverez chez nous des cours de fabricants tels que Cisco ou Trend Micro et dans le domaine de la gestion informatique. Avec notre propre série de séminaires ExperTeach Networking, nous vous fournissons un savoir-faire technologique sur tous les thèmes importants des TIC et sur les tendances actuelles du secteur.
Région: Aargau, Basel, Bern, Liechtenstein, Ostschweiz, Tessin, Westschweiz, Zentralschweiz, Zürich
Sites: Zürich, Frankfurt/Dietzenbach, Wien, Düsseldorf, Hamburg, München

Schulen mit zertifizierter Bildungsberatung