fix(deploy): 强化跨节点真实任务验收门禁
修正宁波旧 Worker 在滚动退场期间仍可能领取任务的竞态,提交任务前要求仅保留唯一且明确禁用 Worker 的新 Pod。\n\n为临时验收 Key 分配 gpt-image-2 所需的最小平台访问资源,并让 multipart 参数对齐线上 2K 图像编辑请求。已通过 bash -n、ShellCheck、node --check,并完成真实跨节点任务验收。
This commit is contained in:
@@ -31,6 +31,25 @@ k3s kubectl rollout status deployment/easyai-api-hongkong -n easyai --timeout=30
|
||||
k3s kubectl set env deployment/easyai-api-ningbo -n easyai \
|
||||
AI_GATEWAY_ASYNC_QUEUE_WORKER_ENABLED=false >/dev/null
|
||||
k3s kubectl rollout status deployment/easyai-api-ningbo -n easyai --timeout=300s
|
||||
for _ in $(seq 1 60); do
|
||||
pods=$(k3s kubectl get pods -n easyai \
|
||||
-l app.kubernetes.io/name=easyai-api,easyai.io/site=ningbo \
|
||||
-o jsonpath='{range .items[*]}{.metadata.name}{"\n"}{end}')
|
||||
pod_count=$(wc -w <<<"$pods" | tr -d ' ')
|
||||
if [[ $pod_count == 1 ]]; then
|
||||
pod=$pods
|
||||
worker_enabled=$(k3s kubectl get pod "$pod" -n easyai \
|
||||
-o jsonpath='{.spec.containers[0].env[?(@.name=="AI_GATEWAY_ASYNC_QUEUE_WORKER_ENABLED")].value}')
|
||||
pod_ready=$(k3s kubectl get pod "$pod" -n easyai \
|
||||
-o jsonpath='{.status.containerStatuses[0].ready}')
|
||||
if [[ $worker_enabled == false && $pod_ready == true ]]; then
|
||||
break
|
||||
fi
|
||||
fi
|
||||
sleep 1
|
||||
done
|
||||
[[ ${pod_count:-0} == 1 && ${worker_enabled:-} == false && ${pod_ready:-} == true ]]
|
||||
k3s kubectl logs "$pod" -n easyai | grep -q 'asynchronous queue worker disabled for this process'
|
||||
curl -fsS http://10.77.0.1:31088/api/v1/readyz | grep -q '"ok":true'
|
||||
curl -fsS http://10.77.0.2:31089/api/v1/readyz | grep -q '"ok":true'
|
||||
REMOTE
|
||||
|
||||
Reference in New Issue
Block a user