🐊 ASG - μŠ€μΌ€μΌλ§ μ •μ±… (Scaling Policies)

BelugaΒ·2024λ…„ 4μ›” 30일

AWS μž„μ‹œ

λͺ©λ‘ 보기
23/35
post-thumbnail

동적 μŠ€μΌ€μΌλ§ μ •μ±… (Dynamic Scaling Policies)

λŒ€μƒ 좔적 μŠ€μΌ€μΌλ§ (Target Tracking Scaling)

  • κ°€μž₯ λ‹¨μˆœν•˜κ³  μ„€μ •ν•˜κΈ° 쉽닀.
  • μ˜ˆμ‹œλ‘œ μ˜€ν†  μŠ€μΌ€μΌλ§ 그룹의 평균 CPU μ‚¬μš©λ₯ μ„ μΆ”μ ν•˜μ—¬ 이 μˆ˜μΉ˜κ°€ 40%λŒ€μ— 머무λ₯Ό 수 μžˆλ„λ‘ ν•  수 μžˆλ‹€. 이 처럼 κΈ°λ³Έ 기쀀선을 μ„Έμš°κ³  μƒμ‹œ κ°€μš©μ΄ κ°€λŠ₯ν•˜λ‹€.

λ‹¨μˆœ / 단계 μŠ€μΌ€μΌλ§ (Simple/Step Scaling)

  • CloudWatch μ•ŒλžŒμ„ μ„€μ •ν•˜κ³  전체 ASG에 λŒ€ν•œ CPU μ‚¬μš©λ₯ μ΄ νŠΉμ • μ„€μ •ν•œ 수치λ₯Ό μ΄ˆκ³Όν•œ 경우 μš©λŸ‰μ„ μœ λ‹› λ‹¨μœ„λ‘œ μΆ”κ°€ν•˜λ„λ‘ μ„€μ •ν•  수 μžˆλ‹€.
  • 그리고 CloudWatch μ•ŒλžŒμ„ 톡해 νŠΉμ • 수치 μ΄ν•˜λ‘œ λ–¨μ–΄μ§€λ©΄ μš©λŸ‰μ„ μœ λ‹› λ‹¨μœ„λ‘œ 제거 ν•  수 μžˆλ‹€.
  • 단 CloudWatch μ•ŒλžŒμ„ μ„€μ •ν•  λ•Œμ—λŠ” ν•œ λ²ˆμ— μΆ”κ°€ν•˜κ±°λ‚˜ μ œκ±°ν•  μœ λ‹› 수λ₯Ό λ‹¨κ³„λ³„λ‘œ μ„€μ •ν•  ν•„μš”κ°€ μžˆλ‹€.

μ˜ˆμ•½λœ μž‘μ—… (Scheduled Actions)

  • λ‚˜μ™€ μžˆλŠ” μ‚¬μš© νŒ¨ν„΄μ„ λ°”νƒ•μœΌλ‘œ μŠ€μΌ€μΌλ§μ„ μ˜ˆμƒν•˜λŠ” 방식
  • μ˜ˆμ‹œλ‘œ κΈˆμš”μΌ μ˜€ν›„ 5μ‹œμ— 큰 μ΄λ²€νŠΈκ°€ μ˜ˆμ •λ˜μ–΄ μžˆλ‹€λ©΄ μ—¬λŸ¬ μ‚¬λžŒλ“€μ΄ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μ‚¬μš©ν•˜λŠ” 데에 λŒ€λΉ„ν•΄
    ASG의 μ΅œμ†Œ μš©λŸ‰μ„ μžλ™μœΌλ‘œ 5μ‹œλΆ€ν„° 10μ‹œκΉŒμ§€ λŠ˜λ¦¬λ„λ‘ ν•  수 μžˆλ‹€.
  • μŠ€μΌ€μΌλ§μ΄ ν•„μš”ν•¨μ„ 미리 μ•Œ λ•Œμ— μ˜ˆμ •λœ μž‘μ—…μ„ μ„€μ •ν•˜λ©΄ λœλ‹€.

예츑 μŠ€μΌ€μΌλ§ (Predictive Scaling)

  • AWSλ‚΄ μ˜€ν†  μŠ€μΌ€μΌλ§ μ„œλΉ„μŠ€λ₯Ό ν™œμš©ν•˜μ—¬ μ§€μ†μ μœΌλ‘œ μ˜ˆμΈ‘μ„ 생성할 수 μžˆλ‹€. λ‘œλ“œλ₯Ό 보고 λ‹€μŒ μŠ€μΌ€μΌλ§μ„ μ˜ˆμΈ‘ν•œλ‹€.
  • μ‹œκ°„μ— 걸쳐 κ³Όκ±° λ‘œλ“œλ₯Ό λΆ„μ„ν•˜κ³  예츑이 μƒμ„±λ˜λ©΄ ν•΄λ‹Ή μ˜ˆμΈ‘μ„ 기반으둜 사전에 μŠ€μΌ€μΌλ§ μž‘μ—…μ΄ μ˜ˆμ•½λœλ‹€.

μŠ€μΌ€μΌλ§μ„ μœ„ν•œ μ§€ν‘œ

  • CPU μ‚¬μš©λ₯  : 평균 CPU μ‚¬μš©λ₯ 
  • λŒ€μƒλ³„ μš”μ²­μ˜ 수 : EC2 μΈμŠ€ν„΄μŠ€λŠ” ν•œλ²ˆμ— λŒ€μƒλ³„λ‘œ 1,000개의 μš”μ²­κΉŒμ§€λ§Œ 졜적으둜 μž‘λ™ν•˜λ―€λ‘œ μ΄λŸ¬ν•œ λŒ€μƒμ„ μŠ€μΌ€μΌλ§μ— ν™œμš©ν•  수 μžˆλ‹€.
  • 평균 λ„€νŠΈμ›Œν¬ μž…μΆœλ ₯λŸ‰ : μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ΄ λ„€νŠΈμ›Œν¬μ— μ—°κ²°λœ 경우 EC2 μΈμŠ€ν„΄μŠ€μ— λŒ€ν•΄ ν•΄λ‹Ή λ„€νŠΈμ›Œν¬μ—μ„œ 병λͺ© ν˜„μƒμ΄ λ°œμƒν•  κ²ƒμœΌλ‘œ νŒλ‹¨λ˜λ©΄ 평균 λ„€νŠΈμ›Œν¬ μž…μΆœλ ₯λŸ‰μ— κΈ°λ°˜ν•˜μ—¬ νŠΉμ • μž„κ³„κ°’μ— 도달할 λ•Œ μŠ€μΌ€μΌλ§μ„ μˆ˜ν–‰ν•˜λ„λ‘ μ„€μ •ν•  수 μžˆλ‹€.
  • μ‚¬μš©μž μ •μ˜ μ§€ν‘œ : CloudWatchλ₯Ό ν™œμš©ν•˜μ—¬ μ§€ν‘œλ₯Ό μ €μž₯ν•˜κ³  이λ₯Ό 기반으둜 μŠ€μΌ€μΌλ§ 정책을 λ°”κΏ€ 수 μžˆλ‹€.

μŠ€μΌ€μΌλ§ νœ΄μ§€ (Scaling Cooldown)

  • μŠ€μΌ€μΌλ§ μž‘μ—…μ΄ 끝날 λ•Œλ§ˆλ‹€ μΈμŠ€ν„΄μŠ€μ˜ μΆ”κ°€, μ‚­μ œλ₯Ό λ§‰λ‘ ν•˜κ³  기본적으둜 5λΆ„ ν˜Ήμ€ 300초의 νœ΄μ§€ 기간을 κ°–λŠ”λ‹€.
  • νœ΄μ§€ κΈ°κ°„μ—λŠ” ASGκ°€ μΆ”κ°€ μΈμŠ€ν„΄μŠ€λ₯Ό μ‹€ν–‰ λ˜λŠ” μ’…λ£Œν•  수 μ—†λ‹€. μ΄λŠ” νœ΄μ§€ κΈ°κ°„λ™μ•ˆ μƒˆλ‘œμš΄ μΈμŠ€ν„΄μŠ€κ°€ μ•ˆμ •ν™”λ  수 μžˆλ„λ‘ ν•˜λ©° μ–΄λ–€ μƒˆλ‘œμš΄ μ§€ν‘œμ˜ 양상을 μ‚΄νŽ΄λ³΄κΈ° μœ„ν•¨μ΄λ‹€.
  • κ·ΈλŸ¬λ―€λ‘œ μ–΄λ– ν•œ μŠ€μΌ€μΌλ§ μž‘μ—…μ΄ λ°œμƒν•  λ•Œμ— 기본으둜 μ„€μ •λœ νœ΄μ§€ κΈ°κ°„μ˜ 유무λ₯Ό 확인해야 ν•œλ‹€.
  • μ¦‰μ‹œ μ‚¬μš©μ΄ κ°€λŠ₯ν•œ AMIλ₯Ό μ΄μš©ν•˜μ—¬ EC2 μΈμŠ€ν„΄μŠ€ ꡬ성 μ‹œκ°„μ„ λ‹¨μΆ•ν•˜κ³  이λ₯Ό 톡해 μš”μ²­μ„ μ’€ 더 μ‹ μ†νžˆ μ²˜λ¦¬ν•˜λŠ” 것이 μ’‹λ‹€.
profile
개발자

0개의 λŒ“κΈ€