Anwendungen mit Ansible installieren: Unterschied zwischen den Versionen
Tim00 (Diskussion | Beiträge) |
Tim00 (Diskussion | Beiträge) |
||
Zeile 37: | Zeile 37: | ||
== Ein Playbook ausführen == | == Ein Playbook ausführen == | ||
Man muss dann das Repo des Ansible Playbooks auf dem eigenen lokalen Rechner clonen, mit git clone, siehe README. | Man muss dann das Repo des Ansible Playbooks auf dem eigenen lokalen Rechner clonen, mit <code>git clone</code>, siehe README. | ||
hans@localhost:~$ git clone https://github.com/<URL REPO>/Hostsharing-Ansible-<IRGENDWAS>.git | hans@localhost:~$ git clone https://github.com/<URL REPO>/Hostsharing-Ansible-<IRGENDWAS>.git | ||
Dann am besten die Datei inventory-sample.yml zu inventory.yml kopieren, und die eigenen Daten entsprechend dort eintragen. | Dann am besten die Datei <code>inventory-sample.yml</code> zu <code>inventory.yml</code> kopieren, und die eigenen Daten entsprechend dort eintragen. | ||
Wir gehen davon aus, dass wir den Zugang zu xyz00.hostsharing.net als Benutzer xyz00 über SSH Key eingerichtet haben. | Wir gehen davon aus, dass wir den Zugang zu <code>xyz00.hostsharing.net</code> als Benutzer <code>xyz00</code> über SSH Key eingerichtet haben. | ||
Dann das Playbook aufrufen, auf dem lokalen Rechner (dort muss Ansible installiert sein): | Dann das Playbook aufrufen, auf dem lokalen Rechner (dort muss Ansible installiert sein): | ||
Zeile 50: | Zeile 50: | ||
hans@localhost:~$ ansible-playbook -i inventory.yml playbook-install.yml | hans@localhost:~$ ansible-playbook -i inventory.yml playbook-install.yml | ||
Zum Debuggen will man nicht nochmal alle Aufgaben durchführen, die bereits erledigt sind. Dann gibt es den Parameter start-at-task, wo man den Namen der Task angibt, bei der gestartet werden soll: | Zum Debuggen will man nicht nochmal alle Aufgaben durchführen, die bereits erledigt sind. Dann gibt es den Parameter <code>start-at-task</code>, wo man den Namen der Task angibt, bei der gestartet werden soll: | ||
hans@localhost:~$ ansible-playbook -i inventory.yml playbook-install.yml -start-at-task="install the certificates" | hans@localhost:~$ ansible-playbook -i inventory.yml playbook-install.yml \ | ||
-start-at-task="install the certificates" |
Version vom 19. Mai 2022, 21:28 Uhr
Übersicht
Siehe die Kategorie:Ansible_Playbook für eine Liste von Anwendungen, für die wir bereits ein Ansible Skript haben.
In der README des Playbook Repositories wird beschrieben, wie man das Playbook bei Hostsharing benutzt.
Vorbereitungen
Vorbereitung im Paket Admin
Wichtig ist, dass man den xyz00 Benutzer entsprechend vorbereitet: Es muss eine Datei mit dem Namen ".hsadmin.properties" im HOME Verzeichnes des Paket Admins xyz00 angelegt werden. Man muss den Paketnamen und das Passwort des Paket Admins in dieser Datei hinterlegen.
Beispiel:
xyz00@h99:~$ cat .hsadmin.properties xyz00.passWord=insertpkgadminpasswordhere
Diese Datei sollte geschützt werden, weil sie sonst von allen gelesen werden könnte:
xyz00@h99:~$ chmod 600 .hsadmin.properties
Ansible lokal installieren
z.B. auf Debian:
apt-get install ansible
ssh config anpassen
Für jeden Schritt wird per Voreinstellung eine eigene SSH Verbindung aufgebaut. Damit der Server nicht denkt, er wird angegriffen, müssen in der eigenen SSH Client Konfiguration auf dem lokalen Rechner die folgenden Einstellungen vorgenommen werden.
In der Datei `$HOME/.ssh/config`:
Host *.hostsharing.net ControlPath ~/.ssh/cm-%r@%h:%p ControlMaster auto ControlPersist 10m
Ein Playbook ausführen
Man muss dann das Repo des Ansible Playbooks auf dem eigenen lokalen Rechner clonen, mit git clone
, siehe README.
hans@localhost:~$ git clone https://github.com/<URL REPO>/Hostsharing-Ansible-<IRGENDWAS>.git
Dann am besten die Datei inventory-sample.yml
zu inventory.yml
kopieren, und die eigenen Daten entsprechend dort eintragen.
Wir gehen davon aus, dass wir den Zugang zu xyz00.hostsharing.net
als Benutzer xyz00
über SSH Key eingerichtet haben.
Dann das Playbook aufrufen, auf dem lokalen Rechner (dort muss Ansible installiert sein):
hans@localhost:~$ cd Hostsharing-Ansible-<IRGENDWAS> hans@localhost:~$ ansible-playbook -i inventory.yml playbook-install.yml
Zum Debuggen will man nicht nochmal alle Aufgaben durchführen, die bereits erledigt sind. Dann gibt es den Parameter start-at-task
, wo man den Namen der Task angibt, bei der gestartet werden soll:
hans@localhost:~$ ansible-playbook -i inventory.yml playbook-install.yml \ -start-at-task="install the certificates"