Files
michaelschiemer/ansible/netcup-simple-deploy/test-connectivity.sh
Michael Schiemer 55a330b223 Enable Discovery debug logging for production troubleshooting
- Add DISCOVERY_LOG_LEVEL=debug
- Add DISCOVERY_SHOW_PROGRESS=true
- Temporary changes for debugging InitializerProcessor fixes on production
2025-08-11 20:13:26 +02:00

75 lines
2.3 KiB
Bash
Executable File
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
# Test Production Server Connectivity
set -e
SERVER="94.16.110.151"
USER="deploy"
SSH_KEY="~/.ssh/production"
echo "🔧 Production Server Connectivity Test"
echo "========================================"
echo "Server: $SERVER"
echo "User: $USER"
echo "SSH-Key: $SSH_KEY"
echo ""
# 1. SSH Key Test
echo "1⃣ SSH-Key Test..."
if ssh-keygen -l -f $SSH_KEY.pub &>/dev/null; then
echo "✅ SSH-Key ist gültig"
ssh-keygen -l -f $SSH_KEY.pub
else
echo "❌ SSH-Key Problem"
exit 1
fi
echo ""
# 2. SSH Connectivity Test
echo "2⃣ SSH Connectivity Test..."
if ssh -i $SSH_KEY -o ConnectTimeout=10 -o StrictHostKeyChecking=no $USER@$SERVER 'echo "SSH Connection successful"' 2>/dev/null; then
echo "✅ SSH Connection erfolgreich"
else
echo "❌ SSH Connection fehlgeschlagen"
echo "Möglicherweise ist der Server noch nicht bereit oder SSH-Key nicht konfiguriert"
exit 1
fi
echo ""
# 3. System Info
echo "3⃣ Server System Information..."
ssh -i $SSH_KEY $USER@$SERVER 'echo "Hostname: $(hostname)" && echo "OS: $(cat /etc/os-release | grep PRETTY_NAME)" && echo "Kernel: $(uname -r)" && echo "Uptime: $(uptime -p)" && echo "Available space: $(df -h / | tail -1 | awk "{print \$4}")"'
echo ""
# 4. Docker Readiness Check
echo "4⃣ Docker Readiness Check..."
if ssh -i $SSH_KEY $USER@$SERVER 'which docker &>/dev/null && which docker-compose &>/dev/null'; then
echo "✅ Docker bereits installiert"
ssh -i $SSH_KEY $USER@$SERVER 'docker --version && docker-compose --version'
else
echo "⚠️ Docker noch nicht installiert (wird durch Ansible installiert)"
fi
echo ""
# 5. Ansible Ping Test
echo "5⃣ Ansible Ping Test..."
cd "$(dirname "$0")"
if ansible netcup-server -i inventory/hosts.yml -m ping; then
echo "✅ Ansible Ping erfolgreich"
else
echo "❌ Ansible Ping fehlgeschlagen"
exit 1
fi
echo ""
# 6. Ansible Gather Facts
echo "6⃣ Ansible System Facts..."
ansible netcup-server -i inventory/hosts.yml -m setup -a "filter=ansible_distribution*" | grep -A 10 '"ansible_distribution"'
echo ""
echo "🎉 Connectivity Test erfolgreich abgeschlossen!"
echo ""
echo "Nächste Schritte:"
echo "1. Deployment-Playbook ausführen: ansible-playbook -i inventory/hosts.yml deploy.yml"
echo "2. SSL-Zertifikate konfigurieren"
echo "3. Monitoring einrichten"