Tencent Cloud Resources

텐센트 클라우드의 다양한 소식과 기술 문서 및 정보를 확인하실 수 있습니다.

 

 

Tencent Cloud Log Service

 

 

 

1. 개요

 

이번 연재에서는 Tencent Cloud Log Service에 대해 알아보려고 합니다.

CLS의 작동원리와 장점 그리고 간단한 예시 시나리오에 대해 설명 드리겠습니다.

 

 

2. 로그(Log)란 무엇인가?

 

로그는 컴퓨터 시스템에서 발생하는 일련의 이벤트 정보를 기록한 것입니다.

쉽게 말해 IT에서 발생한 모든 행위와 이벤트 정보를 시간에 따라 남겨 놓은 데이터 정보입니다.

시스템에서 파일을 열거나 폴더를 생성할 때 이벤트가 발생하고, 이 모든 것은 로그 정보 형태로 기록됩니다.

 

 

3. 로그 관리의 중요성

 

로그는 시스템 문제를 해결하거나, 보안 문제를 감지하기 위해 사용됩니다.

예를 들어서 특정 애플리케이션이 정지됐을 때 확인하여 문제를 해결할 수 있고, 외부로부터 공격이 발생했을 때 로그를 확인하여 해당 공격의 경로를 파악할 수도 있습니다.

이처럼 로그는 서버 관리 뿐만 아니라 보안 취약점을 찾는데도 아주 중요한 데이터라고 할 수 있습니다.

 

단일 서버나 간단한 형태의 아키텍처라면 로그가 상대적으로 덜 중요할 수도 있습니다.

하지만 IT 기술이 발달하면서 자연스레 서비스들이 점점 더 고도화되었고, 원활한 서비스를 위해 더 많은 서버가 필요해지며 이에 아키텍처도 점점 복잡해졌습니다.

아키텍처가 복잡해지면서 자연스럽게 로그의 양도 엄청나게 늘어날 수 밖에 없고, 쏟아지는 로그 데이터를 좀 더 효율적으로 관리할 수 있는 서비스에 대한 수요가 늘어나게 된 것은 그리 이상한 일이 아닙니다.

 

 

4. Tencent Cloud Log Service란?

 

Tencent Cloud Log Service(CLS)는 로그 데이터에 관한 모든 것을 통합 제공하는 Tencent의 로그 관리 솔루션입니다.

CLS는 로그 수집, 저장, 처리, 검색, 분석, 대시보드 생성, 알람 등 다양한 기능을 안정적이고 신뢰성 있게 제공하여 문제 발견과 성능 모니터링을 쉽게 할 수 있도록 도와줍니다.

리소스 문제를 걱정할 필요 없이 클라우드 로그 서비스를 5분 안에 빠르고 편리하게 사용할 수 있죠.

 

 

5. CLS의 작동 원리

 

 

CLS의 작동 원리는 기본적으로 대상 서비스나 서버의 로그를 수집해서 다듬고 필요한 곳에 넘기는 서비스하고 보실 수 있습니다.

작동 방식을 정리하면 다음과 같이 말씀드릴 수 있겠습니다.

 

  1. 로그 수집: 다양한 지역, 채널, 플랫폼, 데이터 소스에서 로그를 실시간으로 수집합니다. 이때 LogListener라는 에이전트를 사용하여 로그를 수집하는데, 필요한 경우에 API나 Kafka 프로토콜을 사용하는 것도 가능합니다.
  2. 로그 저장: CLS는 사용자 환경에 맞게 두가지 스토리지를 제공합니다. 실시간 통계 및 모니터링이 필요한 경우 실시간 스토리지를, 감사용 자료와 같이 접근 빈도가 낮은 로그를 관리해야하는 경우엔 장기 보관용 STANDARD_IA 스토리지를 제공합니다. 이 경우 실시간 스토리지에 비해 80% 저렴한 가격으로 로그 데이터를 보관할 수 있습니다.
  3. 로그 검색 및 분석: 키워드를 사용하여 로그 통계를 수집하고 분석할 수 있습니다. 이를 통해 예외 로그를 빠르게 찾을 수 있으며, 단순히 로그 검색만 제공하는게 아니라 시간에 따른 로그 변화추이나 오류 로그 비율과 같은 유의미한 통계적 데이터를 얻을 수도 있습니다.
  4. 로그 전송 및 소비: 이렇게 수집하고 정제한 로그 데이터를 필요로 하는 서비스나 서버로 보내게 됩니다. 텐센트 클라우드 스토리지 및 미들웨어 서비스(예: COS, CKafka)나 Flink, Oceanus, Flume과 같은 스트리밍 컴퓨팅 서비스를 통해 로그 데이터를 사용하는 것도 가능합니다.

결과적으로 일일히 로그를 수집해서 관리할 필요 없이 CLS를 통해 모든 로그를 쉽게 통합 관리할 수 있습니다.

게다가 CLS는 로그 데이터를 분석한 결과를 시각화하여 대시보드 형태로 제공하고, 예외 로그가 발생하거나 특정 메트릭 값이 임계값을 초과할 경우 알람을 트리거하여 문제 발생 시 빠른 조치를 가능하게 합니다.

전화, SMS, 이메일, Weixin(WeChat), WeCom(Tencent Work) 및 사용자 정의 API 콜백과 같은 다양한 채널을 지원하므로 관리자 입장에선 더할 나위 없죠.

 

 

6. CLS의 장점

 

1. 안정성

  • 기본적으로 CLS는 확장 가능한 분산 저장 아키텍처를 갖추고 있습니다. 수평 스케일링 및 자동 서비스 스케일링을 지원하기 때문에, 대용량 로그 데이터도 쉽게 저장하고 관리할 수 있습니다. 특히 로그를 여러 복사본으로 관리하기 때문에 데이터 손실 위험이 매우 적다고 할 수 있습니다.

2. 간편함

  • CLS는 GUI를 지원합니다. 웹 콘솔을 통해 CLS에 접속해서 데이터 관리를 할 수 있습니다. 데이터는 CLS에 기록된 직후에도 즉시 사용할 수 있습니다. 수억 건의 데이터 기록 쿼리 결과를 몇 초 내에 반환 받아서 사용할 수 있습니다.

3. 경제성

  • 로그 시스템을 구축하거나 관리 보수할 필요 없이 실제 사용량에 대해서만 요금이 청구되니 경제적으로도 상당한 이점이 있습니다.

4. 확장성

  • 다양한 텐센트 클라우드 서비스와 통합되어 있어서 간편하게 로그 서비스를 사용할 수 있습니다. 또 로그가 클라우드 객체 저장소(COS)로 전송되어 장기 보관 스토리지에 저장될 수 있고, CKafka로 전송되어 실시간 로그 처리 및 분석을 하는 것도 가능합니다.

 

예시 시나리오:

CLS가 어떤 식으로 작동되는지 간단한 예시 시나리오를 한 번 보여드리겠습니다.

IDC와 CVM, Kubernetes 클러스터를 관리하고 있는 복잡한 아키텍처를 가정해보죠.

먼저 CLS가 제공하는 Agent인 LogListener를 통해 각 노드와 CVM, IDC에 분산되어 있는 중요한 로그 데이터를 수집합니다.

CLS 허브에서는 에이전트가 수집한 정보를 모아 이를 구조화하여 자료 형태로 저장합니다.

저장한 자료를 분석하고 키워드 검색을 통해 이벤트의 로그를 빠르게 검색하여 문제가 발생한 노드를 확인합니다.

이때 사전에 정의된 알람에 따라 관리자에게 이상 알람이 전송될 수도 있겠죠? 이 후 발견한 문제를 추적하여 빠르게 조치할 수 있게 됩니다.

 

 

7. 결론

 

이처럼 Tencent Cloud Log Service의 작동원리와 장점 그리고 간단한 예시 시나리오에 대해 살펴보았습니다.

점점 복잡해지는 서비스를 쉽고 간편하게 관리할 수 있는 CLS.

CLS는 다양한 채널로 서버와 서비스의 로그를 수집하고 이를 분석하여 서비스 운영 관리와 의사 선택에 도움을 주는 시각화 자료를 제공하는 역할을 합니다.

Tencent CLS를 사용해서 로그를 쉽고 간편하게 관리하고 더 나아가 더 안정적인 서비스 운영을 해보시길 바랍니다.

 

 

Tencent CLS 블로그 [바로가기]

Tencent Cloud Log Service에 대한 자세한 내용 [바로가기]