중앙집중식 로깅

문혜리·2022년 6월 29일
0

인턴

목록 보기
3/9

MSA(Microservice Architecture)으로 인해

  • 시스템이 쪼개지고 다루기 쉬워졌지만 그만큼 복잡해졌고
  • 이러한 특징 때문에 MSA에 대한 로깅과 모니터링은 큰 고민거리라고 한다.

Because:
서로 다른 개별 마이크로서비스에서 발생하는 로그를 연결지어 트랜잭션의 처음부터 끝까지 순서대로 추적해내는 것은 어렵기 때문

Therefore:
로그 데이터를 인덱싱하고, 검색할 수 있는 중앙 수집 지점을 만들어 전체 서비스 인스턴스의 모든 로그를 실시간 스트리밍함

로그 관리의 난제

클라우드 환경으로 옮겨오면서 애플리케이션은 더 이상 특정 사양과 장비에 종속되지 않는다.
도커같은 컨테이너는 본질적으로 짧은 수명을 전제로 하는 등, 결국 디스크의 저장 상태에 더 이상 의존할 수 없게 되었다.

Because:
디스크에 기록된 로그는 컨테이너가 재기동되면 사라질 수 있기 때문. 따라서 로그파일을 로컬 장비의 디스크에 기록하는 것에 의존해서는 안된다.
12요소 애플리케이션에서 말하는 원칙 중 하나는 로그 파일을 애플리케이션 내부에 저장하지 말라는 로그 외부화이다.

But:
마이크로서비스는 독립적인 물리적 장치 혹은 가상머신에서 운영되기 때문에 외부화하지 않은 로그 파일은 결국 각 마이크로서비스 별로 파편화된다.
즉, 여러 마이크로서비스에 걸쳐서 발생하는 트랜잭션을 처음부터 끝까지 순서대로 추적하는 것이 불가능

Therefore:
로그의 출처에 상관없이 모든 로그를 중앙 집중적으로 저장, 분석해야 한다.
즉, 로그의 저장과 처리를 서비스 실행 환경에서 분리하는 것.

중앙 집중식 로깅

-작성 중-

0개의 댓글