2026-08-04 06:12:38 +02:00

75 lines
2.9 KiB
INI

; [all:vars]
; ansible_user=ubuntu-s # using same user for all VMs
; # If you use the SSH key method above:
; # ansible_ssh_private_key_file=~/.ssh/id_rsa
; # using mounted private key from windows folder structure from does not work
; #ansible_ssh_private_key_file=/mnt/c/Users/wendg2/.ssh/id_ed25519
; ansible_ssh_private_key_file=~/.ssh/id_ed25519
; [master]
; 192.168.3.91
; [workers]
; 192.168.3.93
; 192.168.3.92
; 192.168.3.94
;[master]
;192.168.3.91 ansible_user=master-1
;192.168.3.120 ansible-user=master
;192.168.3.97 ansible-user=master-7
[master]
invixel-ubuntu4 ansible_host=192.168.3.156 ansible_user=master
invixel-vm1 ansible_host=192.168.3.91 ansible_user=master-1
invixel-vm7 ansible_host=192.168.3.97 ansible_user=master-7
;ssh-keygen -t ed25519 -C "josh@admin" -> generiere ssh schlüssel paar einfach zweimal leer Enter drücken
;sudo visudo : in the server you want to add
;add master ALL=(ALL) NOPASSWD:ALL
; oder echo "master ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/master -> invixel-ubuntu2
; for debian: echo "master ALL=(ALL) NOPASSWD:ALL" | tee /etc/sudoers.d/master
; --> alternativ ohne Änderung auf Visudo mit -K ask nach Root Password
; ansible-playbook -i hosts.ini k3s-remote-control.yaml -K
; for debian: chmod 0440 /etc/sudoers.d/master
;ssh-copy-id -i ~/.ssh/id_ed25519 master@192.168.3.156 -> kopiere auf die Server
# different user name
[pure_dbworkers]
invixel-ubuntu2 ansible_host=192.168.3.155 ansible_user=master
;192.168.3.122 ansible_user=master
invixel-vm5 ansible_host=192.168.3.95 ansible_user=master-5
invixel-vm6 ansible_host=192.168.3.96 ansible_user=master-6
invixel-ubuntu3 ansible_host=192.168.3.153 ansible_user=master
invixel-ubuntu5 ansible_host=192.168.3.154 ansible_user=master
[workers]
invixel-debian1 ansible_host=192.168.3.151 ansible_user=master
invixel-ubuntu5 ansible_host=192.168.3.154 ansible_user=master
invixel-ubuntu3 ansible_host=192.168.3.153 ansible_user=master
# Hier bündeln wir die echten DB-Worker inklusive dem Master vm7
[dbworkers:children]
pure_dbworkers
[dbworkers:hosts]
invixel-vm1 # Ansible weiß jetzt, dass vm1 hier dazugehört und nutzt die IP/User von oben!
invixel-vm7
# This group combines both for easy targeting
[k8s_nodes:children]
master
workers
[k3s_agents:children]
pure_dbworkers
workers
# [k8s_nodes:vars]
# # Ensure Ansible uses the correct Python on the remote nodes
# ansible_python_interpreter=/usr/bin/python3
# # If you use the same SSH key for all:
# ansible_ssh_private_key_file=~/.ssh/id_rsa
# Das Endergebnis im Cluster
# Sobald dein Playbook durchgelaufen ist und du auf deinem Laptop kubectl get nodes eingibst, sieht deine Topologie so aus:
# 3 Master (HA-Control-Plane mit etcd): invixel-vm1, invixel-vm7 und invixel-ubuntu4. Alle drei können auch Pods ausführen.
# 3 dedizierte DB-Worker: .92, .93, .94 (plus invixel-vm7 als Master-DB-Hybrid).
# 5 dedizierte normale Worker: .95, .96, .153, .154, .155 (plus invixel-ubuntu4 als Master-Worker-Hybrid).