matthiaslohr.hvswitch_k8s
Ansible-Rolle für Hetzner vSwitches für Kubernetes
Diese Ansible-Rolle ermöglicht die Konfiguration von Hetzner vSwitches und Servern für Kubernetes-Cluster, die zusätzliche vSwitch-basierte Subnetze unterstützen.
Weder dieses Projekt noch die Autoren sind mit Hetzner verbunden. Es handelt sich um ein privates Projekt von Hetzner-Kunden.
Projektziele / Funktionen
Mit dieser Ansible-Rolle können Sie Hetzner vSwitches ganz einfach auf Ihren Hetzner-Servern konfigurieren. Wenn Sie zusätzlich ein vSwitch-basiertes Subnetz haben, konfiguriert die Rolle alle Routen und IP-Regeln, die erforderlich sind, um das Subnetz innerhalb Ihres vSwitch-Netzwerks zu verwenden. Die Konfiguration ist mit MetalLB kompatibel, um MetalLB-basierte HA Kubernetes LoadBalancers zu ermöglichen.
Die Rolle wird die vSwitch-Konfiguration auf den Servern gemäß dem offiziellen Hetzner-Tutorial durchführen. Die Rolle wird nicht den vSwitch erstellen oder die IPs im Hetzner-Roboter registrieren.
Konfiguration
Alle zu konfigurierenden vSwitches müssen unter dem Schlüssel vswitch
definiert werden.
Die folgende Beispielkonfiguration zeigt, wie die Konfiguration für die Einrichtung eines vSwitch mit VLAN-ID 4000 aussehen sollte:
vswitches:
- name: public # Name des vSwitch, wird für die Benennung der Routing-Tabelle verwendet.
routing_table: 1 # ID für die Routing-Tabelle.
vlan: 4000 # VLAN-ID für den vSwitch. Von Hetzner werden 4000-4091 unterstützt.
gateway: 327.0.0.1 # Wenn der vSwitch ein Subnetz hat, sollte diese Variable die Gateway-IP-Adresse des Subnetzes enthalten.
addresses: # IP-Adressen für das vSwitch-Netzwerkschnittstelle (pro Host)
- "{{ hostvars[inventory_hostname]['ip'] }}/24"
subnets: # Subnetze, die im vSwitch verfügbar sind (müssen im Hetzner-Roboter registriert sein) für nicht-private Netzwerke
- subnet: 327.0.0.0/24
Die Rolle wird diese Informationen verwenden, um eine netplan-Konfigurationsdatei zu schreiben.
Ansible role for setting up Hetzner vSwitches and server networking for Kubernetes
ansible-galaxy install matthiaslohr.hvswitch_k8s