vm_net_routes-Rolle: statische Routen physischer Hosts in die VM-Netze
Physische Hosts (10.5.85.x) erreichen die VM-internen Netze 10.X.1.0/24 nicht - die liegen auf vmbr0 der Nodes ohne physische NIC-Bindung. Routen via jeweiligem Node (10.1.1->node1 ... 10.7.1->node7) persistent ueber NetworkManager gesetzt. Pi 'butler' erreicht damit den Butler-Dienst (10.4.1.116:8888) - /vm/list verifiziert. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
94c58a80ce
commit
3ddbed1f9f
4 changed files with 42 additions and 0 deletions
15
roles/vm_net_routes/defaults/main.yml
Normal file
15
roles/vm_net_routes/defaults/main.yml
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
---
|
||||
# Statische Routen von physischen Hosts (10.5.85.x) in die VM-internen Netze.
|
||||
# Die VM-Netze 10.X.1.0/24 liegen auf vmbr0 des jeweiligen Proxmox-Nodes (ohne
|
||||
# physische NIC-Bindung) - erreichbar nur ueber den Node, auf dem sie laufen.
|
||||
# NetworkManager-Connection, an die die Routen gehaengt werden:
|
||||
vm_net_routes_nm_connection: "Wired connection 1"
|
||||
|
||||
vm_net_routes:
|
||||
- { dest: "10.1.1.0/24", via: "10.5.85.11" } # node1
|
||||
- { dest: "10.2.1.0/24", via: "10.5.85.12" } # node2
|
||||
- { dest: "10.3.1.0/24", via: "10.5.85.13" } # node3
|
||||
- { dest: "10.4.1.0/24", via: "10.5.85.14" } # node4 (Butler, n8n, dockhand, matrix)
|
||||
- { dest: "10.5.1.0/24", via: "10.5.85.15" } # node5
|
||||
- { dest: "10.6.1.0/24", via: "10.5.85.15" } # node5 (emby-sascha)
|
||||
- { dest: "10.7.1.0/24", via: "10.5.85.17" } # node7 (chris-Stacks)
|
||||
4
roles/vm_net_routes/handlers/main.yml
Normal file
4
roles/vm_net_routes/handlers/main.yml
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
---
|
||||
- name: reactivate nm connection
|
||||
ansible.builtin.command: nmcli connection up "{{ vm_net_routes_nm_connection }}"
|
||||
changed_when: false
|
||||
16
roles/vm_net_routes/tasks/main.yml
Normal file
16
roles/vm_net_routes/tasks/main.yml
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
---
|
||||
# Setzt statische Routen in die VM-Netze persistent via NetworkManager.
|
||||
# Idempotent: nmcli +ipv4.routes mit identischer Liste aendert nichts.
|
||||
|
||||
- name: Routen-Liste fuer nmcli zusammenbauen
|
||||
set_fact:
|
||||
vm_net_routes_str: "{{ vm_net_routes | map(attribute='dest') | zip(vm_net_routes | map(attribute='via')) | map('join', ' ') | join(', ') }}"
|
||||
|
||||
- name: VM-Netz-Routen an NetworkManager-Connection setzen
|
||||
community.general.nmcli:
|
||||
conn_name: "{{ vm_net_routes_nm_connection }}"
|
||||
type: ethernet
|
||||
routes4: "{{ vm_net_routes | map(attribute='dest') | zip(vm_net_routes | map(attribute='via')) | map('join', ' ') | list }}"
|
||||
state: present
|
||||
register: nmcli_result
|
||||
notify: reactivate nm connection
|
||||
Loading…
Add table
Add a link
Reference in a new issue