Browse Source

Formatierung, template Dateien aufgenommen

efbeff 2 months ago
parent
commit
c60833554c
1 changed files with 46 additions and 31 deletions
  1. 46 31
      Community/Bildung/FF@home/30 Ansible für ff@home aufsetzen.page

+ 46 - 31
Community/Bildung/FF@home/30 Ansible für ff@home aufsetzen.page

@@ -4,13 +4,12 @@ title: Ansible ff@home aufsetzen
 toc: yes
 toc: yes
 ...
 ...
 
 
-
-
 # Software 
 # Software 
 - Debian 12 (bookworm) oder Ubuntu 22.04
 - Debian 12 (bookworm) oder Ubuntu 22.04
 - python3 und ansible
 - python3 und ansible
 
 
      ***** Es empfiehlt sich, eine python virtuelle Umgebung zu verwenden *****  
      ***** Es empfiehlt sich, eine python virtuelle Umgebung zu verwenden *****  
+     Nur für die folgende Paketinstallation sind root-Rechte erforderlich,alle weiteren Terminaleingaben erfolgen als normaler user.   
      Die folgenden Pakete installieren:    
      Die folgenden Pakete installieren:    
 
 
      sudo apt install python3-pip python3-venv
      sudo apt install python3-pip python3-venv
@@ -32,13 +31,15 @@ Zum Verlassen der Umgebung:
 deactivate  oder Terminal Fenster schliessen
 deactivate  oder Terminal Fenster schliessen
 
 
 Jetzt kann ansible in der ffhome Umgebung installiert werden:    
 Jetzt kann ansible in der ffhome Umgebung installiert werden:    
+
     pip3 install ansible
     pip3 install ansible
 
 
 
 
 18:11:20[frankb@berglap /datadisk/ffhome 0] 
 18:11:20[frankb@berglap /datadisk/ffhome 0] 
 Die Verzeichnistruktur der Testumgebung    
 Die Verzeichnistruktur der Testumgebung    
 
 
-    tree -L 4 /datadisk/ffhome
+    tree -L 4 /datadisk/ffhome    
+
         /datadisk/ffhome
         /datadisk/ffhome
         ├── ansible.cfg
         ├── ansible.cfg
         ├── bin
         ├── bin
@@ -54,27 +55,24 @@ Die Verzeichnistruktur der Testumgebung
         ├── inventory
         ├── inventory
         │   ├── hosts.yaml
         │   ├── hosts.yaml
         │   └── host_vars
         │   └── host_vars
-        |   │   ├── bergdesk
-        │   │   │   ├── vars
-        │   │   │   ├── vars.01.bak
-        │   │   │   ├── vars.02.bak
-        │   │   │   └── vault
-        │   │   ├── berghofen
-        │   │   │   ├── vars
-        │   │   │   ├── vars.01.bak
-        │   │   │   ├── vars.bak
-        │   │   │   └── vault
-        │   │   ├── berglap
-        │   │   │   ├── vars
-        │   │   │   ├── vars.01.bak
-        │   │   │   ├── vars.bak
-        │   │   │   └── vault
-        │   │   └── luna
-        │   │       ├── vars
-        │   │       └── vault
-        │   └── resources
-        │       └── host
-        │           └── bergdesk
+        |       ├── bergdesk
+        │       │   ├── vars
+        │       │   ├── vars.01.bak
+        │       │   ├── vars.02.bak
+        │       │   └── vault
+        │       ├── berghofen
+        │       │   ├── vars
+        │       │   ├── vars.01.bak
+        │       │   ├── vars.bak
+        │       │   └── vault
+        │       ├── berglap
+        │       │   ├── vars
+        │       │   ├── vars.01.bak
+        │       │   ├── vars.bak
+        │       │   └── vault
+        │       └── luna
+        │           ├── vars
+        │           └── vault
         ├── lib
         ├── lib
         │   └── python3.10
         │   └── python3.10
         ├── lib64 -> lib
         ├── lib64 -> lib
@@ -166,10 +164,10 @@ Datei mit den beteiligten Hosts inventory/hosts.yaml
 Die Gruppen apus und desktops enthalten die testhosts, die Gruppen altlast und supernodes sind nicht komplett einbezogen.
 Die Gruppen apus und desktops enthalten die testhosts, die Gruppen altlast und supernodes sind nicht komplett einbezogen.
 
 
 
 
-Im Verzeichnis inventory/host_vars sind Variablen für die einzelnen hosts, u.a. die passwords, in vars unverschlüsselt, in vault aes256 geschützt. Weiter sind Parameter für tinc enthalten, nur in vars, unverschlüsselt..
+Im Verzeichnis inventory/host_vars sind Variablen für die einzelnen hosts, u.a. die passwords, in vars unverschlüsselt, in vault aes256 geschützt. Weiter sind Parameter für tinc enthalten, nur in vars, unverschlüsselt.
 Beispielhaft für berghofen
 Beispielhaft für berghofen
 
 
-berghofen/vars
+cat berghofen/vars
 
 
 
 
     ---
     ---
@@ -182,7 +180,7 @@ berghofen/vars
     lan_ip: 192.168.34.1/24
     lan_ip: 192.168.34.1/24
 
 
 
 
-berghofen/vault
+cat berghofen/vault
 
 
 
 
     $ANSIBLE_VAULT;1.2;AES256;xx
     $ANSIBLE_VAULT;1.2;AES256;xx
@@ -222,8 +220,7 @@ und wieder entschlüsseln mit
 Es gibt z.Zt. zwei playbooks: update.yaml und tincbuild.yaml
 Es gibt z.Zt. zwei playbooks: update.yaml und tincbuild.yaml
 
 
 
 
-playbooks/update.yaml
-
+cat playbooks/update.yaml
 
 
 
 
     ---
     ---
@@ -296,8 +293,7 @@ playbooks/update.yaml
 
 
     
     
 
 
-playbooks/tincbuild.yaml    
-
+cat playbooks/tincbuild.yaml    
 
 
     ---
     ---
     # name: tincbuild yaml
     # name: tincbuild yaml
@@ -494,6 +490,24 @@ playbooks/tincbuild.yaml
         - meta: end_play
         - meta: end_play
 
 
 
 
+Für tinc-up werden folgende templates verwendet    
+
+cat playbooks/templates/tinc-up.lan.j2
+
+    #!/bin/sh
+
+    ip addr add {{ lan_ip }} brd {{ lan_broadcast_ip }} dev $INTERFACE
+    ip link set $INTERFACE mtu 1504 up
+
+
+
+cat playbooks/templates/tinc-up.wan.j2
+
+    #!/bin/sh
+
+    ip addr add {{ wan_ip }} brd {{ wan_broadcast_ip }} dev $INTERFACE
+    ip link set $INTERFACE mtu 1504 up
+
 
 
 Aufruf der beiden playbooks mit
 Aufruf der beiden playbooks mit
 
 
@@ -573,3 +587,4 @@ Gekürzte Ausgabe:
     hoerde                     : ok=5    changed=0    unreachable=0    failed=0    skipped=1    rescued=0    ignored=0   
     hoerde                     : ok=5    changed=0    unreachable=0    failed=0    skipped=1    rescued=0    ignored=0   
     luna                       : ok=0    changed=0    unreachable=1    failed=0    skipped=0    rescued=0    ignored=0   
     luna                       : ok=0    changed=0    unreachable=1    failed=0    skipped=0    rescued=0    ignored=0   
     
     
+