Ansible gebruiken zonder Vagrant

Vagrant is standaard, maar je kunt Ansible ook direct gebruiken als je dat liever hebt.

Projecten: c2platform/ansible


Deze handleiding beschrijft hoe je Ansible zonder Vagrant kunt gebruiken binnen dit project. Dit vereist slechts een kleine SSH-configuratie in .ssh/config. Het extra voordeel is dat je kunt SSH’en naar de machines zonder Vagrant. In deze opzet begint de c2d-rproxy1-node een extra rol te vervullen als bastion / jump server  .


Overzicht

Er zijn verschillende manieren om Ansible te benutten binnen het c2platform/ansible project. Deze verschillende benaderingen worden geïllustreerd in het PlantUML-diagram hieronder. De standaard en meest efficiënte methode is het gebruik van Vagrant, weergegeven door de zwarte lijn. Vagrant fungeert als een driver voor Ansible via zijn Ansible Provisioner  .

Een andere optie die we momenteel verkennen, weergegeven door de rode lijn, is het direct gebruiken van Ansible zonder Vagrant.

Aanvullende opties voor het gebruik van Ansible zijn:

  • Groene Lijn: Gebruik van de c2d-xtop node, die kan worden aangemaakt (met Vagrant) door vagrant up c2d-xtop uit te voeren. Eenmaal aangemaakt, kun je verbinden via een RDP- of SSH-verbinding door vagrant ssh c2d-xtop uit te voeren.
  • Blauwe Lijn: Gebruik maken van AWX. Raadpleeg de handleiding voor het instellen van AWX: Setup AWX.

SSH-configuratie

Bewerk .ssh/config en voeg de volgende invoer toe. Dit maakt toegang tot alle nodes mogelijk via SSH-hops via c2d-rproxy1.

Host c2d-*
  ProxyCommand ssh 1.1.4.205 -W %h:%p
  User vagrant
  IdentityFile ~/.vagrant.d/insecure_private_key
  StrictHostkeyChecking no
  UserKnownHostsFile /dev/null
  LogLevel INFO
  Compression yes
  ServerAliveInterval 10
  ServerAliveCountMax 10

Verificatie

Start c2d-rproxy1, c2d-rproxy2 en maak verbinding met de nodes via SSH. Let op: we gebruiken ssh en niet vagrant ssh, zodat we Vagrant volledig omzeilen.

vagrant up c2d-rproxy1 c2d-rproxy2
ssh c2d-rproxy1
ssh c2d-rproxy2

Nu zou je ook Ansible direct moeten kunnen draaien, zonder Vagrant, bijvoorbeeld met het volgende commando.

source ~/.virtualenv/uwd/bin/activate
export ANSIBLE_CONFIG=$PWD/ansible-dev.cfg
ansible-playbook plays/mw/reverse_proxy.yml -i hosts-dev.ini --limit c2d-rproxy2

Voorbeeld

Zie Beheer de RWS Ansible Execution Environment voor een praktisch voorbeeld waarvoor dit nuttig is.



Laatst gewijzigd 2024.11.13: nl translation C2-587 (fca5da9)