2. 본 강연에서 다룰 내용
• AWS의 컨테이너 환경
• ECS 를 활용한 컨테이너 환경의 장점
• 운영환경에서 컨테이너 활용을 위한 구조
• 삼성전자 고객 사례
• ECS 고급 활용을 위한 도구
• 맺음말
3. 멀티 호스트 컨테이너 스케줄 전략은?
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
Server
Guest OS
4. AWS 에서 제공되는 다양한 Docker 환경
• Amazon ECS
• CoreOS Tectonic (Kubernetes)
• Mesosphere DC/OS (Mesos)
• Docker Datacenter
5. AWS 에서 Docker 환경 구축하기
어떤 Docker 환경을 선택 하실건가요?Start!
You ==
Wizard?
Legacy
Apps?
Big
Data?
Cluster >
10000?
Love
Docker
CLI?
Cluster >
1000?
Cluster >
200?
Huge IT
team?
No
Yes
No
Yes
Inspiration:
http://adrianotto.com/wp-
content/uploads/2016/02/c
hoose-adventure-
1024x574.png
No Yes
Yes
YesNoYesNoYes
Yes
10. Docker
Task
Container Instance
Container
ECS Agent
ELB
Internet User /
Scheduler
Task
Container
Docker
Task
Container Instance
Container
ECS Agent
Task
Container
AZ 1
ELB
Docker
Task
Container Instance
Container
ECS Agent
Task
Container
AZ 2
Amazon
ECS
API
Cluster Management Engine
Key/Value Store
Agent Communication Service
Amazon ECS
11. ECS의 구성 요소
작업
인스턴스에서 실행되는 실제
컨테이너작업
작업 정의
작업에 대한 컨테이너 및 환경의
정의
클러스터
작업이 실행되는 EC2
인스턴스의 함대
매니저
클러스터 리소스 및 작업
상태 관리
스케줄러
클러스터 상태를 고려한 작업
배치
에이전트
EC2 인스턴스 및 매니저와
통신
19. ECS 통한
운영 효율화
작업 배치 구조
클러스터 제약조건
고객 제약조건
배치 전략
필터 적용
CPU, 메모리 및 포트 요구 사항 충족
위치, 인스턴스 유형, AMI 또는 사용자 정의
속성 제약에 대한 필터링
배치 전략을 충족하는 인스턴스 식별
배치 할 최종 컨테이너 인스턴스 선택
20. 배치 조건
이름 예시
AMI ID attribute:ecs.ami-id == ami-eca289fb
가용영역 attribute:ecs.availability-zone == us-east-1a
인스턴스 타입 attribute:ecs.instance-type == t2.small
고유 인스턴스 type=“distinctInstances”
커스텀 attribute:stack == prod
ECS 통한
운영 효율화
50. 12 개 가용 영역의 3 개 영역에 100,000 개 인스턴스
서비스 민첩성을 위해 채택 된 마이크로 서비스
2016 년 컨테이너로 이동 시작
AWS를 사용하여 운영 부담을 최소화하는 회사
ECS 팀과 협력하여 Titus(Netflix container 환경)를 ECS에 통합
ECS를 활용하여 모든 컨테이너 워크로드를 호스팅 하려고 계획 중
52. AWS X-Ray
• 완전 관리형 분산 애플리케이션 성능 추적 서비스
• 마이크로서비스 시작과 끝에 대한 디버깅 및 추적
ü 서비스에 대한 시각적 토폴로지 제공
ü 개별 요청에 대한 로그 추적
ü 성능 이슈 및 오류 발생 원인에 대한 확인 및 문제 해결
호출에 대한 전체 과정 파악
사용자 요청이 애플리케이션을
통과하는 전체 과정을 추적
애플리케이션 성능 개선
지연 시간이 늘어나는 위치를
빠르게 확인한 후 성능이
저하되는 특정 서비스 및 경로에
대한 문제 해결 가능
애플리케이션 문제 식별
트레이스 데이터 태깅 및
필터링을 통해 어느 위치에서
무엇이 성능 문제를 유발하는지
정확히 파악
53. AWS X-Ray - 에이전트 설치 및 추적 기능
1. Amazon EC2
2. Amazon ECS (Docker)
3. AWS Node.JS (SDK)
56. Amazon ECS 체크 포인트
• 다양한 규모에서 손쉽게 확장 가능한 관리 형 서비스
• 손쉬운 오케스트레이션 및 자동화로 운영 효율 향상
• 기본 AWS 통합
• IAM 역할, ALB, VPC, Cloudwatch 로그, 오토스케일, ECR 활용,
CodeCommit, CodePipeline, CodeDeploy, X-ray, StepFunction, Etc
• Blox 를 통한 ECS 운영 커스터 마이징
• X-Ray, StepFunction 을 통한 모니터링 디버깅 옵션
57. 본 강연이 끝난 후…
• 마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 (윤석찬, 빙글 이상현)
• Amazon ECS 시작하기 - https://aws.amazon.com/ko/ecs/getting-started/
• Amazon ECS 레퍼런스 아키텍처 -
https://aws.amazon.com/ko/blogs/compute/service-discovery-an-amazon-ecs-
reference-architecture/
• Amazon ECS 자세히 들여다 보기 -
http://www.allthingsdistributed.com/2015/07/under-the-hood-of-the-amazon-ec2-
container-service.html
• Amazon ECS 로 마이크로서비스 구축 하기 -
https://www.slideshare.net/AmazonWebServices/aws-reinvent-2016-running-
microservices-on-amazon-ecs-con309
• Netflix and Containers (Titus - https://www.slideshare.net/aspyker/netflix-and-
containers-titus)
• X-Ray 관련 발표 - https://www.youtube.com/watch?v=75MRve4nv8s
59. https://www.awssummit.kr
AWS Summit 모바일 앱을 통해 지금 세션 평가에
참여하시면, 행사후 기념품을 드립니다.
#AWSSummitKR 해시태그로 소셜 미디어에
여러분의 행사 소감을 올려주세요.
발표 자료 및 녹화 동영상은 AWS Korea 공식 소셜
채널로 공유될 예정입니다.
여러분의 피드백을 기다립니다!