kubernetes_replica
Last updated
Last updated
λ ν리μΌμ΄μ 컨νΈλ‘€λ¬(rc)
λ ν리μΌμ΄μ 컨νΈλ‘€λ¬λ μΏ λ²λ€ν°μ€ 리μμ€λ‘μ νλκ° νμ μ€νλλλ‘ λ³΄μ₯ν©λλ€. ν΄λ¬μ€ν°μμ λ Έλκ° μ¬λΌμ§κ±°λ λ Έλμμ νλκ° μ κ±°λ κ²½μ°, λ ν리μΌμ΄μ 컨νΈλ‘€λ μ¬λΌμ§ νλλ₯Ό κ°μ§ν΄ κ΅μ²΄ νλλ₯Ό μμ±ν©λλ€.
λμ
λ ν리μΌμ΄μ 컨νΈλ‘€λ¬λ μ€ν μ€μΈ νλ λͺ©λ‘μ μ§μμ μΌλ‘ λͺ¨λν°λ§νκ³ , νΉμ μ νμ μ€μ νλ μκ° μλνλ μμ μΌμΉνλμ§ νμ νμΈν©λλ€. μ΄λ° νλκ° λ무 μ κ² μ€ν μ€μΈ κ²½μ° νλ ν νλ¦Ώμμ μ 볡μ λ³Έμ λ§λ€κ³ λ무 λ§μ νλκ° μ€ν μ€μ΄λ©΄ μ΄κ³Ό 볡μ λ³Έμ΄ μ κ±°λ©λλ€.
λ ν리μΌμ΄μ 컨νΈλ‘€λ¬μ μΈ κ°μ§ μμ μ΄ν΄
λ μ΄λΈ μ λ ν°(label selector) : λ ν리μΌμ΄μ 컨νΈλ‘€λ¬μ λ²μμ μλ νλλ₯Ό κ²°μ ν©λλ€.
λ ν리카 μ(replica count) : μ€νν νλμ μλνλ(desired) μλ₯Ό μ§μ ν©λλ€.
νλ ν νλ¦Ώ(pod template) : μλ‘μ΄ νλ λ ν리카λ₯Ό λ§λ€ λ μ¬μ©λ©λλ€.
λ ν리μΌμ΄μ 컨νΈλ‘€λ¬ μ¬μ© μ μ΄μ
κΈ°μ‘΄ νλκ° μ¬λΌμ§λ©΄ μ νλλ₯Ό μμν΄ νλ(λλ μ¬λ¬ νλμ 볡μ λ³Έ)κ° νμ μ€νλλλ‘ ν©λλ€.
ν΄λ¬μ€ν° λ Έλμ μ₯μ κ° λ°μνλ©΄ μ₯μ κ° λ°μν λ Έλμμ μ€ν μ€μΈ λͺ¨λ νλ(λ ν리μΌμ΄μ 컨νΈλ‘€λ¬μ μ μ΄νμ μλ νλ)μ κ΄ν κ΅μ²΄ 볡μ λ³Έμ΄ μμ±λ©λλ€.
μλ λλ μλμΌλ‘ νλλ₯Ό μ½κ² μνμΌλ‘ νμ₯ν μ μκ² ν©λλ€.
λ ν리μΌμ΄μ 컨νΈλ‘€λ¬ λμ λ ν리카μ μ¬μ©νκΈ°(rs)
μΏ λ²λ€ν°μ€ ν΄λ¬μ€ν° μμμ 미리 μ§μ λ Podλ₯Ό μμ±νμ¬ μ€νμμΌ λλ μ₯μΉμ λλ€.
Podκ° νμν μλ§νΌ μ€νμν¨ μνλ₯Ό ν΄λΌμ°λ μμ νμ λ§λ€μ΄ λλμν μ ν©λλ€.
μ΄κΈ°μλ λ ν리μΌμ΄μ 컨νΈλ‘€λ¬κ° νλλ₯Ό 볡μ νκ³ λ Έλ μ₯μ κ° λ°μνμ λ μ¬μ€μΌμ€λ§νλ μ μΌν μΏ λ²λ€ν°μ€ κ΅¬μ± μμμμ΅λλ€. νμ λ ν리카μ μ΄λΌλ μ μ¬ν 리μμ€κ° λμ λμ΄ μ°¨μΈλ λ ν리μΌμ΄μ 컨νΈλ‘€λ¬μ΄λ©°, λ ν리μΌμ΄μ 컨νΈλ‘€λ¬λ₯Ό μμ ν λ체ν κ²μ λλ€.(λ ν리μΌμ΄μ 컨νΈλ‘€λ¬λ κ²°κ΅ μ¬μ©λμ§ μκ² λ κ²)
λ ν리카μ κ³Ό λ ν리μΌμ΄μ 컨νΈλ‘€λ¬ λΉκ΅
λ ν리카μ μ λ ν리μΌμ΄μ 컨νΈλ‘€λ¬μ λκ°μ΄ λμνμ§λ§ μ’ λ νλΆν ννμμ μ¬μ©νλ νλ μ λ ν°λ₯Ό κ°κ³ μμ΅λλ€.
λ ν리μΌμ΄μ 컨νΈλ‘€λ¬μ λ μ΄λΈ μ λ ν°λ νΉμ λ μ΄λΈμ΄ μλ νλλ§μ 맀μΉμν¬ μ μλ λ°λ©΄, λ ν리카μ μ μ λ ν°λ νΉμ λ μ΄λΈμ΄ μλ νλλ λ μ΄λΈμ κ°κ³Ό μκ΄μμ΄ νΉμ λ μ΄λΈμ ν€λ₯Ό κ°λ νλλ₯Ό 맀μΉμν¬ μ μμ΅λλ€.
λ ν리μΌμ΄μ 컨νΈλ‘€λ¬λ κ°μ μκ΄μμ΄ λ μ΄λΈ ν€μ μ‘΄μ¬λ§μΌλ‘ νλλ₯Ό 맀μΉμν¬ μ μμ§λ§, λ ν리카μ μ κ°λ₯ν©λλ€.
λ°λͺ¬μ μ μ¬μ©ν΄ κ° λ Έλμ μ νν ν κ°μ νλ μ€ννκΈ°
ν΄λ¬μ€ν°μ λͺ¨λ λ Έλμ, λ ΈλλΉ νλμ νλλ§ μ€νλκΈΈ μνλ κ²½μ°
λͺ¨λ λ Έλμμ λ‘κ·Έ μμ§κΈ°μ 리μμ€ λͺ¨λν°λ₯Ό μ€ννλ €λ κ²½μ°. μ’μ μλ μΏ λ²λ€ν°μ€μ kube-proxy νλ‘μΈμ€μ΄λ©°, μλΉμ€λ₯Ό μλμν€κΈ° μν΄ λͺ¨λ λ Έλμμ μ€νλΌμΌ ν©λλ€.
λ°λͺ¬μ (κ° λ Έλμ μ νν νλμ 볡μ λ³Έλ§ μ€ν)μ κ° λ Έλμμ νλμ νλ 볡μ λ³Έλ§ μ€ννμ§λ§ λ ν리카μ μ ν΄λ¬μ€ν° μ 체μμ 무μμλ‘ νλλ₯Ό λΆμ°μν΅λλ€.
λ°λͺ¬μ μΌλ‘ λͺ¨λ λ Έλμ νλ μ€ννκΈ°
λͺ¨λ ν΄λ¬μ€ν° λ Έλλ§λ€ νλλ₯Ό νλλ§ μ€ννλ €λ©΄ λ°λͺ¬μ (DaemonSet) μ€λΈμ νΈλ₯Ό μμ±ν΄μΌ ν©λλ€. λ°λͺ¬μ μ μν΄ μμ±λλ νλλ νκΉ λ Έλκ° μ΄λ―Έ μ§μ λΌ μκ³ μΏ λ²λ€ν°μ€ μ€μΌμ€λ¬λ₯Ό 건λλ°λ κ²μ μ μΈνλ©΄ μ΄ μ€λΈμ νΈλ λ ν리μΌμ΄μ 컨νΈλ‘€λ¬ λλ λ ν리카μ κ³Ό λ§€μ° μ μ¬ν©λλ€. νλκ° ν΄λ¬μ€ν° λ΄μ 무μμλ‘ ν©μ΄μ Έ λ°°ν¬λμ§ μμ΅λλ€.
λ ν리카μ (λλ λ ν리μΌμ΄μ 컨νΈλ‘€λ¬)μ΄ ν΄λ¬μ€ν°μ μνλ μμ νλ 볡μ λ³Έμ΄ μ‘΄μ¬νλμ§ νμΈνλ λ°λ©΄, λ°λͺ¬μ μλ μνλ 볡μ λ³Έ μλΌλ κ°λ μ΄ μμ΅λλ€. νλ μ λ ν°μ μΌμΉνλ νλ νλκ° κ° λ Έλμμ μ€ν μ€μΈμ§ νμΈνλ κ²μ΄ λ°λͺ¬μ μ΄ μνν΄μΌ νλ μν μ΄κΈ° λλ¬Έμ 볡μ λ³Έ κ°λ μ΄ νμνμ§ μμ΅λλ€.
λ Έλκ° λ€μ΄λλ©΄ λ°λͺ¬μ μ λ€λ₯Έ κ³³μμ νλλ₯Ό μμ±νμ§ μμ΅λλ€. κ·Έλ¬λ μ λ Έλκ° ν΄λ¬μ€ν°μ μΆκ°λλ©΄ λ°λͺ¬μ μ μ¦μ μ νλ μΈμ€ν΄μ€λ₯Ό μ λ Έλμ λ°°ν¬ν©λλ€. μ€μλ‘ νλ μ€ νλλ₯Ό μμ ν΄ λ Έλμ λ°λͺ¬μ μ νλκ° μλ κ²½μ°μλ λ§μ°¬κ°μ§ μ λλ€.
https://www.oreilly.com/library/view/kubernetes-in-action/9781617293726/
https://www.oreilly.com/library/view/cloud-native-devops/9781492040750/