본문 바로가기
  • 클라우드야 나랑 친해지자!
서버/Docker&Kubernetes

Docker Container Logging - awslogs

by 정민규 2021. 4. 14.
반응형

수업을 듣고 배운 내용과 연습한 내용을 정리하였습니다

개인 공부 후 자료를 남기기 위한 목적임으로 내용 상에 오류가 있을 수 있습니다.

 

잘못된 부분이 있거나 질문사항은 댓글로 남겨주시면 성심성의껏 답변해드리겠습니다. 감사합니다!


 

교재 <시작하세요! 도커/쿠버네티스 - 용찬호 지음>를 토대로 실습을 진행하였습니다.

 

 

 

* awslogs

 

AWS에서는 로그 및 이벤트 등을 수집하고 저장해 시각적으로 보여주는 CloudWatch를 제공합니다.

따라서, EC2에서 도커를 사용하면 다른 도구를 별도로 설치할 필요 없이 컨테이너에서 드라이버 옵션을 설정하는 것만으로 CloudWatch 로깅 드라이버를 사용할 수 있습니다. 

 

 

 

* 실습요약

1. CloudWatch에 해당하는 IAM 권한 생성

2. Log Group 생성

3. Log Group에 Log Stream 생성

4. CloudWatch의 IAM 권한을 사용할 수 있는 EC2 인스턴스 생성 및 로그 전송

 

 

 

 

 

1. CloudWatch에 해당하는 IAM 권한 생성

 

IAM > 역할 만들기 > 사용 사례 : EC2 > 권한 : CloudWatchFullAccess > 이름 : mycloudwatch > 역할 만들기

 

 

 

 

 

 

2. Log Group 생성

 

CloudWatch > 로그 > 로그 그룹 생성 > 이름 : mylogs

 

 

 

 

 

3. Log Group에 Log Stream 생성

 

mylogs 클릭 > 로그 스트림 생성 > 이름 : mylogstream

 

 

 

 

4. CloudWatch의 IAM 권한을 사용할 수 있는 EC2 인스턴스 생성 및 로그 전송

 

EC2 > 인스턴스 시작 > 단계 3: 인스턴스 세부 정보 구성에서 IAM 역할을 mycloudwatch로 설정

나머지는 프리티어 및 기본값으로 설정합니다.

 

 

 

cmd를 통해 EC2인스턴스에 ssh로 접속합니다.

$ssh -i [key.pem] ec2-user@퍼블릭IP주소

 

 

 

docker를 설치합니다.

$sudo yum -y upgrade
$sudo amazon-linux-extras install -y docker

 

 

 

docker 잘 깔렸는지 확인해봅니다.

$docker --version

 

 

 

docker를 시작합니다.

$sudo systemctl start docker

 

 

 

IAM 권한을 사용하도록 설정한 EC2 인스턴스의 도커 엔진에서 다음 명령어를 입력해 컨테이너를 생성합니다.

로깅 드라이버로 awslogs를 사용할 수 있게 설정하고 로그 그룹과 스트림은 mylogs와 mylogstream을 사용합니다.

리전으로는 EC2 인스턴스가 아닌 로그 그룹 및 스트림이 생성된 리전을 입력해야 합니다.

 

$docker run -i -t \
> --log-driver=awslogs \
> --log-opt awslogs-region=ap-northeast-2 \
> --log-opt awslogs-group=mylogs \
> --log-opt awslogs-stream=mylogstream \
> ubuntu:14.04

 

 

 

 

이미지가 다운로드 되고, 도커에 접속됩니다.

test! 를 출력했을 때, CloudWatch로 로그가 전송된 것을 확인할 수 있습니다!  

#echo test!
test!

 

 

 

 

 

반응형

'서버 > Docker&Kubernetes' 카테고리의 다른 글

Docker Swarm  (0) 2021.04.20
Dockerfile 작성 및 빌드  (0) 2021.04.16
Docker 이미지 추출 및 저장소 생성(2/2)  (0) 2021.04.15
Docker 이미지 생성하기- Docker Hub(1/2)  (0) 2021.04.15
Docker Container Logging - fluentd  (0) 2021.04.14

댓글