import paramiko import sys sys.stdout.reconfigure(encoding='utf-8') key_path = r'C:\Users\Snarf\.ssh\id_ed25519_snarfnet' def flush_pihole(ip, name): print(f"Flushing Pi-hole DNS cache on {name} ({ip})...") ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect(ip, username="root", key_filename=key_path, timeout=5) stdin, stdout, stderr = ssh.exec_command("k3s kubectl get pods -n dns -l app=pihole -o jsonpath='{.items[0].metadata.name}'") pod = stdout.read().decode().strip() stdin, stdout, stderr = ssh.exec_command(f"k3s kubectl exec -n dns {pod} -- pihole restartdns") print(stdout.read().decode().strip()) ssh.close() flush_pihole("140.44.4.11", "Aerodrome") flush_pihole("140.44.4.41", "Spaceport")