1.4 KiB
1.4 KiB
발견과 전송은 다른 경로다
Alternative text
두 노드가 데이터베이스로는 이어져 있고 TCP 7800 으로는 끊긴 구성. 세션 조회는 살아 있고 무효화 통지는 막힌다.
Long description
노드가 서로를 찾는 경로와 실제로 이야기하는 경로가 다르다. 발견은 PostgreSQL 의 JGROUPS_PING 테이블을 쓰고 전송은 TCP 7800 을 쓴다. 7800 만 막으면 둘 다 데이터베이스에 등록된 채로 남아 서로 존재한다고 믿지만 메시지는 오가지 않는다. 세션은 데이터베이스에 있으므로 교차 노드 refresh 는 200 을 유지하고, 로그아웃 무효화 통지는 7800 을 타므로 400 이어야 할 것이 200 이 된다.
Elements and evidence
- keycloak-0 (service): 로그아웃을 처리한 노드. Evidence: L485–L489.
- TCP 7800 (channel): 무효화 통지가 지나는 길. NetworkPolicy 로 막았다. Evidence: L491–L495.
- keycloak-1 (service): 통지를 못 받아 세션이 죽은 것을 모른다. Evidence: L485–L489.
- PostgreSQL (datastore): 세션이 여기 있어 7800 과 무관하다. Evidence: L487–L490.
Relationships
- keycloak-0 → TCP 7800: 무효화 통지. Evidence: L487–L490.
- keycloak-1 → PostgreSQL: 세션 SELECT. Evidence: L487–L489.
- TCP 7800 → keycloak-1: 차단. Evidence: L487–L490.