feat: add administrative and deployment scripts for infrastructure management
This commit is contained in:
33
scripts/investigate_dns_stubs.py
Normal file
33
scripts/investigate_dns_stubs.py
Normal file
@@ -0,0 +1,33 @@
|
||||
import paramiko
|
||||
import sys
|
||||
|
||||
sys.stdout.reconfigure(encoding='utf-8')
|
||||
|
||||
key_path = r"C:\Users\Snarf\.ssh\id_ed25519_snarfnet"
|
||||
|
||||
def check(host, name):
|
||||
print(f"\n=================== {name} ({host}) ===================")
|
||||
c = paramiko.SSHClient()
|
||||
c.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
||||
c.connect(host, username="root", key_filename=key_path, timeout=10)
|
||||
|
||||
print("\n--- Namespaces ---")
|
||||
stdin, stdout, stderr = c.exec_command("k3s kubectl get ns")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
|
||||
print("\n--- Services with port 53 or pihole/technitium/dns in all namespaces ---")
|
||||
stdin, stdout, stderr = c.exec_command("k3s kubectl get svc -A | grep -E '53|dns|pihole|technitium'")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
|
||||
print("\n--- Deployments / StatefulSets with dns/pihole/technitium ---")
|
||||
stdin, stdout, stderr = c.exec_command("k3s kubectl get deploy,sts,ds -A | grep -E 'pihole|technitium|unbound|dns'")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
|
||||
print("\n--- MetalLB IPAddressPool or Services with LoadBalancer ---")
|
||||
stdin, stdout, stderr = c.exec_command("k3s kubectl get ipaddresspool -A 2>/dev/null; k3s kubectl get svc -A --field-selector spec.type=LoadBalancer")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
|
||||
c.close()
|
||||
|
||||
check("140.44.4.11", "Aerodrome")
|
||||
check("140.44.4.41", "Spaceport")
|
||||
Reference in New Issue
Block a user