일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 프로그래머스
- snort
- Router
- Container
- db
- Python
- Snort Rule
- 라우팅
- Cosmos
- Linux
- coding test
- OSI7계층
- 코딩테스트
- Routing
- 스노트
- MySQL
- database
- 스노트 룰
- 도커
- docker
- TDD
- programmers
- osi7layer
- 데이터베이스
- 컨테이너
- 코딩 테스트
- 리눅스
- 라우터
- 트레바리
- 라우팅프로토콜
- Today
- Total
Simple is IT, 누구나 보고 누구나 깨닫는 IT
Docker Container Logging_awslogs(4/4) 본문
Container Logging
도커에서 컨테이너 로그를 수집할 때 각종 드라이버를 통해 다양한 방법으로 컨테이너의 로그를 수집할 수 있죠.
이번에는 도커에서 제공하는 로깅 드라이버 중 awslogs를 사용해볼거에요!
awslogs
AWS(Amazon Web Service)에서는 로그 및 이벤트 등을 수집하고 저장해 시각적으로 보여주는 CloudWatch를 제공합니다!
그렇기에 만약 도커를 AWS EC2에서 사용하고 있다면 다른 도구를 별도로 설치할 필요 없이 컨테이너에서 드라이버 옵션을 설정하는 것만으로 드라이버를 사용할 수 있죠.
구성을 위한 순서는 아래와 같아요.
1. CloudWatch에 해당하는 IAM 권한 생성
2. Log Group 생성
3. Log Group에 LogStream 생성
4. CloudWatch의 IAM 권한을 사용할 수 있는 EC2 인스턴스 생성과 로그 전송
CloudWatch를 사용하기 위해선 AWS 계정이 필요합니다! 가입은 간단하기에 따로 설명은 하지 않을게요.
1. CloudWatch에 해당하는 IAM 권한 생성
[IAM]를 클릭합니다.
사이드바의 [역할]탭을 클릭하고 [역할 만들기]를 통해 새로운 IAM 권한을 생성해줄게요.
EC2를 선택한 뒤 [다음 : 권한]을 클릭해주세요.
정책 필터에서 CloudWatchFullAccess를 입력해 선택해주고 [다음 : 태그]를 클릭해줄게요.
태그 항목에서는 키와 값을 입력할 수 있는데, 선택사항이므로 저는 패스하겠습니다. [다음 : 검토] 클릭
IAM 역할의 이름을 지정해주고 [역할 만들기]를 클릭해 새로운 역할 생성을 마무리합니다.
2. Log Group 생성
[관리 및 거버넌스]에서 [CloudWatch]를 클릭할게요.
사이드바에서 [로그 그룹]을 클릭한 뒤 [로그 그룹 생성]을 통해 새로운 로그 그룹을 만들어봅시다.
3. Log Group에 LogStream 생성
생성된 로그 그룹의 이름을 클릭해 로그 스트림을 생성합니다.
[로그 스트림] 탭의 [로그 스트림 생성]을 클릭해주고 이름을 지정해줍시다.
생성은 했지만 아직 컨테이너에 대한 로그를 전송하도록 설정하진 않았기에 저장되어있진 않아요.
4. CloudWatch의 IAM 권한을 사용할 수 있는 EC2 인스턴스 생성과 로그 전송
EC2 인스턴스에서 아까 생성했던 IAM 권한을 추가해야해요.
[단계 3: 인스턴스 세부 정보 구성]에서 IAM 역할을 지정해줍시다.
IAM 권한을 사용할 수 있도록 설정한 EC2 인스턴스에서 옵션을 추가해 컨테이너를 생성해봐요.
docker run -d \
> --log-driver=awslogs \
> --log-opt awslogs-region=ap-northeast-2 \
> --log-opt awslogs-group=logs \
> --log-opt awslogs-stream=logstream \
> ubuntu:16.04 \
> echo 'Log test!!!'
logging driver로는 awslogs(CloudWatch)를 사용하고, Log Group과 Log Stream을 알맞게 설정해줍시다.
Region은 ap-northeast-2(서울)로 지정해요.
CloudWatch에 확인하고자 하는 Log가 정상적으로 수집되었음을 알 수 있습니다!
이렇게 수집한 로그를 통해 AWS에서는 다양한 작업을 할 수 있습니다.
효율적인 운영과 관리를 진행할 수 있어 더욱 편하겠군요!
'Simple is IT > Cloud & Container' 카테고리의 다른 글
Docker 컨테이너 자원 할당 제한_Memory, CPU, Block I/O (0) | 2020.07.23 |
---|---|
AZ-900 Furdamentals 총정리 (0) | 2020.07.20 |
Docker Container Logging_fluentd(3/4) (3) | 2020.07.18 |
Docker Container Logging_syslog(2/4) (0) | 2020.07.18 |
Docker Container Logging_logs(1/4) (0) | 2020.07.18 |