[AWS] CloudTrail 알아보기

Kai·2023년 7월 12일
0

👀 CloudTrail이란?


Trail이라는 단어는 '자취'라는 의미를 갖는데, CloudTrail은 Trail이라는 말에서 알 수 있듯이 클라우드 인프라에서 이루어지는 것들을 로깅하는 서비스이다.

쉽게 얘기하면, 회사에서 AWS를 사용한다면 각 팀원마다 IAM 계정을 생성해서 사용하도록 할 것 인데, 각 IAM 계정들이 AWS 인프라 자원에 어떠한 작업들을 했는지 기록하고 확인할 수 있다는 것이다.

💾 자세한 설명이 보고 싶다면 공식문서를 참고하자.


🔨 CloudTrail 생성하기


CloudTrail은 매우 간단하게 생성할 수 있다.
먼저 CloudTrail콘솔로 이동한 후, '추적'생성 버튼을 누르자.

1) 일반 세부 정보

기본 정보로 생성할 CloudTrail의 이름과, 어떤 버킷에 CloudTrail로그를 쌓을지를 정한다.

그리고, 암호화 옵션이 있는데 이 옵션을 키게 되면 로그가 평문이 아니라 암호화된 상태로 저장이 되서, 좀 더 안전하게 로그를 보관하고 확인할 수 있게 된다.

2) 추가 옵션

그리고 CloudWatch와 연동할지 선택하는 부분이 있는데, 이 부분은 비활성화하고 넘어가도록 하겠다.
이 옵션을 활성화하면, CloudWatch에서 CloudTrail로그를 확인할 수도 있고 관련하여 알람을 주는 기능도 구현할 수 있다. CloudWatch에 대해서는 다음 글에서 자세히 다루도록 하겠다.

추가로, Name태그 정도는 편의상 설정해주도록 하자. ㅎㅎ

3) 생성 확인

위 과정들을 마치고 생성을 하게 되면 CloudTrail 하나가 뚝.딱. 만들어진다 ㅎㅎ


💡 CloudTrail 사용하기


1) 이벤트 히스토리 확인

CloudTrail 대시보드에 들어가보면, 여태까지 내가 속한 AWS 인프라에서 어떤 일들이 이루어졌는지 모두 확인할 수가 있다.

내가 방금 테스트용으로 S3 버킷을 하나 만들었었는데, 그에 대한 로그도 기록이 되어 있는 것을 확인할 수 있다.

이벤트들 전체를 확인하면, 더 과거의 기록들도 모두 확인할 수 있다.

사실 대시보드에서 이벤트들을 확인하는 것은 CloudTrail을 생성하지 않아도 확인할 수 있긴하다.

2) 로그 파일 확인

CloudTrail을 생성할 때 S3 버킷을 하나 만들거나 연동했을 것이다.
그 버킷으로 이동해보자.

해당 S3 버킷에 들어가보면, CloudTrail을 생성한 순간부터 로그를 S3에 쌓기 시작하는데, 여기에서 그 로그파일들을 직접 확인해볼 수 있다.

단, 암호화되어 있기 때문에 다운로드 받는다고 내용을 직접 볼 수는 없다.


🔥 CloudTrail 응용


위에서 이야기한 내용만으로도 각자가 원하는 정보들을 충분히 잘 확인할 수 있다면, 이 이상 뭔가를 설정할 필요는 없다.

그러나 보통 회사에서 관제 시스템을 구축하고자 할 때, CloudTrail도 그 시스템의 일부로 사용하곤 한다. 그래서 CloudTrail은 다른 서비스들과 연동해서 사용할 때, 빛을 발하긴 한다. ㅎㅎ

그렇다면, CloudTrail을 어떻게 응용해서 좀 더 유의미하고 효과적으로 사용할 수 있는지 알아보자.

1) AWS CloudWatch와 연동

위에서도 이야기했듯이 CloudWatch와 연동한다면, 단순히 로그를 쌓는 것 뿐만 아니라 특정 로그에 대한 감지도 할 수 있게 되면서 CloudTrail을 좀 더 강려크하게 사용할 수 있을 것이다.

💾 Amazon CloudWatch 로그를 사용한 CloudTrail 로그 파일 모니터링

2) AWS Athena와 연동

AWS Athena는 S3에 저장된 데이터를 표준 SQL 문법으로 조회할 수 있게 해주는 서비스이다.
사실 AWS에서 제공하는 관제 서비스들을 대부분 S3에 로그 파일을 적재할 수 있는데, Ahtena는 대놓고 이러한 서비스들과 연동하여 사용자들이 좀 더 자기 입맛에 맞게 로그들을 조회할 수 있도록 만든 서비스라고 할 수 있다. ㅎㅎ

💾 AWS CloudTrail 로그 쿼리

3) 외부 관제 솔루션과 연동

다양한 관제 솔루션들이 있는데, 그 중에서 DataDog을 예시로 들어보겠다.
사실 DataDog은 AWS CloudTrail 뿐만 아니라 AWS의 다른 제품들, Azure의 많은 제품등등 어지간한 서비스들과 모두 연동이 가능하긴하다. ㅎㅎ
각 서비스에서 넘어오는 로그들을 분석해서, 정말 수 많은 기능들을 제공한다.
대시보드를 제공하는 것은 물론이고, Alerting 위험 감지등등

단,,, 가격이 좀 빡세다 🤐

뭐 당연하게도 S3에 저장된 CloudTrail의 로그들도 DataDog과 연동만하면, 위에서 이야기한 기능들을 제공한다.


☕ 마무리


이번 글에서는 CloudTrail에 대해서 간단히 알아보았는데, CloudTrail을 응용하는 부분은 다음 글들에서 한번 다뤄보도록 하겠다. ㅎㅎ

그럼 20000 🦝

0개의 댓글