콘테이너 운영을 위한 amazon ec2 container service(ecs) 집중 분석

64

Upload: amazon-web-services-korea

Post on 23-Jan-2018

1.014 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석
Page 2: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

( 7[Pg] � 9G� 9,�9] aP T_�GT_c RT% n

,(

-( v

.(

/(

Page 3: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

4

4

4 k

4 DG� T_ TZ uServer

Guest OS

Bins/Libs Bins/Libs

App2App1

Page 4: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

D_RWT a_Pa ] 6

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

Page 5: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

( � � �9] aP T_�GT_c RT% n

Page 6: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

7[Pg] � 9G

yw

7KG�

Page 7: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

7[Pg] � 9G x

9,�…

HP �:TU a ] %

… r

HP %

w

w

t

9,�

Page 8: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

7[Pg] � 9G�x 4

:]R T_HP

9,� aP RT

9] aP T_

:]R T_HP

9,� aP RT

HP:]R T_

9,� aP RT

HP

7L� 7L�,

9] aP T_ 9] aP T_ 9] aP T_

Page 9: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

:]R T_

9,� aP RT

:]R T_

9,� aP RT

:]R T_

9,� aP RT

7L� 7L�,

9Zb aT_�BP PVT[T a� V T

7[Pg] � 9G�x 4 w

9] aP T_ 9] aP T_ 9] aP T_ 9] aP T_9] aP T_ 9] aP T_

HP HP HP HP HP HP

Page 10: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

9G�PVT a

9,� aP RT

9G�PVT a

:]R T_

9,� aP RT

:]R T_

9,� aP RT

:]R T_

7L� 7L�,

9Zb aT_�BP PVT[T a� V T

7[Pg] � 9G�x 4 9G�PVT a

9] aP T_ 9] aP T_ 9] aP T_ 9] aP T_9] aP T_ 9] aP T_

HP HP HP HP HP HP

9G�PVT a

7VT a�9][[b RPa ] �GT_c RT

Page 11: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

7[Pg] � 9G�

7A8 7A8

7L� 7L�,

b T_) RWTSbZT_

GRWTSbZT_

9Zb aT_�GaPaT�GT_c RT

EZPRT[T a� V T

cT a�Ga_TP[

> aT_ Ta

9G�PVT a 9G�PVT a 9G�PVT a

9,� aP RT 9,� aP RT 9,� aP RT

Page 12: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

J]Zb[T�STU a ]

9] aP T_�STU a ]

7[Pg] � 9G�x 4 HP �:TU a ] %

Page 13: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

7[Pg] � 9G�x 4 HP �:TU a ] %7KG�w u 9G�u HP �:TU a ] �u 9_TPaT� Td�HP �:TU a ] �u 7SS�R] aP T_

u 7SS�c]Zb[T

Page 14: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

7[Pg] � 9G�x 4 HP �:TU a ] %7KG�w u 9G�u HP �:TU a ] �u 9_TPaT� Td�HP �:TU a ] �u 9] U Vb_T�c P�?GDC

Page 15: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

:PaP�J]Zb[T

9] aP T_

9,�aP RT

J]Zb[T�STU a ]

9] aP T_�STU a ]

7[Pg] � 9G�x 4 HP %

9G

w

9G�

Page 16: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

n ~

n x

ZP a R�A]PS�8PZP R V� k

7ba]�GRPZ V k

7[Pg] � 9G�x 4

Page 17: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

7[Pg] � 9G�x 47KG�w u 9G�u 9Zb aT_ �u GT_c RT �u 9_TPaT

Page 18: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

7[Pg] � 9G�x 47KG�w u 9G�u 9Zb aT_ �u GT_c RT �u 9_TPaT

Page 19: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

A

Page 20: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석
Page 21: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

C E

Page 22: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

⊙o p

⊙o

⊙o

9EI&� x

&� &�7B>&�…

Name Example

AMI ID attribute:ecs.ami-id == ami-eca289fb

Availability Zone

attribute:ecs.availability-zone== us-east-1a

Instance Type

attribute:ecs.instance-type == t2.small

Distinct Instances type=“distinctInstance”

Custom attribute:stack == prod

Page 23: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

8 PR V G _TPS 7UU af : a Ra�> aP RT

Page 24: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

V,(,eZP_VT a,( [PZZ V,(,eZP_VT V,(,eZP_VT

4� > aP RT�Hf T

Page 25: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

V,(,eZP_VT a,( [PZZ a,([ R_] a,([TS b[

a,([TS b[ a,( [PZZ V,(,eZP_VT

a,( [PZZ

a,( [PZZ a,([TS b[

b TP a Pb TP a S

4� > aP RT�Hf Tv L] T

Page 26: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

V,(,eZP_VT a,( [PZZ a,([ R_] a,([TS b[

a,([TS b[ a,( [PZZ V,(,eZP_VT a,( [PZZ

b TP a Pb TP a S

V,(,eZP_VT a,([TS b[

a,([ R_] a,( [PZZ

b TP a R

4�7cP ZP Z af�L] T�

Page 27: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

V,(,eZP_VT a,( [PZZ a,([ R_] a,([TS b[

a,([TS b[ a,( [PZZ V,(,eZP_VT a,( [PZZ

b TP a Pb TP a S

V,(,eZP_VT a,([TS b[

a,([ R_] a,( [PZZ

b TP a R

4�L] T 8 PR

Page 28: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

V,(,eZP_VT a,( [PZZ a,([ R_] a,([TS b[

a,([TS b[ a,( [PZZ V,(,eZP_VT a,( [PZZ

b TP a Pb TP a S

V,(,eZP_VT a,([TS b[

a,([ R_] a,( [PZZ

b TP a R

4�7UU af 7 a 7UU af

Page 29: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

a,([TS b[ V,(,eZP_VT a,([ R_] a,( [PZZ

a,( [PZZ a,( [PZZ V,(,eZP_VT a,( [PZZ

a,( [PZZ a,( [PZZ

V,(,eZP_VT a,( [PZZ

4� n GT_c RT

Page 30: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

HP �EZPRT[T a%7KG�w u 9G�u 9Zb aT_ �u GT_c RT �u 9_TPaT�u HP �EZPRT[T a

u HP �u b � Td�HP

Page 31: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

HP �EZPRT[T a%7KG�w u 9G�u 9Zb aT_ �u GT_c RT �u 9_TPaT�u HP �EZPRT[T a�

Page 32: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석
Page 33: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

9Z]bSKPaRW 9G w

,n : [T ]

• 9Zb aT_CP[T

• GT_c RTCP[T

.n

• 9EI T T_cPa ]

• BT[]_f T T_cPa ]

• 9EIIa Z gPa ]

• BT[]_fIa Z gPa ] 9] aP T_�> aP RT

i

9Zb aT_

HP �STU a ]

HP

GT_c RT

9Z]bSKPaRW9G�BTa_ R

S]R T_ a]

9Z]bSKPaRW9,�BTa_ R

9] aP T_�> aP RT

9] aP T_�> aP RT

Page 34: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

9G�

T T_cPa ]

• aP 9EI&

Ia Z gPa ]

• aP 9EI&

H]aPZ�9EI�b a �)�B 8�]U�[T[]_f�b TS� f�aP � �RZb aT_%e�

H]aPZ�9EI�b a �)�B 8�]U�[T[]_f�_TV aT_TS� f�R] aP T_� aP RT � �RZb aT_%

H]aPZ�9EI�b a �)�B 8�]U�[T[]_f�_T T_cTS� f�aP � �RZb aT_%e�

H]aPZ�9EI�b a �)�B 8�]U�[T[]_f�_TV aT_TS� f�R] aP T_� aP RT � �RZb aT_%

Page 35: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

9G�7KG�w u 9G�u 9Zb aT_ �u BTa_ R

Page 36: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

9G�

Ia Z gPa ]• 9EI& HP k 9EI�

% R.(ZP_VT� ,& .2 9EI & -&102B 8%

~ HP n / , 9EI &� ,.B 8 %

m HP k 9EI� ,& .2 & / ,B 85 9EI� . & / t

H]aPZ�9EI�b a �)�B 8�]U�[T[]_f�b TS� f�aP � �RZb aT_%e�

H]aPZ�9EI�b a )�B 8�]U�[T[]_f _T T_cTS� �aP �STU a ] %�e� b[ T_�]U�aP � �T_c RT%

Page 37: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

9G�7KG�w u 9G�u 9Zb aT_ �u GT_c RT �u BTa_ R

Page 38: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

7[Pg] �9Z]bSKPaRW A]V z

9Z]bSKPaRW A]V 7[Pg] �G-

7[Pg] � T

7KG�AP[ SP

7[Pg] � ZP a R TP_RW�GT_c RT

7[Pg] � 9G Ga]_T

Ga_TP[

E_]RT

GTP_RW

9Z]bSKPaRW A]V

9Z]bSKPaRW A]V

9Z]bSKPaRW A]V

Page 39: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

"containerDefinitions": [ {

"memory": 300,

"portMappings": [ {

"hostPort": 80,

"containerPort": 80 } ],

"entryPoint": [ "sh", "-c" ],

"logConfiguration": {

"logDriver": "awslogs",

"options": {

"awslogs-group": "awslogs-test",

"awslogs-region": "us-west-2",

"awslogs-stream-prefix": "nginx" }

},

"name": "simple-app",

"image": "httpd:2.4", }

HP �:TU a ] % Pd Z]V

Page 40: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

:]R T_ 9Z]bSKPaRW A]V �Z]VV V�S_ cT_ u

Page 41: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석
Page 42: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

9G�

xGaT � �4�9Z]bSKPaRW BTa_ R� 7ZP_[

GaT �,�4 9,� &7[Pg] �Z be 9G ] a [ gTS�7B>

APb RW�R] U Vb_Pa ] �

GaT �-�4�7ba]GRPZ V _]b �

Page 43: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

7KG�w u 9G�u 9Zb aT_ �u GT_c RT �u 9] U Vb_T�GT_c RT�7ba]�GRPZ V

MBT[]_fIa Z gPa ] [Ta_ R� N

9G�

Page 44: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

9G�

Page 45: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

ECS cluster instances

Auto Scaling “scale in” event

Page 46: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

ECS cluster instancesAmazon

SNS

Auto Scaling Lifecycle hook

Page 47: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

ECS cluster instances

Amazon ECS

Lambda function

AmazonSNS

Set (instance_ID, “draining”)

Page 48: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

ECS cluster instances

Amazon ECS

Lambda function

AmazonSNS

Set (instance_ID, “draining”)

If ECSDescribeTasks(instance_ID) == NULL CompleteLifecycleAction(instance_ID)

ElsePrint(“Still running some tasks”)

Page 49: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

ECS cluster instances

Amazon ECS

Lambda function

AmazonSNS

Set (instance_ID, “draining”)

If ECSDescribeTasks(instance_ID) == NULL CompleteLifecycleAction(instance_ID)

ElsePrint(“Still running some tasks”)

Complete Lifecycle hook

Page 50: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

ECS cluster instances

Amazon ECS

Lambda function

AmazonSNS

Set (instance_ID, “draining”)

If ECSDescribeTasks(instance_ID) == NULL CompleteLifecycleAction(instance_ID)

ElsePrint(“Still running some tasks”)

Complete Lifecycle hook

Page 51: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

:

Page 52: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

9ZP R�A]PS� PZP RT_� A8%�#�7 Z RPa ] �A]PS�8PZP RT_� 7A8%

A8 ]_a ]_a t ws

% A8 ]_a 2 � 5 ]_a�- - kA8� ]_a�2 � 5� ]_a�- - v]_a . . k

9ZP R�A]PS�8PZP RT_

7 Z RPa ] �A]PS�8PZP RT_

E]_a�

% ]_a 2 5 ]_a7[Pg] � 9G 7B> -,102 h 0 %

5 E]_a & y ]_a7A8 ]_a k

Page 53: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

9ZP R�A]PS�8PZP RT_� A8%

A8

9,� �7G

7 PRWT�[]SO _]ef

9,� �7G

A8

)R_TS a RP_S

)[]_aVPVT

A8

Page 54: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

7 Z RPa ] �A]PS�8PZP RT_� 7A8%

7A8

9,� �7G

)R_TS a RP_S

)[]_aVPVT

Page 55: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

EPaW P TS�_]ba V

HP_VTa� _]b

7A8

A aT T_bZT

HP_VTa HP_VTa

TPZaW�9WTR HP_VTa� _]b

A aT T_bZT

HP_VTa HP_VTa

TPZaW�9WTR

E]_a�2

E]_a�2 2

)R_TS a RP_S )[]_aVPVT

Page 56: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

6

9] aP T_�> aP RT

9] aP T_

9] aP T_

9] aP T_

6

Page 57: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

7A8 9G

9] aP T_�> aP RT

9] aP T_

9] aP T_

HP_VTa� _]b

9] aP T_

9] aP T_

HP_VTa� _]b7A8

Page 58: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

7A87KG�w u 9G�u 9Zb aT_ �u HP �:TU a ] �u E]_a�BP V �

Page 59: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

7KG�w u 9,�u A]PS�8PZP R V�u HP_VTa�V_]b �u HP_VTa ���

M WT[T_PZ�W VW� ]_a� -,102 h 0 % N

7A8

Page 60: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

H_P ]_a

APfT_�1• HHEG� TRb_ af

• 7[Pg] �9T_a U RPaT�BP PVT_� 79B%

HAG�aT_[ PaTS�Pa�7A8• _T d_P TS�a]�aP_VTa R] aP T_

Page 61: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

M7A8� z … 9Z]bSKPaRW uN

7A8�7KG�w u 9Z]bSKPaRW u BTa_ R �u 7 Z RPa ] A8

Page 62: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

Ml AP TZ N

7A8�7KG�w u 9Z]bSKPaRW u BTa_ R �u 7 Z RPa ] A8

Page 63: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

2

Page 64: 콘테이너 운영을 위한 Amazon EC2 Container Service(ECS) 집중 분석

www.awsdevday.co.kr

Dev Day 모바일 웹을 통해지금 세션 평가에 참여하시면,행사 후 기념 티셔츠를 드립니다.

• 발표 자료 및 녹화 동영상은 AWS Korea 공식소셜 채널로 공유될 예정입니다.

• #AWSDevDay 해시 태그로 의견을 남겨주세요!