Zentrale Paketverwaltung für 15 Rechner -- mit ansible? [gelöst] mit clusterssh

Du suchst ein Programm für einen bestimmten Zweck?
Antworten
dkalle
Beiträge: 8
Registriert: 12.03.2009 01:16:30

Zentrale Paketverwaltung für 15 Rechner -- mit ansible? [gelöst] mit clusterssh

Beitrag von dkalle » 13.06.2020 00:10:07

Liebe Leute,

Kurzversion: ich suche eine möglichst einfache Lösung, um bei 15-20 Bürorechnern (alle mit Debian Stretch) zentral Pakete zu installieren und Updates zu machen. Ich habe etwas rumgesucht und habe den Eindruck, dass Debianansible das Tool meiner Wahl ist und frage daher die Weisheit des Forums: Stimmt das?

Lange Version: Ich administriere 15 Bürorechner, auf denen Debian Stretch läuft. Als wir (von Windows XP) auf Debian umgestellt haben, waren es noch fünf Rechner, wenn ich da was neues installieren wollte (weil, sagen wir, die Kolleg*innen jetzt doch Pidgin wollten statt Gajim), habe ich mich auf allen fünf Rechnern per SSH eingeloggt, das Paket installiert und gut war's. Nun ist der Laden gewachsen und ich würde gerne eine Lösung haben, mit der ich in einem Aufwasch
  • auf allen 15 Rechnern Programm XY installieren kann
  • auf allen 15 Rechner apt update && apt upgrade ausführen kann
Die Möglichkeit, Konfigurationsdateien zu bearbeiten brauche ich nicht.
Auf Thin Clients umstellen will ich auch nicht.
Die Lösung soll möglichst KISS sein.

Mein Eindruck nach einigem Gesuche ist, dass Debianansible die beste Lösung dafür ist.
Würdet Ihr mir da zustimmen oder gibt es noch was besseres?
Zuletzt geändert von dkalle am 16.06.2020 21:55:45, insgesamt 1-mal geändert.

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: Zentrale Paketverwaltung für 15 Rechner -- mit ansible?

Beitrag von eggy » 13.06.2020 00:31:08

Ja, ansible wäre ein Ansatz. Bei Dir vielleicht aber etwas zuviel des Guten.
Wirf mal nen Blick auf cluster-ssh, damit kannst Du auf mehreren Rechnern Befehle gleichzeitig absetzen, und bei Bedarf trotzdem in die jeweilige Session eingreifen.

Benutzeravatar
Blackbox
Beiträge: 4289
Registriert: 17.09.2008 17:01:20
Lizenz eigener Beiträge: GNU Free Documentation License

Re: Zentrale Paketverwaltung für 15 Rechner -- mit ansible?

Beitrag von Blackbox » 13.06.2020 00:54:44

Eine weitere Möglichkeit wäre, dein Vorhaben über das FAI-Projekt zu lösen.
Die entsprechenden Pakete sind im offiziellem Debian Repository.

Debianfai-server, Debianfai-client und verwandte Pakete.

Das ist eine Kurzbeschreibung von FAI.
Eigenbau PC: Debian Sid - Kernel: 6.5.13 - Xfce 4.18 mit sway
Desktop PC: Dell Inspiron 530 - Debian Sid - Kernel: 6.5.13 - Xfce 4.18 mit sway
Notebook: TUXEDO BU1406 - Debian Sid - Kernel: 6.5.13 - Xfce 4.18 mit sway
Alles Minimalinstallationen und ohne sudo/PA/PW.
Rootserver: Rocky Linux 9.3 - Kernel: 5.14

Freie Software unterstützen, Grundrechte stärken!

inne
Beiträge: 3281
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Zentrale Paketverwaltung für 15 Rechner -- mit ansible?

Beitrag von inne » 13.06.2020 07:19:50

Ansible ist top! Ich habe das für einen kleinen Fuhrpark, um dort mit wenig Aufwand die Updates zu installieren. Das Playbook ist von Upstream (Der Rest nicht^^).

Code: Alles auswählen

# apt-get install python3-pip python3-setuptools python3-wheel python3-venv

$ cat ~/ansible/requirements.txt 
ansible

$ mkdir ~/ansible && cd ~/ansible
$ python3 -m venv env
$ source env/bin/activate
$ pip install -r requirements.txt

$ cat ~/ansible/inventory.ini
# inventory.ini
#
# Liste von Servern
# Installiere nur Aktualisierungen
#
# Usage:
# $ cd ~/ansible
# $ source env/bin/activate
# $ ansible-playbook -i inventory.ini playbook.yml

[all:vars]
ansible_connection=ssh
ansible_ssh_user=root

[hosts]
62.122.24.12 ansible_ssh_pass=top-secret
62.122.243.12 ansible_ssh_pass=top-secret
26.31.112.13 ansible_ssh_user=root ansible_ssh_pass=top-secret
...

$ cat ~/ansible/playbook.yml 
#!/usr/bin/env -S ansible-playbook
---
- hosts: all
  tasks:
  - name: Upgrade all packages to the latest version
    apt:
      force_apt_get: True
      name: "*"
      state: latest
      update_cache: yes
PS: Hoffe es hilft Dir wie mir seinerzeit, danke nochmal ans Forum hier :THX:
PPS: Um Pakete zu installieren, kann man das Playbook entsprechend um einen Task erweitern.
Zuletzt geändert von inne am 13.06.2020 08:13:17, insgesamt 3-mal geändert.

schwedenmann
Beiträge: 5528
Registriert: 30.12.2004 15:31:07
Wohnort: Wegberg

Re: Zentrale Paketverwaltung für 15 Rechner -- mit ansible?

Beitrag von schwedenmann » 13.06.2020 07:44:20

Hallo

Neben Ansible und Fai, kämen dann noch rex

https://hackspoiler.de/rex-zentrale-lin ... erwaltung/

oder auch das Projekt m23 in Frage
https://m23.sourceforge.io/PostNuke-0.7 ... ewlang=deu


mfg
schwedenmann
Zuletzt geändert von schwedenmann am 13.06.2020 08:39:52, insgesamt 1-mal geändert.

inne
Beiträge: 3281
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Zentrale Paketverwaltung für 15 Rechner -- mit ansible?

Beitrag von inne » 13.06.2020 08:36:23

Achso, für Updates gibt es noch Debianunattended-upgrades. Das macht vlt. den selben Job. Das ist seit mindestens Buster sogar beim D-I dabei, also wohl “production-ready”... Bei Ansible müsste man ggf. noch einen Reboot einbauen: ansible all -a "reboot" und ggf. die Services usw. neustarten.

Bullet64
Beiträge: 49
Registriert: 02.06.2017 19:57:01

Re: Zentrale Paketverwaltung für 15 Rechner -- mit ansible?

Beitrag von Bullet64 » 13.06.2020 11:16:04

eggy hat geschrieben: ↑ zum Beitrag ↑
13.06.2020 00:31:08
Ja, ansible wäre ein Ansatz. Bei Dir vielleicht aber etwas zuviel des Guten.
Wirf mal nen Blick auf cluster-ssh, damit kannst Du auf mehreren Rechnern Befehle gleichzeitig absetzen, und bei Bedarf trotzdem in die jeweilige Session eingreifen.
Danke für diesen wunderbaren Tipp! Macht mir das Leben doch um Länger einfacher. :hail:

Colttt
Beiträge: 2987
Registriert: 16.10.2008 23:25:34
Wohnort: Brandenburg
Kontaktdaten:

Re: Zentrale Paketverwaltung für 15 Rechner -- mit ansible?

Beitrag von Colttt » 13.06.2020 16:42:28

Ich werfe nach FAI auch noch saltstack mit in den Topf..
Debian-Nutzer :D

ZABBIX Certified Specialist

Benutzeravatar
Blackbox
Beiträge: 4289
Registriert: 17.09.2008 17:01:20
Lizenz eigener Beiträge: GNU Free Documentation License

Re: Zentrale Paketverwaltung für 15 Rechner -- mit ansible?

Beitrag von Blackbox » 14.06.2020 01:38:23

Colttt hat geschrieben: ↑ zum Beitrag ↑
13.06.2020 16:42:28
Ich werfe nach FAI auch noch saltstack mit in den Topf..
saltstack ist aber genau wie Debianansible, etwas mehr als nur eine Erweiterung des für das Paketmanagement.
Beide Lösung kann mann aber auch verwenden, um nur Pakete installieren zu lassen.
Ist halt etwas overdressed, da sowohl Debianansible, als auch saltstack wesentlich mehr können, als »nur« Pakete ausrollen.
Eigenbau PC: Debian Sid - Kernel: 6.5.13 - Xfce 4.18 mit sway
Desktop PC: Dell Inspiron 530 - Debian Sid - Kernel: 6.5.13 - Xfce 4.18 mit sway
Notebook: TUXEDO BU1406 - Debian Sid - Kernel: 6.5.13 - Xfce 4.18 mit sway
Alles Minimalinstallationen und ohne sudo/PA/PW.
Rootserver: Rocky Linux 9.3 - Kernel: 5.14

Freie Software unterstützen, Grundrechte stärken!

dkalle
Beiträge: 8
Registriert: 12.03.2009 01:16:30

Re: Zentrale Paketverwaltung für 15 Rechner -- mit ansible?

Beitrag von dkalle » 15.06.2020 20:19:23

eggy hat geschrieben: ↑ zum Beitrag ↑
13.06.2020 00:31:08
Ja, ansible wäre ein Ansatz. Bei Dir vielleicht aber etwas zuviel des Guten.
Wirf mal nen Blick auf cluster-ssh, damit kannst Du auf mehreren Rechnern Befehle gleichzeitig absetzen, und bei Bedarf trotzdem in die jeweilige Session eingreifen.
Ui, das klingt wirklich sehr KISS. Werde ich morgen mal ausprobieren und hier berichten. Danke.

Edit: Ja, clusterssh ist das Tool meiner Wahl, vielen Dank!

Also (falls jemand anders sucht): Wenn man wirklich nur auf einem Haufen Rechner in einem Subnetz hin und wieder mal ein Update auslösen oder ein einzelnes Paket installieren will, reicht es aus, Debianclusterssh zu installieren.

Dann einfach

Code: Alles auswählen

cssh -l USERNAME HOST1 HOST2 HOST3 ... HOST X
Und, juhu, es erscheinen (nebeneinander gekachelt) viele xterm-Fenster für die Hosts und ein TK-Eingabefeld, in das man Eingaben für alle xterms gleichzeitig reintippen kann. Und einzeln lassen sich die Terminals auch nutzen. Toll.

Umfangreichere Sachen würde ich damit nicht machen, aber wie gesagt, nur um dann und dann mal was auf allen Rechnern zu installieren, passt das perfekt.

Abhängigkeiten: ein SSH-Server muss auf allen Rechnern laufen. Debianclusterssh muss nur auf dem Rechner sein, der die Verbindung zu den anderen aufbaut. Da muss allerdings auch X laufen, wobei es hier auch eine ähnliche Lösung mit Debiantmux gibt, dass ohne grafische Benutzeroberfläche auskommt.

Antworten