fix(cluster): 消除发布前门禁假阴性

发布前巡检在 pipefail 下直接将 K3s readyz 管给 grep -q,可能因 SIGPIPE 误报 etcd 失败;链路和 PostgreSQL 断言失败时也缺少可定位证据。

改为完整读取 readyz,输出六向链路指标,并为复制、归档、备份和配置投影增加明确失败原因;同时缩短 10 包探测间隔,不改变丢包与 RTT 门槛。

验证:bash -n、ShellCheck、生产 precutover 只读巡检。
This commit is contained in:
2026-07-31 23:34:22 +08:00
parent 709434a256
commit 744e4acd1f
2 changed files with 62 additions and 19 deletions
+1 -1
View File
@@ -1954,7 +1954,7 @@ verify_wireguard() {
local max_rtt=$3
local label=$4
local output loss average handshakes now latest age
output=$(cluster_ssh "$source_host" "ping -q -c 10 -W 2 $target_ip")
output=$(cluster_ssh "$source_host" "ping -q -i 0.2 -c 10 -W 2 $target_ip")
loss=$(awk -F',' '/packet loss/ {gsub(/[^0-9.]/, "", $3); print $3}' <<<"$output")
average=$(awk -F'=' '/min\\/avg\\/max/ {split($2, values, \"/\"); gsub(/ /, "", values[2]); print values[2]}' <<<"$output")
[[ -n $loss && -n $average ]]