From b813466e2b2a8bc24e4a81e7d76fe521a81c3de0 Mon Sep 17 00:00:00 2001 From: Martijn Remmen Date: Wed, 13 Apr 2022 18:13:05 +0200 Subject: [PATCH] Ansible DSL toegelicht --- chapters/4 - resultaten.tex | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/chapters/4 - resultaten.tex b/chapters/4 - resultaten.tex index dc60013..bd80e9a 100644 --- a/chapters/4 - resultaten.tex +++ b/chapters/4 - resultaten.tex @@ -182,6 +182,27 @@ Ansible is door KEMBIT als automatiseringstool naar keuze verkozen dankzij de fl Na evaluatie door het networking team wordt de tool als zeer potentieel beschouwd dankzij het uitgebreide assortiment aan netwerkmodules en officiele ondersteuning voor het automatiseren van netwerk gerelateerde taken waaronder configuratie. +\subsubsection*{Declaratieve Domain Specific Language} + +Met Ansible kunnen gebruikers de gewenste staat van hun infrastructuur vastleggen in een Domain Specific Language (afgekort 'DSL'). Deze DSL is gebaseerd op YAML in combinatie met text templating door Jinja2. De doelstelling van deze DSL is om relatief gemakkelijk te kunnen schrijven, lezen en onderhouden zonder over uitgebreide programmeerervaring te beschikken. Daarnaast is het doel om alsnog zeer flexibel te zijn door onder andere het aanbieden van text templating functionaliteit waardoor het onder andere mogelijk is om gebruik te maken van bepaalde variabelen in text (zie regel 8 in figuur \ref{fig:playbook_voorbeeld}). + +\begin{figure}[h] +\begin{lstlisting}[numbers=left] +- name: Configureer switches + hosts: switches + + tasks: + - name: motd banner + cisco.ios.ios_banner: + banner: motd + text: "Dit is switch {{hostname}}" + state: present +\end{lstlisting} +\caption{Voorbeeld van een Ansible playbook} +\label{fig:playbook_voorbeeld} +\end{figure} + + \subsubsection*{Functionaliteit voor netwerkautomatie}