Ansible DSL toegelicht

This commit is contained in:
2022-04-13 18:13:05 +02:00
parent 3d75412464
commit b813466e2b

View File

@ -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}