01. Amazon ECS - EC2 Launch Type
EC2 μμμ νμ λν΄ μ΄ν΄λ³΄μ.
- ECS = Elastic Container Service
- AWS μμ 컨ν μ΄λλ₯Ό μ€ννλ©΄ ECS ν΄λ¬μ€ν°μ, μ΄λ₯Έλ° ECS Task(νμ€ν¬) λ₯Ό μ€ννλ κ²
- EC2 ν΄λ¬μ€ν°μλ EC2 μμμ ν, λ°λ‘ EC2 μΈμ€ν΄μ€μ΄λ€.
- EC2 μμμ νμΌλ‘ EC2 ν΄λ¬μ€ν°λ₯Ό μ¬μ©ν λλ μΈνλΌλ₯Ό μ§μ νλ‘λΉμ λνκ³ μ μ§ν΄μΌ νλ€.
- μ¦, ECS λ° ECSν΄λ¬μ€ν°κ° μ¬λ¬ EC2 μΈμ€ν΄μ€λ‘ ꡬμ±λκ² λλ€.
- μ΄λ, ECS μΈμ€ν΄μ€λ νΉλ³νκ² κ°κ° ECS Agent λ₯Ό μ€νν΄μΌ νλ€.
- κ·ΈλΌ ECS Agentκ° κ°κ°μ EC2 μΈμ€ν΄μ€λ₯Ό Amazon ECS μλΉμ€μ μ§μ λ ECS ν΄λ¬μ€ν°μ λ±λ‘νλ€.
- μ΄νμ ECS Task λ₯Ό μννκΈ° μμνλ©΄, AWSκ° μ»¨ν μ΄λλ₯Ό μμνκ±°λ λ©μΆ κ²μ΄λ€.
- μ¦, μ λ컀 컨ν μ΄λκ° μκΈ°λ©΄ μ¬μ§μμ λ³Ό μ μλ― μκ°μ λ°λΌ EC2 μΈμ€ν΄μ€κ° μ§μ λ κ²μ΄λ€.
- ECS Task λ₯Ό μμνκ±°λ, λ©μΆλ©΄ μλμΌλ‘ μμΉκ° μ§μ λλ€. λ°λ‘ μ΄κ² EC2 Launch Type μ΄λ€. (μμμ ν)
- λ컀 컨ν μ΄λλ 미리 νλ‘λΉμ λν Amazon EC2 μΈμ€ν΄μ€μ μμΉνλ€.
02. Amazon ECS - Fargate Launch Type
λλ²μ§Έ μ νμΌλ‘λ Fargate μμμ νμ λν΄ μμ보μ.
- λ§μ°¬κ°μ§λ‘ AWSμ λ컀 컨ν μ΄λλ₯Ό μ€ννλλ°, μ΄λ²μλ μΈνλΌλ₯Ό νλ‘λΉμ λνμ§ μμ κ΄λ¦¬ν EC2 μΈμ€ν΄μ€κ° μλ€.
- μ¦ μλ²λ¦¬μ€ μ΄λ€.
- μλ²λ₯Ό κ΄λ¦¬νμ§ μμ μλ²λ¦¬μ€λΌ λΆλ₯΄λλ°, μλ²κ° μλκ²μ μλλ€.
- Fargate μ νμ ECS ν΄λ¬μ€ν°κ° μμ λ ECS Taskλ₯Ό μ μνλ Task Definition (νμ€ν¬ μ μ)λ§ μμ±νλ©΄ AWSκ° νμν CPUλ RAMμ λ°λΌ ECS νμ€ν¬λ₯Ό λμ μ€νν©λλ€.
- μ¦, μ λ컀 컨ν μ΄λλ₯Ό μ€ννλ©΄ μ΄λμ μ€νλλμ§ μλ¦¬μ§ μκ³ κ·Έλ₯ μ€νλ©λλ€.
- μμ μ μν΄ λ°±μλμ EC2 μΈμ€ν΄μ€κ° μμ±λ νμλ μλ€. (μμ£Ό μ κΈ°ν¨ γ )
- νμ₯νλ €λ©΄ κ°λ¨νκ² Task μλ§ λ리면 λλ€.
-
EC2 μΈμ€ν΄μ€λ₯Ό κ΄λ¦¬ν νμκ° μλ€.
- μνμμλ μλ²λ¦¬μ€μΈ Fargate λ₯Ό μ¬μ©νλΌλκ² μμ£Ό λμ¨λ€.
- EC2 μμμ νλ³΄λ€ κ΄λ¦¬κ° μ½κΈ° λλ¬Έμ΄λ€.
03. Amazon ECS - IAM Roles for ECS
Amazon ECS μ 2κ°μ§ μμμ νμ μμ보μμΌλ, ECS Taskμ IAM μν μ λν΄ μμ보λλ‘ νμ
-
EC2 Instance Profile
- EC2 μμμ νμμλ§ μ¬μ©λ¨ (Fargate λ μ¬μ©μν¨)
- EC2 μΈμ€ν΄μ€κ° Docker, ECS Agent 2κ°λ₯Ό μ€ννλ€κ³ νκ³ , EC2 μμμ νμ μ¬μ©νλ€λ©΄
- EC2 μΈμ€ν΄μ€ νλ‘νμΌμ μμ±νκ² λλ€.
- ECS Agentκ° EC2 μΈμ€ν΄μ€ νλ‘νμΌμ μ΄μ©ν΄ API νΈμΆμ λ§λ€κ² λλ€.
- κ·ΈλΌ μΈμ€ν΄μ€κ° μ μ₯λ ECS μλΉμ€κ° CloudWatch λ‘κ·Έμ API νΈμΆμ ν΄μ 컨ν
μ΄λ λ‘κ·Έλ₯Ό 보λ΄κ³ ,
ECR λ‘λΆν° λ컀 μ΄λ―Έμ§λ₯Ό κ°μ Έμ¨λ€. - Secret Manager λλ SSM Parameter Store μμ νκ²½λ³μ or λ―Όκ°λ°μ΄ν°λ₯Ό μ°Έκ³ νκΈ°λ νλ€.
-
ECS Task Role
- ECS Taskλ κ°κ° ECS Task Role λ₯Ό κ°μ§κ² λλ€.
- μ΄κ²μ EC2 μ Fargate μμμ ν λͺ¨λ ν΄λΉλλ©° λ κ°μ νμ€ν¬κ° μλ€λ©΄ κ°μμ νΉμ μν μ λ§λ€μμλ€.
- μμ κ·Έλ¦Όμ λͺ¨μμ²λΌ νμ€ν¬A λ EC2 νμ€ν¬ A μν μ λ§‘κ³ , νμ€ν¬Bλ EC2 νμ€ν¬ Bμν μ 맑λλ€.
- μν μ λ€λ₯΄κ² νλ μ΄μ
- μν μ΄ κ°μ λ€λ₯Έ ECS μλΉμ€μ μ°κ²°ν μ μκ² νκΈ° λλ¬Έ
- μλ₯Όλ€μ΄, EC2 νμ€ν¬ Aμν μ νμ€ν¬ Aκ° S3μ API νΈμΆμ μ€νν μ μλλ‘ νλ€λ©΄
- νμ€ν¬ Bλ, DynamoDBμ APIλ₯Ό νΈμΆμ μ€νν μ μλλ‘ νλ€.
- ECS μλΉμ€μ Task Definition μμ Task Role μ μ μν μ μλ€.
EC2 νλ‘νμΌ μν κ³Ό ECS νμ€ν¬ μν μ μ°¨μ΄μ μ κΈ°μ΅ν΄μΌ νλ€.
04. Amazon ECS - Load Balancer Integrations
ECS λ‘λλ°Έλ°μ ν΅ν©μ λν΄ μμ보μ.
- EC2 μμμ νμΌλ‘ μμλ₯Ό λ€μ΄ μ€λͺ νμ§λ§, Fargate μμμ νλ λ§μ°¬κ°μ§μ΄λ€.
- μ¬κΈ° μ¬λ¬ ECS νμ€ν¬λ€μ΄ μ€νλλ©°, ECS ν΄λ¬μ€ν° μμ μμ΅λλ€.
- HTTPλ HTTPS μλ ν¬μΈνΈλ‘ νμ€ν¬λ₯Ό μ¬μ©νκΈ° μν΄ ALB λ₯Ό μμμ μ€ννλ©΄ λͺ¨λ μ¬μ©μλ€μ΄ ALB λ° λ°±μλμ ECS νμ€ν¬μ λ°λ‘ λλ¬νλ€.
-
ALB λ μ΄λ° κ²½μ°λ₯Ό ν¬ν¨ν΄ λλΆλΆμ μ¬μ©μ¬λ‘λ₯Ό μ§μνλ€.
- λ€νΈμν¬ λ‘λ λ°Έλ°μ(NBL) λ μ²λ¦¬λμ΄ λ§€μ° λ§κ±°λ λμ μ±λ₯μ΄ μꡬλ λλ§ κΆμ₯νλ€.
- AWS Private Linkμ μ¬μ©ν λλ κΆμ₯νλ€.
- μ€λλ μΈλμΈ ELBλ μ¬μ©ν μ μμ§λ§ κΆμ₯νμ§ μλλ€.
- κ³ κΈ κΈ°λ₯μ΄ μμλΏλλ¬ Fargate μλ μ°κ²°ν μκ° μλ€.
- λ°λ©΄ ALB λ Fargate μλ μ¬μ©ν μ μλ€.
05. Amazon ECS - Data Volumes (EFS)
ECS μ λ°μ΄ν° μ§μμ±μ λν΄ μμ보μ
- λ°μ΄ν° λ³Όλ₯¨μ΄ νμνλ©° μ¬λ¬ μ’ λ₯κ° μλλ° κ·Έ μ€ νλκ° EFSμμ μμ£Ό μ¬μ©λλ€.
- ECS ν΄λ¬μ€ν°μ EC2 μΈμ€ν΄μ€μ Fargate μμμ ν λλ€ κ΅¬ννλ€κ³ κ°μ νλ€.
- EC2 νμ€ν¬μ νμΌ μμ€ν
μ λ§μ΄νΈν΄μ λ°μ΄ν°λ₯Ό 곡μ νλ €κ³ νλ€.
- EFS νμΌ μμ€ν μ μ¬μ©νλκ² μ’λ€
- λ€νΈμν¬ νμΌ μμ€ν μ΄λΌ EC2 μ Fargate λͺ¨λ νΈνμ΄ λκ³ ,
- EC2 νμ€ν¬μ νμΌ μμ€ν μ μ§μ λ§μ΄νΈν μ μλ€.
- μ΄λ AZμ μ€νλλ νμ€ν¬λ Amazon EFS μ μ°κ²°λμ΄ μλ€λ©΄ λ°μ΄ν°λ₯Ό 곡μ ν κ±°κ³ μνλ€λ©΄ νμΌμμ€ν μ ν΅ν΄ λ€λ₯Έ νμ€ν¬μ μ°κ²°ν μ μκΈ° λλ¬Έμ΄λ€.
-
λ°λΌμ Fargate λ‘ μλ²λ¦¬μ€λ°©μμΌλ‘ ECS νμ€ν¬λ₯Ό μ€ννκ³ νμΌ μμ€ν μ§μμ±μ μν΄ Amazon EFS λ₯Ό μ¬μ©νλκ² κ°μ₯ μ’λ€.
- EFS μμ μλ²λ¦¬μ€μ΄κΈ° λλ¬Έμ μλ²λ₯Ό κ΄λ¦¬ν νμκ° μκ³ λ―Έλ¦¬ λΉμ©μ μ§λΆνλ€.
- 미리 νλ‘λΉμ λνλ©΄ λ¬Έμ κ° μλ€.
- μ¬μ©μ¬λ‘λ‘λ EFS μ ECSλ₯Ό ν¨κ» μ¬μ©ν΄μ λ€μ€ AZκ° κ³΅μ νλ 컨ν μ΄λμ μꡬ μ€ν 리μ§κ° μλ€.
- μνμμ μ£Όμν μ μ νμ¬ ECS κ° Lustreμ© FSxλ μ§μνμ§ μλλ€.
- λ ECS νμ€ν¬μ νμΌ μμ€ν μΌλ‘ Amazon S3 λ²ν·μ λ§μ΄νΈν μ μλ€.
λκΈλ¨κΈ°κΈ°