feat: add diagnostic and management scripts for Rancher k3s deployment
This commit is contained in:
29
scripts/check_215_pods.py
Normal file
29
scripts/check_215_pods.py
Normal file
@@ -0,0 +1,29 @@
|
||||
import paramiko
|
||||
import sys
|
||||
|
||||
sys.stdout.reconfigure(encoding='utf-8')
|
||||
|
||||
client = paramiko.SSHClient()
|
||||
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
||||
key_path = r"C:\Users\Snarf\.ssh\id_ed25519_snarfnet"
|
||||
|
||||
client.connect("140.44.4.11", username="root", key_filename=key_path, timeout=15)
|
||||
stdin, stdout, stderr = client.exec_command("KUBECONFIG=/etc/rancher/k3s/k3s.yaml kubectl -n cattle-system get pods -o wide")
|
||||
print("=== PODS IN CATTLE-SYSTEM ===")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
|
||||
stdin, stdout, stderr = client.exec_command("KUBECONFIG=/etc/rancher/k3s/k3s.yaml kubectl -n cattle-system rollout status deployment/rancher --timeout=30s")
|
||||
print("=== ROLLOUT STATUS ===")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
print(stderr.read().decode('utf-8'))
|
||||
|
||||
stdin, stdout, stderr = client.exec_command("curl -k -I -s https://aerodrome.snarfnet.net | head -n 10")
|
||||
print("=== ENDPOINT ===")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
|
||||
stdin, stdout, stderr = client.exec_command("KUBECONFIG=/etc/rancher/k3s/k3s.yaml helm list -n cattle-system")
|
||||
print("=== HELM LIST ===")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
|
||||
client.close()
|
||||
|
||||
20
scripts/check_pod_events.py
Normal file
20
scripts/check_pod_events.py
Normal file
@@ -0,0 +1,20 @@
|
||||
import paramiko
|
||||
import sys
|
||||
|
||||
sys.stdout.reconfigure(encoding='utf-8')
|
||||
|
||||
client = paramiko.SSHClient()
|
||||
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
||||
key_path = r"C:\Users\Snarf\.ssh\id_ed25519_snarfnet"
|
||||
|
||||
client.connect("140.44.4.11", username="root", key_filename=key_path, timeout=15)
|
||||
stdin, stdout, stderr = client.exec_command("KUBECONFIG=/etc/rancher/k3s/k3s.yaml kubectl -n cattle-system describe pod rancher-574bb974f4-877rf | grep -A 10 -B 2 Events:")
|
||||
print("=== POD EVENTS ===")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
|
||||
stdin, stdout, stderr = client.exec_command("KUBECONFIG=/etc/rancher/k3s/k3s.yaml kubectl -n cattle-system describe pod rancher-574bb974f4-877rf | grep -A 15 'Last State:'")
|
||||
print("=== LAST STATE ===")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
|
||||
client.close()
|
||||
|
||||
15
scripts/check_pods_now.py
Normal file
15
scripts/check_pods_now.py
Normal file
@@ -0,0 +1,15 @@
|
||||
import paramiko
|
||||
import sys
|
||||
|
||||
sys.stdout.reconfigure(encoding='utf-8')
|
||||
|
||||
client = paramiko.SSHClient()
|
||||
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
||||
key_path = r"C:\Users\Snarf\.ssh\id_ed25519_snarfnet"
|
||||
|
||||
client.connect("140.44.4.11", username="root", key_filename=key_path, timeout=15)
|
||||
stdin, stdout, stderr = client.exec_command("KUBECONFIG=/etc/rancher/k3s/k3s.yaml kubectl -n cattle-system get pods -l app=rancher -o wide")
|
||||
print("=== RANCHER PODS ===")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
client.close()
|
||||
|
||||
15
scripts/check_probe_values.py
Normal file
15
scripts/check_probe_values.py
Normal file
@@ -0,0 +1,15 @@
|
||||
import paramiko
|
||||
import sys
|
||||
|
||||
sys.stdout.reconfigure(encoding='utf-8')
|
||||
|
||||
client = paramiko.SSHClient()
|
||||
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
||||
key_path = r"C:\Users\Snarf\.ssh\id_ed25519_snarfnet"
|
||||
|
||||
client.connect("140.44.4.11", username="root", key_filename=key_path, timeout=15)
|
||||
stdin, stdout, stderr = client.exec_command("grep -i -C 5 probe /tmp/rancher-2153/rancher/values.yaml")
|
||||
print("Probe in values.yaml:")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
client.close()
|
||||
|
||||
21
scripts/check_rancher_live.py
Normal file
21
scripts/check_rancher_live.py
Normal file
@@ -0,0 +1,21 @@
|
||||
import paramiko
|
||||
import sys
|
||||
|
||||
sys.stdout.reconfigure(encoding='utf-8')
|
||||
|
||||
client = paramiko.SSHClient()
|
||||
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
||||
key_path = r"C:\Users\Snarf\.ssh\id_ed25519_snarfnet"
|
||||
|
||||
client.connect("140.44.4.11", username="root", key_filename=key_path, timeout=15)
|
||||
stdin, stdout, stderr = client.exec_command("KUBECONFIG=/etc/rancher/k3s/k3s.yaml kubectl -n cattle-system get pods -l app=rancher -o wide")
|
||||
print("=== RANCHER PODS ===")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
|
||||
stdin, stdout, stderr = client.exec_command("KUBECONFIG=/etc/rancher/k3s/k3s.yaml kubectl -n cattle-system rollout status deployment/rancher --timeout=30s")
|
||||
print("=== ROLLOUT STATUS ===")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
print(stderr.read().decode('utf-8'))
|
||||
|
||||
client.close()
|
||||
|
||||
17
scripts/check_rancher_logs.py
Normal file
17
scripts/check_rancher_logs.py
Normal file
@@ -0,0 +1,17 @@
|
||||
import paramiko
|
||||
import sys
|
||||
|
||||
sys.stdout.reconfigure(encoding='utf-8')
|
||||
|
||||
client = paramiko.SSHClient()
|
||||
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
||||
key_path = r"C:\Users\Snarf\.ssh\id_ed25519_snarfnet"
|
||||
|
||||
client.connect("140.44.4.11", username="root", key_filename=key_path, timeout=15)
|
||||
stdin, stdout, stderr = client.exec_command("KUBECONFIG=/etc/rancher/k3s/k3s.yaml kubectl -n cattle-system logs -l app=rancher -c rancher --tail=50")
|
||||
print("=== RANCHER LOGS ===")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
print(stderr.read().decode('utf-8'))
|
||||
|
||||
client.close()
|
||||
|
||||
24
scripts/check_revision_11.py
Normal file
24
scripts/check_revision_11.py
Normal file
@@ -0,0 +1,24 @@
|
||||
import paramiko
|
||||
import sys
|
||||
|
||||
sys.stdout.reconfigure(encoding='utf-8')
|
||||
|
||||
client = paramiko.SSHClient()
|
||||
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
||||
key_path = r"C:\Users\Snarf\.ssh\id_ed25519_snarfnet"
|
||||
|
||||
client.connect("140.44.4.11", username="root", key_filename=key_path, timeout=15)
|
||||
stdin, stdout, stderr = client.exec_command("KUBECONFIG=/etc/rancher/k3s/k3s.yaml kubectl -n cattle-system get pods -l app=rancher -o wide")
|
||||
print("=== RANCHER PODS ===")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
|
||||
stdin, stdout, stderr = client.exec_command("KUBECONFIG=/etc/rancher/k3s/k3s.yaml kubectl -n cattle-system get pods -l app=rancher-webhook -o wide")
|
||||
print("=== RANCHER WEBHOOK ===")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
|
||||
stdin, stdout, stderr = client.exec_command("curl -k -I -s https://aerodrome.snarfnet.net | head -n 10")
|
||||
print("=== ENDPOINT ===")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
|
||||
client.close()
|
||||
|
||||
14
scripts/check_startup_probe.py
Normal file
14
scripts/check_startup_probe.py
Normal file
@@ -0,0 +1,14 @@
|
||||
import paramiko
|
||||
import sys
|
||||
|
||||
sys.stdout.reconfigure(encoding='utf-8')
|
||||
|
||||
client = paramiko.SSHClient()
|
||||
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
||||
key_path = r"C:\Users\Snarf\.ssh\id_ed25519_snarfnet"
|
||||
|
||||
client.connect("140.44.4.11", username="root", key_filename=key_path, timeout=15)
|
||||
stdin, stdout, stderr = client.exec_command("KUBECONFIG=/etc/rancher/k3s/k3s.yaml kubectl -n cattle-system get deployment rancher -o jsonpath='{.spec.template.spec.containers[0].startupProbe}'")
|
||||
print("Startup Probe:", stdout.read().decode('utf-8'))
|
||||
client.close()
|
||||
|
||||
25
scripts/tune_startup_probe.py
Normal file
25
scripts/tune_startup_probe.py
Normal file
@@ -0,0 +1,25 @@
|
||||
import paramiko
|
||||
import sys
|
||||
|
||||
sys.stdout.reconfigure(encoding='utf-8')
|
||||
|
||||
client = paramiko.SSHClient()
|
||||
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
||||
key_path = r"C:\Users\Snarf\.ssh\id_ed25519_snarfnet"
|
||||
|
||||
client.connect("140.44.4.11", username="root", key_filename=key_path, timeout=15)
|
||||
|
||||
upgrade_cmd = (
|
||||
"KUBECONFIG=/etc/rancher/k3s/k3s.yaml helm upgrade rancher /tmp/rancher-2153/rancher "
|
||||
"--namespace cattle-system "
|
||||
"--set hostname=aerodrome.snarfnet.net "
|
||||
"--set ingress.tls.source=secret "
|
||||
"--set startupProbe.failureThreshold=36"
|
||||
)
|
||||
|
||||
stdin, stdout, stderr = client.exec_command(upgrade_cmd)
|
||||
print("UPGRADE STDOUT:", stdout.read().decode('utf-8'))
|
||||
print("UPGRADE STDERR:", stderr.read().decode('utf-8'))
|
||||
|
||||
client.close()
|
||||
|
||||
31
scripts/wait_final_rollout.py
Normal file
31
scripts/wait_final_rollout.py
Normal file
@@ -0,0 +1,31 @@
|
||||
import paramiko
|
||||
import sys
|
||||
import time
|
||||
|
||||
sys.stdout.reconfigure(encoding='utf-8')
|
||||
|
||||
client = paramiko.SSHClient()
|
||||
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
||||
key_path = r"C:\Users\Snarf\.ssh\id_ed25519_snarfnet"
|
||||
|
||||
client.connect("140.44.4.11", username="root", key_filename=key_path, timeout=15)
|
||||
|
||||
print("Waiting for deployment/rancher rollout status...")
|
||||
stdin, stdout, stderr = client.exec_command("KUBECONFIG=/etc/rancher/k3s/k3s.yaml kubectl -n cattle-system rollout status deployment/rancher --timeout=360s")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
print(stderr.read().decode('utf-8'))
|
||||
|
||||
stdin, stdout, stderr = client.exec_command("KUBECONFIG=/etc/rancher/k3s/k3s.yaml kubectl -n cattle-system get pods -l app=rancher -o wide")
|
||||
print("=== FINAL RANCHER PODS ===")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
|
||||
stdin, stdout, stderr = client.exec_command("KUBECONFIG=/etc/rancher/k3s/k3s.yaml helm list -n cattle-system")
|
||||
print("=== FINAL HELM RELEASES ===")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
|
||||
stdin, stdout, stderr = client.exec_command("curl -k -I -s https://aerodrome.snarfnet.net | head -n 10")
|
||||
print("=== ENDPOINT ===")
|
||||
print(stdout.read().decode('utf-8'))
|
||||
|
||||
client.close()
|
||||
|
||||
Reference in New Issue
Block a user