main
parent
00ecdc166d
commit
16414a66b5
|
|
@ -55,7 +55,14 @@ collect_lxc_summary() {
|
|||
local vmid="$1"
|
||||
local name ip issues=""
|
||||
name=$(pct exec "$vmid" -- sh -c "hostname -s 2>/dev/null || cat /etc/hostname 2>/dev/null || echo lxc-$vmid" 2>/dev/null | head -n1 | tr -d '\r')
|
||||
ip=$(pct exec "$vmid" -- sh -c "(hostname -I 2>/dev/null || ip -4 -o addr show | awk '{print \\\$4}' | cut -d/ -f1) | tr ' ' '\n' | grep '^192\\.168\\.1\\.' | tr '\n' ' ' | sed 's/ *$//'" 2>/dev/null || true)
|
||||
ip=$(pct exec "$vmid" -- sh -c '
|
||||
(
|
||||
hostname -I 2>/dev/null || true;
|
||||
ip -4 -o addr 2>/dev/null | awk "{print \$4}" || true;
|
||||
ip -4 addr 2>/dev/null | awk "/inet /{print \$2}" || true;
|
||||
ifconfig 2>/dev/null | awk "/inet /{print \$2}" || true;
|
||||
grep -oE "([0-9]{1,3}\\.){3}[0-9]{1,3}" /proc/net/fib_trie 2>/dev/null || true
|
||||
) | tr " " "\n" | grep "^192\\.168\\.1\\." | cut -d/ -f1 | sort -u | tr "\n" " " | sed "s/ *$//"' 2>/dev/null || true)
|
||||
# Tailcale check
|
||||
ts_issue=$(check_lxc_tailscale_issue "$vmid")
|
||||
if [ -n "$ts_issue" ]; then
|
||||
|
|
@ -256,13 +263,21 @@ OVR
|
|||
}
|
||||
|
||||
wait_for_endpoints() {
|
||||
echo "[INFO] Esperando endpoints 0.0.0.0:2375 y 0.0.0.0:9023..."
|
||||
echo "[INFO] Esperando endpoints TCP 2375 y 9023 (IPv4/IPv6)..."
|
||||
is_listening_port() {
|
||||
p="$1"
|
||||
if command -v ss >/dev/null 2>&1; then
|
||||
ss -lnt | awk '{print $4}' | tr -d ' ' | grep -Eq "(^|.*:)(0\.0\.0\.0|\*|\[::\]|::):${p}$"
|
||||
else
|
||||
netstat -lnt 2>/dev/null | awk '{print $4}' | tr -d ' ' | grep -Eq "(^|.*:)(0\.0\.0\.0|\*|\[::\]|::):${p}$"
|
||||
fi
|
||||
}
|
||||
EP=0
|
||||
LIMIT=${DOCKER_WAIT_SECONDS:-30}
|
||||
for i in $(seq 1 "$LIMIT"); do
|
||||
API_OK=0; MET_OK=0
|
||||
if ss -lnt 2>/dev/null | grep -q ":2375 "; then API_OK=1; fi
|
||||
if ss -lnt 2>/dev/null | grep -q ":9023 "; then MET_OK=1; fi
|
||||
is_listening_port 2375 && API_OK=1
|
||||
is_listening_port 9023 && MET_OK=1
|
||||
if [ $API_OK -eq 1 ] && [ $MET_OK -eq 1 ]; then EP=1; break; fi
|
||||
sleep 1
|
||||
done
|
||||
|
|
@ -276,19 +291,27 @@ OVR
|
|||
check_listeners() {
|
||||
echo "[INFO] Comprobando puertos en escucha para Docker..."
|
||||
if command -v ss >/dev/null 2>&1; then
|
||||
ss -lnt | awk "{print}"
|
||||
ss -lnt | awk '{print}'
|
||||
elif command -v netstat >/dev/null 2>&1; then
|
||||
netstat -lnt || true
|
||||
fi
|
||||
if ss -lnt 2>/dev/null | grep -q ":2375 "; then
|
||||
echo "[INFO] API Docker TCP escuchando en 0.0.0.0:2375"
|
||||
is_listening_port() {
|
||||
p="$1"
|
||||
if command -v ss >/dev/null 2>&1; then
|
||||
ss -lnt | awk '{print $4}' | tr -d ' ' | grep -Eq "(^|.*:)(0\.0\.0\.0|\*|\[::\]|::):${p}$"
|
||||
else
|
||||
netstat -lnt 2>/dev/null | awk '{print $4}' | tr -d ' ' | grep -Eq "(^|.*:)(0\.0\.0\.0|\*|\[::\]|::):${p}$"
|
||||
fi
|
||||
}
|
||||
if is_listening_port 2375; then
|
||||
echo "[INFO] API Docker TCP escuchando en 2375 (IPv4/IPv6)"
|
||||
else
|
||||
echo "[WARN] API Docker TCP NO detectada en 0.0.0.0:2375"
|
||||
echo "[WARN] API Docker TCP NO detectada en 2375"
|
||||
fi
|
||||
if ss -lnt 2>/dev/null | grep -q ":9023 "; then
|
||||
echo "[INFO] Métricas Docker escuchando en 0.0.0.0:9023"
|
||||
if is_listening_port 9023; then
|
||||
echo "[INFO] Métricas Docker escuchando en 9023 (IPv4/IPv6)"
|
||||
else
|
||||
echo "[WARN] Métricas Docker NO detectadas en 0.0.0.0:9023"
|
||||
echo "[WARN] Métricas Docker NO detectadas en 9023"
|
||||
fi
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue