Beiträge zu “ansible”

Freenas Jails mit Ansible einrichten

Ich möchte die Installation von Diensten in FreeBSD Jails auf meinem Freenas Server mit Ansible automatisieren und dokumentieren. Der Schwerpunkt liegt eher auf der Rekonstruktionsfähigkeit als der vollständigen automatisierung. Deswegen werden einige der Schritte noch händisch durchgeführt.

Auf dem Ansible Adminhost habe ich gemäß dieser Anleitung das python paramiko modul installiert

sudo apt install python3-paramiko

Das Inventory wird dann um eine Gruppe mit dem Host erweitert

[git2blog]
a4j ansible_connection=paramiko

Auf dem FreeBSD Host dann das Jail starten und auf die Console wechseln

iocage start a4j
iocage console a4j

Damit die Konfiguration ähnlich meinen Debian Konfigurationen ist führe ich auch direkt ein paar Basiskonfigurationen durch. Könnte man auch mit Ansible machen aber da ich eh schon da bin ….

pkg update
pkg install python37 sudo
adduser hbauer
echo 'hbauer ALL=(ALL) NOPASSWD: ALL' >/usr/local/etc/sudoers.d/allow-hbauer-user-login
service sshd onestart

Ja ich weiss die Sudo Regel ist ein Scheunentor aber es ist ein interner Rechner und SSH läuft normalerweise nicht.

Jetzt kann ich von meiner Ansible Station einen ersten Test mit Ansible machen.

ansible -u hbauer -i etc-hosts -m ping a4j --ask-pass

a4j | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/local/bin/python3.7"
    },
    "changed": false,
    "ping": "pong"
}

Von hier aus sollte alles normal wie auch bei dem für mich bekannten Debian laufen. Nur sind natürlich die Ansible Module etwas anders. So sieht es dann aus wenn man Software installiert

vi git2blog.yml 
- hosts: a4j
  tasks:
      - name: Add packages on FreeBSD 
        pkgng:
            name: rsync,curl,git,mosquitto


ansible-playbook -b -i etc-hosts git2blog.yml --ask-pass
2.5.20
Weitere Beiträge zu: ansible   freenas   freebsd  

Ansible Ad-hoc Kommandos

Falls Ihr noch mal ein Beispiel braucht warum Ihr euch mal mit Ansible beschäftigen solltet wenn ihr Server verwaltet.

Heute morgen wollte ich sicherheitshalber noch einmal prüfen ob alle Debian Server die aktuelle Version von apt haben

Einfach

ansible  debian-server -a "tail /var/log/apt/history.log"

(debian-server ist eine Liste von Servern die mit Debian laufen. )

23.1.19
Weitere Beiträge zu: ansible  

Ansible Ad-Hoc Kommandos

Darum liebe ich Ansible. Nicht nur das es mir ermöglicht viele Server auf gleichen Konfigurationen zu halten. Man kann auch “mal eben” auf allen Servern einer bestimmten Gruppe prüfen ob ein Task läuft oder ein bestimmtes Software Paket installiert ist.

 ansible production-extern -a "ps -ef" | grep postfix
 ansible production-extern -m apt -a 'name=postfix state=present'

Echt cool.

6.3.18
Weitere Beiträge zu: ansible  

Dies ist ein privater Blog von Hagen Bauer- berufstätiger Vater, Ehemann, Naturliebhaber, Läufer, Zelter, technikverliebt.


Creative Commons License
This blog is licensed under a Creative Commons License