kaonmir
Sign In
CloudTrail & X-Ray & ElasticSearch & Tagging
1. CloudTrail
모든 이벤트와 API의 로그를 S3나 CloudWatch Logs에 기록하는 서비스이다. 15분 정도 딜레이가 있다.
로그 무결성
AWS는 한 시간에 한 번
로그들의 digest
를 S3에 따로 저장해 로그 파일의 조작 여부를 검증한다.
Cross Account Logging
다른 계정의 CloudTrail Log를 내 계정의 S3에 저장하려면,
S3 버킷 정책
을 수정해 해당 계정에
쓰기 권한
을 줘야 한다.
2. X-Ray
분산 어플리케이션에서 요청을 추적하고, 디버깅하고, 서비스맵을 보여주는 서비스이다.
•
어디에 어떤 에러가 언제 어떻게 발생했는지 보여준다.
•
연계된 다른 요청도 함께 보여줘, 어디에서 에러가 났는지 추적이 가능하다.
자동화
X-Ray는 알람 기능이 없기 때문에 람다를 통해서 수동으로 알람을 구현해야 한다.
https://aws.amazon.com/ko/blogs/devops/using-amazon-cloudwatch-and-amazon-sns-to-notify-when-aws-x-ray-detects-elevated-levels-of-latency-errors-and-faults-in-your-application/
3. Amazon ElasticSearch (ES)
ElasticSearch를 대체해 로그를 분석하는 서비스이다. 서버 위에서 돌아가야 한다.
ELK stack
•
ElasticSearch
: 로그 검색과 인덱싱
•
Kibana
: ES 위에서 실시간 대쉬보드를 제공 (CW Dashboard의 상위호환)
•
Logstash
: Logstash Agent가 보내준 로그를 수합 (CW Logs 대체)
ES Patterns - DynamoDB
1.
DynamoDB에서 찾고 싶은 아이템의 인덱스를 모르면, 전체 DB를 scan해야 하는 불상사가 생긴다.
2.
그럴 경우 DynamoDB의 로그를 ES로 보내고,
3.
ES에서 검색하면 쉽고 빠르게 찾을 수 있다.
ES Patterns - CloudWatch Logs
•
Lambda는 실시간이지만 비싸다.
•
Kinesis Firehose는 거의-실시간이지만 싸다.
4. Tagging
거의 모든 AWS 리소스에는 태그가 있다. 태그는 어떻게 사용할까? 아래는 몇몇 적용 사례를 소개한다.
•
비용 계산
: 부서별, 환경별 비용을 책정할 때, 태그를 보고 필터링
•
CodeDeploy
: 어떤 인스턴스에 배포하는가?를 판단
•
TBAC (Tag based Access Control)
: Tag와 IAM을 연동해, 태그로 리소스에 대한 접근을 관리
What is Tag Editor? - Tagging AWS Resources and Tag Editor
Learn how tagging helps you organize and identify AWS resources.
docs.aws.amazon.com
Made with Slashpage