Skip to content

fix: TLS cluster-bus announce-port = tls-port+10000 (16380)#303

Merged
KeiaiLab-PHIL merged 1 commit into
mainfrom
fix/cluster-tls-bus-port-announce
Jun 28, 2026
Merged

fix: TLS cluster-bus announce-port = tls-port+10000 (16380)#303
KeiaiLab-PHIL merged 1 commit into
mainfrom
fix/cluster-tls-bus-port-announce

Conversation

@KeiaiLab-PHIL

Copy link
Copy Markdown
Contributor

근본원인

--cluster-announce-bus-portPortClusterBus(16379) 하드코딩이나, TLS 클러스터(tls-cluster yes)의 실제 cluster-bus listen 포트는 tls-port+10000=16380. 노드가 16379 를 announce → peer 가 닫힌 16379 로 gossip 시도 → 전 노드 fail?/disconnected → cluster_state:fail, cluster_slots_ok:0.

라이브 4-증거 삼각검증: 소스(statefulset.go:382) + 라이브 config + nc(16380 open/16379 closed) + 노드 로그. keiailab-valkey-prod 23일 고착 = SEV-1.

수정

clusterAnnounceCommand(serverArgs, tlsEnabled) — bus = tlsEnabled ? PortTLS+10000(16380) : PortClient+10000(16379). 호출부 p.TLSSecretName != "".

회귀가드

builders_basic_test: TLS→16380, non-TLS→16379 서브테스트 (RED→GREEN 검증).

검증

go build/vet/test green. chart version/appVersion 1.5.1 정합 (release.yml preflight).

근본원인: --cluster-announce-bus-port 가 PortClusterBus(16379) 하드코딩,
TLS 클러스터(tls-cluster yes)의 실제 bus listen=tls-port+10000(16380) 와 불일치
→ 전 노드가 닫힌 16379 로 gossip → fail?/disconnected → cluster_state:fail,
slots_ok:0 (keiailab-valkey-prod 23일 고착, 4증거 삼각검증: 소스+config+nc+로그).

clusterAnnounceCommand 를 tls-aware 로: bus = tlsEnabled ? PortTLS+10000 : PortClient+10000.
회귀가드: builders_basic_test TLS(16380)/non-TLS(16379) 서브테스트.
chart version/appVersion 1.5.1 정합 (release.yml preflight: version==appVersion==tag).

검증: go build/vet/test green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: phil <phil@keiailab.com>
@KeiaiLab-PHIL KeiaiLab-PHIL merged commit 61c86bd into main Jun 28, 2026
15 of 18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant