[TIL] μ΄μ μ λ΅ (1)
π€π» Proxy Server : νλ‘μ μλ²
- ν΄λΌμ΄μΈνΈκ° μλ²μ μν΅ν λ μλ²μ λ°λ‘ μ κ·Όνμ§ μκ³ μμ μ ν΅ν΄ μλ²μ μ κ·Όν μ μλλ‘ ν΄μ£Όλ λ리 μλ²
- μΌλ° μ¬μ©μλ μ§μμ΄ μ νλμ΄ μλ μλΉμ€λ₯Ό μ΄μ©νκΈ° μν΄ μ°ννκ±°λ μΊμλ₯Ό ν΅ν΄ λ λΉ λ₯Έ μ΄μ©μ μν΄ νλ‘μ μλ²λ₯Ό μ¬μ©
πνλ‘μ μλ² μ’ λ₯
β Forward Proxy
- νλ‘μ μλ²κ° ν΄λΌμ΄μΈνΈμ κ°κΉμ΄ μλ κ²½μ°
- ν΄λΌμ΄μΈνΈ κ°κΉμ΄μ μμΉν νλ‘μ μλ²λ‘ ν΄λΌμ΄μΈνΈλ₯Ό λμ νμ¬ μλ²μ μμ² μ λ¬
- μ£Όλ‘ μΊμ±μ μ 곡νλ κ²½μ°κ° λ§μ μ¬μ©μκ° λΉ λ₯Έ μλΉμ€ μ΄μ© κ°λ₯νλλ‘ λμμ€
π Forward Proxy μ₯μ
βΈ μΊμ±μ ν΅ν λΉ λ₯Έ μλΉμ€ μ΄μ© κ°λ₯
- ν΄λΌμ΄μΈνΈλ μλ²κ° μλ νλ‘μ μλ²μ μν΅
- μ¬λ¬ ν΄λΌμ΄μΈνΈκ° λμΌν μμ²μ 보λ΄λ κ²½μ°,
첫 μλ΅μ νκ³ κ²°κ³Ό λ°μ΄ν°λ₯Ό μΊμμ μ μ₯ ν΄λκ³ μ΄ν μλ²μ μ¬μμ²μ 보λ΄μ§ μμλ λΉ λ₯΄κ² μλ΅ μ λ¬ κ°λ₯
⸠보μ
- ν΄λΌμ΄μΈνΈμμ νλ‘μ μλ²λ₯Ό κ±°μΉ ν μλ²μ μμ²μ΄ λμ°©νκΈ° λλ¬Έμ μλ²μμ ν΄λΌμ΄μΈνΈμ IP μΆμ μ΄ νμν κ²½μ°
ν΄λΌμ΄μΈνΈμ IPκ° μλ μλ²μ IPκ° μ λ¬λ¨
→ μ¦, μλ²μκ² ν΄λΌμ΄μΈνΈλ₯Ό μ¨κΈΈ μ μμ
β‘ Reverse Proxy
- νλ‘μ μλ²κ° μλ²μ κ°κΉμ΄ μλ κ²½μ°
- μλ²μ κ°κΉμ΄ μμΉν νλ‘μ μλ²λ‘ μλ²λ₯Ό λμ νμ¬ ν΄λΌμ΄μΈνΈμ μλ΅ μ 곡
- λΆμ° μ²λ¦¬λ₯Ό λͺ©μ μΌλ‘ νκ±°λ 보μμ μν΄ νλ‘μ μλ²λ₯Ό μ΄μ©
π Reverse Proxy μ₯μ
βΈ λΆμ° μ²λ¦¬
- ν΄λΌμ΄μΈνΈ-μλ² κ΅¬μ‘°μμ μ¬μ©μκ° λ§μμ Έ μλ²μ κ³ΌλΆνκ° μ¬ κ²½μ° λΆνλ₯Ό λΆμ°ν μ μμ
- νλ‘μ μλ²λ‘ μμ²μ΄ λ€μ΄μ€λ©΄ μ¬λ¬ λμ μλ²λ‘ μμ²μ λλμ΄ μ λ¬νμ¬ μ²λ¦¬
⸠보μ
- ν΄λΌμ΄μΈνΈμκ² μλ²λ₯Ό μ¨κΈΈ μ μμ
- ν΄λΌμ΄μΈνΈ μ μ₯μμμ μμ² λ³΄λ΄λ μλ²κ° νλ‘μ μλ²κ° λλ―λ‘ μ€μ μλ²μ IP μ£Όμκ° λ ΈμΆλμ§ μμ
ππ» Load Balancer : λ‘λλ°Έλ°μ
- μλ²μ κ³ΌλΆνλ‘ μΈν΄ μνν μλΉμ€λ₯Ό μ 곡νμ§ λͺ»νλ κ²½μ° ν΄κ²°νκΈ° μν λ°©λ²
β Scale Up : μλ²μ νλμ¨μ΄ μ κ·Έλ μ΄λ
- 물리μ μΌλ‘ μλ²μ μ¬μμ λμ΄λ νλμ¨μ΄μ λ°©λ²
- μλ²μ μλ₯Ό λλ¦¬μ§ μκ³ νλ‘κ·Έλ¨ κ΅¬νμ μμ΄ λ³νκ° νμ μμ
- μλ²μ μ¬μμ λμ΄λλ° κ΅μ₯ν λμ λΉμ©μ΄ λ€κ³ νλμ¨μ΄μ μ κ·Έλ μ΄λμ νκ³κ° μμ
- μ¬μμ λλ¦°λ§νΌ ν΄λΌμ΄μΈνΈ μμ²μ΄ λ§μμ§λ©΄ μλ²μ λ°μνλ λΆνλ μ¬μ ν ν΄κ²°νμ§ λͺ»ν μν©μ΄ λ¨
β‘ Scale Out : μλ²μ κ°―μλ₯Ό λ리λ λ°©λ²
- μλ²μ κ°―μλ₯Ό λλ € νλμ μλ²μ μ€ λΆνλ₯Ό λΆμ°μν€λ λ°©λ²
- λ§μ μμ²μ΄ μ€λλΌλ μ¬λ¬ λμ μλ²κ° λλμ΄ μ²λ¦¬νκΈ° λλ¬Έμ μλ²μ μ¬μμ λμ΄μ§ μκ³ λ λΉκ΅μ μ λ ΄ν λ°©λ²μΌλ‘ λΆν μ²λ¦¬
π‘ μ¬λ¬ λμ μλ²λ‘ λΆνλ₯Ό μ²λ¦¬νλ κ²½μ°, ν΄λΌμ΄μΈνΈλ‘ μμ²μ μ΄λ μλ²λ‘ 보λ΄μ μ²λ¦¬ν΄μΌ ν κΉ?
: λ‘λ λ°Έλ°μ
- μμ²μ μ¬λ¬ μλ²μ λλμ΄ μ²λ¦¬ν μ μλλ‘ κ΅ν΅μ 리 ν΄μ€
- μ¬λ¬ μλ²μ κ΅ν΅ μ 리λ₯Ό ν΄μ£Όλ κΈ°μ νΉμ νλ‘κ·Έλ¨μ λ‘λ λ°Έλ°μ±μ΄λΌκ³ ν¨
πλ‘λ λ°Έλ°μ μ’ λ₯
: ν΄λΌμ΄μΈνΈμ μμ²μ μ΄λ€ κ²μ κΈ°μ€μΌλ‘ λΆμ°μν€λμ λ°λΌ λ€ κ°μ§ μ’ λ₯λ‘ λλ¨
β L2 : λ°μ΄ν° μ μ‘ κ³μΈ΅μμ Mac μ£Όμλ₯Ό λ°νμΌλ‘ λ‘λ λ°Έλ°μ±
β‘ L3 : λ€νΈμν¬ κ³μΈ΅μμ IP μ£Όμλ₯Ό λ°νμΌλ‘ λ‘λ λ°Έλ°μ±
β’ L4 :μ μ‘ κ³μΈ΅μμ IP μ£Όμμ Port λ₯Ό λ°νμΌλ‘ λ‘λ λ°Έλ°μ±
β£ L7 : μμ© κ³μΈ΅μμ ν΄λΌμ΄μΈνΈμ μμ²μ λ°νμΌλ‘ λ‘λ λ°Έλ°μ±
ππ» Auto Scaling : μ€ν μ€μΌμΌλ§
- Scale-Out λ°©μμΌλ‘ μλ²λ₯Ό μ¦μ€ν λ μλμΌλ‘ μλ²(리μμ€)λ₯Ό κ΄λ¦¬ν΄μ£Όλ κΈ°λ₯
- ν΄λΌμ΄μΈνΈ μμ²μ΄ λ§μμ Έ μλ²μ μ²λ¦¬ μꡬλμ΄ μ¦κ°νλ©΄ μ 리μμ€λ₯Ό μλμΌλ‘ μΆκ°
+ λ°λλ‘ μ²λ¦¬ μꡬλμ΄ μ€μ΄λ€λ©΄ 리μμ€λ₯Ό κ°μμμΌ μ μ ν λΆμ° νκ²½μ λ§λ€μ΄μ€
π Auto Scaling μ₯μ
βΈ λμ μ€μΌμΌλ§
- μ¬μ©μμ μꡬ μμ€μ λ°λΌ 리μμ€λ₯Ό λμ μΌλ‘ μ€μΌμΌλ§ ν μ μμ
- μ€μΌμΌμ ν μ μλ μλ²μ μλ μ νμ΄ μμ
→ νμν κ²½μ° μλ² λ λμμ μλ°±~μλ§ λμ μλ²λ‘ μ¦μ μ€μΌμΌ μ ν μ μμ
βΈ λ‘λ λ°Έλ°μ±
- 리μμ€λ₯Ό λμ μΌλ‘ μ€μΌμΌμ νΉμ μ€μΌμΌλ€μ΄ν¨
- λ‘λ λ°Έλ°μμ ν¨κ» μ¬μ©νλ©΄ λ€μμ EC2 μΈμ€ν΄μ€μκ² μν¬ λ‘λλ₯Ό ν¨κ³Όμ μΌλ‘ λΆλ°°ν μ μμ΄ μ¬μ©μκ° μ μν
κ·μΉμ λ°λΌ μν¬λ‘λλ₯Ό ν¨κ³Όμ μΌλ‘ κ΄λ¦¬ κ°λ₯
βΈ νκ² νΈλνΉ
- μ¬μ©μλ νΉμ νκ²μ λν΄μλ§ Auto Scaling ν μ μμΌλ©° μ¬μ©μκ° μ€μ ν νκ²μ λ§μΆ° EC2 μΈμ€ν΄μ€ μ μ‘°μ
βΈ ν¬μ€ 체ν¬μ μλ² νλ¦Ώ κ΄λ¦¬
- Auto Scalingμ μ΄μ©νλ©΄ EC2 μΈμ€ν΄μ€μ ν¬μ€ μ²΄ν¬ μνλ₯Ό λͺ¨λν°λ§ ν μ μμ
- ν¬μ€ μ²΄ν¬ κ³Όμ μμ λ¬Έμ κ° κ°μ§λλ©΄ μλμΌλ‘ λ€λ₯Έ μΈμ€ν΄μ€λ‘ κ΅μ²΄
π‘ μλ² νλ¦Ώ : Server Fleet
- λ€μμ EC2 μλ²μμ μ ν리μΌμ΄μ μ νΈμ€ν νλ κ²½μ° μ΄λ€ μΌλ ¨μ EC2 μλ² μ§ν©
- Auto Saclingμ μ μ μμ€μ μλ² νλ¦Ώ μ©λμ μ μ§νλλ° λμμ μ€
βͺοΈ EC2 Auto Scaling νμ©
- μ€μ§ EC2 μλ²λΌλ 리μμ€λ§μ λμμΌλ‘ ν¨
π μμ ν νλ¦Ώ : Launch Configuration
- Auto ScalingμΌλ‘ μΈμ€ν΄μ€λ₯Ό νμ₯ λλ μΆμνλ €λ©΄ μ΄λ€ μλ²λ₯Ό μ¬μ©ν μ§ κ²°μ ν΄μΌ ν¨
→ μ΄λ μμ ν νλ¦Ώμ ν΅ν΄ κ°λ₯
→ AMI μμΈ μ 보, μΈμ€ν΄μ€ νμ , ν€ νμ΄, μνλ¦¬ν° κ·Έλ£Ή λ± μΈμ€ν΄μ€μ λν λͺ¨λ μ 보λ₯Ό λ΄κ³ μμ
- λ§μ½ μμ ν νλ¦Ώμ μ¬μ©νμ§ μκ³ μμ±νμ§ μμΌλ©΄ μμ ꡬμ±μ μμ±ν μ μμ
π‘ μμ ꡬμ±
- EC2 Auto Scalingμ΄ μ¬μ©μλ₯Ό μν΄ μμ±νλ EC2 μΈμ€ν΄μ€ μ νμ μ§μ νλ€λ μ μμ μμ ν νλ¦Ώκ³Ό λΉμ·
- μ¬μ©ν AMIμ ID, μΈμ€ν΄μ€ μ ν, ν€ νμ΄, 보μ κ·Έλ£Ή λ±μ μ 보λ₯Ό ν¬ν¨μμΌ μμ κ΅¬μ± μμ±
π Auto Scaling κ·Έλ£Ή μμ±
- Auto Scaling κ·Έλ£Ήμ μ€μΌμΌμ λ° μ€μΌμΌλ€μ΄ κ·μΉμ λͺ¨μ
- μΈμ€ν΄μ€ μμλΆν° μμ κΉμ§ λͺ¨λ λμμ λν κ·μΉκ³Όμ μ± μ λ΄κ³ μμ
π Scaling μ ν
β μΈμ€ν΄μ€ λ 벨 μ μ§
- κΈ°λ³Έ μ€μΌμΌλ§ κ³νμ΄λΌκ³ λ ν¨
- νμ μ€ν μνλ₯Ό μ μ§νκ³ μ νλ μΈμ€ν΄μ€μ μλ₯Ό μ§μ ν μ μμ
- μΌμ ν μμ μΈμ€ν΄μ€κ° νμν κ²½μ° μ΅μ, μ΅λ λ° μνλ μ©λμ λμΌν κ°μ μ€μ κ°λ₯
β‘ μλ μ€μΌμΌλ§
- κΈ°μ‘΄ Auto Scaling κ·Έλ£Ήμ ν¬κΈ°λ₯Ό μλμΌλ‘ λ³κ²½ν μ μμ
- μ¬μ©μκ° μ§μ μ½μ, API, CLI λ±μ μ΄μ©ν΄ μλμΌλ‘ μΈμ€ν΄μ€λ₯Ό μΆκ°νκ±°λ μμ ν΄μΌ ν¨
β’ μΌμ λ³ μ€μΌμΌλ§
- μμΈ‘ μ€μΌμΌλ§ νΈλν½μ λ³νλ₯Ό μμΈ‘ κ°λ₯
- νΉμ μκ°λμ μ΄λ μ λμ νΈλν½μ΄ μ¦κ°νλμ§ ν¨ν΄μ νμ νκ³ μλ€λ©΄ μΌμ λ³ μ€μΌμΌλ§ μ¬μ© μΆμ²
β£ λμ μ€μΌμΌλ§
- μμ λ³νμ λμνμ¬ κ·Έλ£Ήμ μ©λμ μ‘°μ νλ λ°©λ²
- Cloud Watchκ° λͺ¨λν°λ§νλ μ§νλ₯Ό μΆμ νμ¬ κ²½λ³΄ μνμΌ λ μνν μ€μΌμΌλ§ κ·μΉμ μ ν¨