clustervps Mac Mini M4 병렬 클러스터에서 KEDA ScaledObject·Webhook으로 빌드 큐 스케일, AZ 카나리, 병합 프로브, 실패 digest를 최소 재현합니다. Flagger·Rollouts와 달리 KEDA가 레플리카를 조절합니다. ⚡

KEDA 첫 스케일 전에 막히는 세 가지

  1. 큐만 보고 스케일. 레플리카는 늘지만 잘못된 skill_hash 카나리 슬라이스가 남습니다.
  2. 지표 분열. CPU는 낮은데 게이트웨이 5xx만 올라 Webhook이 채점하지 않는 VIP로 트래픽이 갑니다.
  3. Webhook 폭주. ScaledObject 폴링과 무제한 재시도가 clustervps 모든 Mac 노드에 부하를 줍니다.

KEDA ScaledObject 트리거 조건과 빌드 큐 관계

트리거는 OpenClaw 빌드 레인의 동일 큐 깊이(Redis 리스트, NATS pending, 코디네이터 Prometheus 게이지)에 맞춥니다. 카나리 중 maxReplicaCount로 프로브 예산을 넘는 스케일업을 막습니다.

항목시작값카나리 메모
큐 깊이대기 ≥ 8건 시 확장병합 JSON 통과 전 +1 상한
쿨다운스케일다운 120s분석 중 Webhook 재시도와 분리
minReplicaCountstable 1·카나리 0Deployment 라벨 분리
activation0 → 유휴 절전테스트 AZ만 기상

Nomad 빌드 락과 맞춰 카나리 스케일 중 flock 유지.

다중 AZ 게이트웨이 노드 카나리 슬라이스

Mac마다 gateway_version·az 라벨 고정. 카나리 Webhook은 멀티 AZ 게이트웨이 전용 호스트로 SSH stable 풀과 분리. 카나리 스킬·프래그먼트 병합과 표를 맞추고 네 번째 노드 전 에서 리전 선택.

지표 프로브: 지연·오류율 임계값

ScaledObject 폴링마다 병합 JSON 한 건을 반환합니다. Rollouts/Flagger와 유사하지만 채점은 KEDA가 레플리카를 올리기 전 게이트웨이 Webhook에서 합니다.

신호시작 임계실패 조건
카나리 5xx5분 ≤ 0.5%연속 두 창 상한 초과
게이트웨이 p99카나리 VIP ≤ 220msstable 대비 +15% 회귀
큐 깊이≤ 12 pending가중 상승 중 깊이만 증가
degradedHTTP 200 + booleandegraded:true 시 fail-closed
{
  "status": "healthy",
  "keda": "openclaw-build-lane",
  "canary": { "5xx_rate": 0.003, "p99_ms": 158 },
  "gateway": { "disk_ok": true, "queue_depth": 5, "skill_hash": "c4e1…" },
  "degraded": false
}

Webhook 실패 요약 방송

Bearer는 KEDA 폴링 한 창 이상 신·구 병존. 비성공 분류 시 rollout명·지표 차·AZ를 200자 이내로 notifier에 보내고, 상세는 클러스터 로그 Webhook JSONL로 분리합니다. 재시도 지터 3회, 유지보수 중 폴링 ≥ 60s.

스킬 패키지 버전 락과 롤백

canary_active=true 동안 skill_hash 동결. abort 시 해시·KEDA maxReplicaCount를 stable로 되돌리고 rsync 매트릭스 flock 해제. Doctor 실패도 병합 JSON에 포함.

1TB / 2TB 디스크 수위(게이트웨이 Mac)

병합 JSON에 disk_ok 포함. 옐로 수위에서 스케일업 fail-closed.

티어옐로 게이트조치
1TB 게이트웨이사용 ≥ 82%KEDA 스케일업 차단·digest
2TB 게이트웨이사용 ≥ 78%동일·stable 레인만
레드≥ 90%min 레플리카·카나리 VIP 드레인

KEDA vs Flagger vs Argo Rollouts (본문 초점)

Flagger·Rollouts는 고정 레플리카에서 트래픽 가중을 옮깁니다. KEDA는 큐·커스텀 메트릭으로 용량을 움직여 clustervps 병렬 Mac 빌드 버스트에 맞습니다.

레인주 입력참고 글
KEDA(본문)ScaledObject·큐 깊이
FlaggerMetricTemplate·WebhookFlagger 가이드
Argo RolloutsAnalysisRun HTTPRollouts 가이드

게이트웨이 측정 URL당 상위 호출자 하나만—같은 분에 KEDA 스케일과 AnalysisRun이 같은 핸들러를 두 번 호출하지 마세요.

최소 재현 롤아웃 (7단계)

  1. KEDA 설치 — ScaledObject가 worker Deployment를 겨냥(게이트웨이 DaemonSet 아님).
  2. 트리거 연결 — 빌드 큐 깊이·쿨다운·카나리 max 상한.
  3. /keda/metrics — 카나리 태그 Mac에서 Bearer HTTPS.
  4. 병합 JSON — 지연·5xx·깊이·disk_ok·skill_hash.
  5. 스킬 락 — 통과 또는 abort 전 rsync 일시정지.
  6. 실패 방송 — degraded true 시 스케일다운 리허설.
  7. 검증 — 바스천 curl + KEDA가 카나리 상한에 레플리카 고정.
인용 가능 큐 확장 8건 / 5xx 0.5% / p99 220ms / Webhook 재시도 3회 / 1TB 옐로 82%·2TB 78%.

FAQ

KEDA vs Flagger: 용량은 KEDA, 가중은 Flagger. degraded 두 창이면 maxReplicaCount 유지. Nomad는 빌드 락 글과 라벨 대조.

운영 가이드입니다. KEDA·Kubernetes·OpenClaw API는 버전마다 다릅니다. 설치본 문서와 ScaledObject·Webhook 페이로드를 검증하세요.
clustervps 병렬 Mac 클러스터

KEDA 카나리를 다중 노드 OpenClaw 플릿에 연결

·Flagger·Nomad과 비교 후 구매로 병렬 게이트웨이(SSH/VNC)를 맞추세요.

병렬 클러스터 패키지 요금·노드 보기