IL-0560 PubNub · 2026-08-25networking
PubNub US East PoP 의 한 가용 영역에서 일부 메시지가 오류 없이 엉뚱한 곳으로 라우팅돼 구독자에게 바로 전달되지 않았다
계획된 내부 부하 테스트 중에 PubNub 은 내부 라우팅 서버 한 묶음을 서비스에서 뺐다. 설정 결함 때문에 이 서버들의 네트워크 주소가 완전히 회수되지 않았고 게시 계층에 캐시된 채 남았다. 대부분은 문제가 되지 않았지만, 그중 한 주소가 나중에 관계없는 내부 구성 요소에 다시 배정됐고 그 구성 요소가 같은 프로토콜과 포트로 정상 응답했다. 응답이 성공으로 보였기 때문에 게시 계층은 오류를 받지 못했고, 그 주소로 보낸 메시지는 잘못 라우팅됐다. 2026년 8월 25일 12시 10분 UTC에 내부 모니터링이 US East PoP 의 한 가용 영역에서 아주 적은 수의 메시지가 같은 리전의 구독자에게 바로 전달되지 않았을 수 있다고 알렸다. PubNub 은 영향받은 서버를 찾아 롤링 재시작으로 낡은 주소를 지웠고 13시 25분에 정리가 끝났다. 메시지는 모두 PubNub Persistence 서비스에 저장돼 잃어버린 데이터는 없었다. 원인을 확인한 뒤 같은 날 22시에 낡은 내부 라우팅 주소를 제대로 회수하는 수정을 전 세계의 모든 게시 서버에 배포했다.
- 심각도
- –
- 영향 범위
- Publish/Subscribe in one availability zone of the US East point of presence: a very small subset of messages was not immediately delivered to subscribers in the same region; no message data was lost
- 영향 사용자
- No customers reported impact
- 지역
- US East point of presence, one availability zone
- 감지까지
- –
- 복구까지
- 1h 15m
증상
2026년 8월 25일 화요일 12시 10분 UTC에 내부 모니터링이 PubNub US East PoP 의 한 가용 영역에서 아주 적은 수의 메시지가 같은 리전의 구독자에게 바로 전달되지 않았을 수 있다는 알림을 냈다.
상태 페이지는 12시 15분부터 US East PoP 의 Publish and Subscribe 서비스에서 일부 메시지가 호출 결과에 나타나지 않는다고 알렸다. 메시지가 제대로 돌아오지 않는데도 서비스는 오류를 내지 않았다.
모든 메시지는 PubNub Persistence 서비스에 정상으로 저장돼 잃어버린 메시지 데이터는 없었다. 다른 리전이나 가용 영역을 오가는 트래픽과 다른 PubNub 서비스는 영향을 받지 않았고, 영향을 신고한 고객도 없었다.
13시 55분에 장애를 줄인 뒤 상태 페이지는 이 장애가 모니터링 실패와 관련됐다고 보고 있다고 적었다. 사후 분석에서 원인은 라우팅 주소 문제로 밝혀졌다.
원인
- 촉발
- 계획된 내부 부하 테스트 중에 내부 라우팅 서버 한 묶음을 서비스에서 뺐다.
감지
12시 10분 UTC에 내부 모니터링이 알림을 냈다. 장애를 줄인 뒤 합성 모니터링이 정상으로 돌아왔고 놓친 메시지가 더는 잡히지 않았다.
조치
- 영향받은 서버를 찾아 롤링 재시작으로 낡은 라우팅 주소를 지웠다. 13시 25분에 낡은 주소가 모두 정리됐다.
후속 조치
- 낡은 내부 라우팅 주소를 제대로 회수하는 수정을 2026년 8월 25일 22시 UTC에 전 세계의 모든 게시 서버에 배포했다.
교훈
–
출처
- https://status.pubnub.com/incidents/cz6q37z3s1d5 · official-status
관련 사례
같은 원인 · 공통 서비스 디스커버리
같은 원인 · 공통 서비스 디스커버리
IL-0191Loki distributor 서비스에 레이블 셀렉터가 하나 더 들어가 롤아웃 중 새 파드 몇 개에만 쓰기 트래픽이 몰렸고, 그 파드들이 OOM으로 죽으면서 로그 쓰기 경로가 약 25분간 멈췄다.Grafana Labs · 2022같은 원인 · 공통 서비스 디스커버리
내 클러스터에도 있는지 확인하기
AI 도구와 스크립트용
- 이 사례의 JSON: https://incidentlib-api.benchlet.com/cases/IL-0560
- 가장 비슷한 사례들: https://incidentlib-api.benchlet.com/cases/IL-0560/similar
- MCP 서버(Streamable HTTP, 키 없음):
https://incidentlib-mcp.benchlet.com/mcp
API 는 키가 필요 없습니다. MCP 서버는 search_incidents, get_incident, list_incidents, get_topic, vocab 도구를 내놓습니다. 사용법은 API 와 MCP.