Hero Image

Installazione Ansible

Oggi iniziamo il viaggio all'interno di Ansbile, un tool di automazione che ci consentira' di gestire meglio i nostri server.

Andiamo a preparare il laboratorio che nel nostro caso sara' un server Alma (Redhat 9), un server Ubuntu (22.04 LTS) e una Fedora 36.

Andremo ad installare il nostro server Ansible su Alma quindi come prima cosa aggiorniamo tutti i pacchetti:

dnf update -y
dnf upgrade -y

update0

Ora andiamo ad installare i repository Epel che contengono il nostro pacchetto Ansible

dnf install epel-release

epel

A questo punto per trovare il pacchetto dobbiamo prima di tutto riaggiornare col comando

dnf update

update1

A questo punto andiamo ad installare Ansbile con il comando

dnf install ansible

ansible_pkg

Ora per andare ad interagire con gli altri server dobbiamo usare l'autenticazione tramite chiave ssh in modo che non debba essere interattiva, per fare cio' i passaggi sono:

  • creare una chiave ssh sul server Alma
  • propagare la chiave sugli altri server
  • Fare in modo che l'utente che usera' ansible per connettersi sia nel gruppo dei sudoers e possa dare i comandi senza la richiesta di password

Iniziamo con la generazione della chiave SSH

ssh-keygen

ssh_keygen

Andiamo quindi a distribuire la nostra chiave alle altre macchine con il comando ssh-copy-id

ssh-copy-id parallels@10.211.55.6
ssh-copy-id parallels@10.211.55.4

A questo punto andiamo a fare in modo che l'utente che usera' Ansible non debba inserire la password quando switcha a root, per farlo andiamo sulle singole macchine con l'utente che usera' ansible e diamo il comando

echo "$(whoami) ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/$(whoami)

Ora non ci rimane che crearci il database degli hosts che usera' Ansible, nel nostro caso lo faremo molto piccolo ma vedremo un'opzione interessante che ci consetira' di specificare l'utente che verra' usato.

sudo vim /etc/ansible/hosts

hosts

L'opzione e' ansible_user=parallels

L'altra cosa da notare e' la scritta [linux] che fara' in modo di definire il gruppo Linux all'interno dell'invocazione, utile se vogliamo definire gruppi logici (Webserver, Database, etc)

Per vedere che la comunicazione tra il server Ansible e i client funzioni andiamo ad eseguire un ping

ansible -m ping linux

ping

Other Related Posts:

KREDS Intro

KREDS Intro

KREDS (prossimamente spiegherò l’origine del nome) è un ecosistema nato per impratichirmi nell’arte del coding in GO e per realizzare il mio grande side project, il mio secondo cervello che mi aiuti ad automatizzare tutta la mia vita togliendomi il peso delle attività ripetitive e di scouting mattu...

30th Dec 2023
Logical volume

Logical volume

Dopo aver visto Volume Group e Physical Volume oggi andiamo prendere dimestichezza con i Logical Volume

Comandi Base

lvs

Mostra l'output compresso dei Logical Volume disponibili nel sistema da cui si vede
lvs

Se volessimo invece vedere le informazioni piu' dettagliate dovremmo dare il c...

30th Nov 2022