캐시를 외부 관리형 서비스로 쓰고 있었습니다. 동시에 클러스터 안에도 환경별로 인스턴스가 흩어져 있었습니다. 같은 역할을 하는 것이 밖에 하나, 안에 여럿 이었습니다.
이렇게 된 데 특별한 이유는 없었습니다. 필요할 때마다 가장 빨리 되는 방법으로 붙이다 보니 쌓인 결과입니다. 흔한 일이고, 그래서 한 번은 정리해야 합니다.
한 곳으로 모았다
개발·스테이징의 인스턴스를 전부 걷고, 도구들이 사는 클러스터에 장애 조치가 되는 구성 하나로 통합했습니다. 그리고 외부 구독을 끊었습니다.
관리 화면도 함께 올렸습니다. 캐시 내용을 봐야 할 일이 생길 때마다 명령줄로 붙는 것보다, 브라우저에서 열리는 편이 실제로 더 자주 확인하게 만듭니다.
정리하다 발견한 것
관리 화면의 인증서 설정이 다른 네임스페이스의 인증서를 가리키고 있었습니다. 쿠버네티스에서 TLS 인증서는 그것을 쓰는 곳과 같은 네임스페이스에 있어야 하는데, 없는 것을 가리키니 인그레스가 기본 자체서명 인증서를 내주고 있었습니다.
브라우저 경고를 보고도 "내부용이니까"로 넘어가고 있었던 겁니다. 이관 전부터 깨져 있던 설정이었고, 옮기면서 값을 한 줄씩 읽지 않았다면 계속 그 상태로 있었을 겁니다.
결과
외부 구독이 없어졌고, 환경마다 흩어져 있던 인스턴스가 하나로 줄었습니다. 같은 작업에서 함께 정리한 메시지 브로커까지 포함해 쓰지 않는 디스크가 0 개가 됐습니다.
붙어 있지 않은 디스크는 눈에 안 띄면서 매달 과금됩니다. 정리 작업의 절반은 이런 걸 찾아내는 일입니다.