• toc {:toc}

Pods

  • νŒŸλ“€μ€ μ‚΄μ•„λ‚˜κ³  μ£½κ³ , desired state 3개λ₯Ό μš”μ²­ν–ˆμ„ λ•Œ κ³„μ†ν•΄μ„œ ꡐ체될 수 μžˆλ‹€.
  • λ•Œλ¬Έμ— IP μ£Όμ†Œλ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠλŠ”λ‹€.

Services

image

  • μ™ΈλΆ€μ—μ„œ APIλ₯Ό ν†΅ν•œ μš”μ²­μ€ 라벨을 톡해 ν•΄λ‹Ήν•˜λŠ” νŒŸμ„ μ„ νƒν•˜κΈ° μœ„ν•΄ μ„œλΉ„μŠ€λ₯Ό κ±°μΉœλ‹€.
  • 뒀에 μžˆλŠ” νŒŸμ„ μ„œλΉ„μŠ€κ°€ μ„ νƒν•΄μ„œ μ „λ‹¬ν•˜κ³  μžλ™μ μœΌλ‘œ load balancing을 μ§„ν–‰ν•œλ‹€.
  • μ „λ‹¬ν•˜λŠ” κΈ°λ³Έ κ³„νšμ€ fair이닀.
  • 뒀에 μžˆλŠ” νŒŸμ—κ²Œ 골고루 λ°°ν¬ν•œλ‹€.
  • replica controller 2개 쑴재 버전1 2개, 버전2 1개

image

  • 버전2.0.0만 받도둝 μ„œλΉ„μŠ€μ— μ§€μ •ν•˜μ—¬ ν•΄λ‹Ή v2 νŒŸλ“€λ§Œ μ§€μ •λ°›μ•„ μ‚¬μš©λ˜λŠ” 것을 ν‘œν˜„ν•˜κ³  μžˆλ‹€.

  • IPλ₯Ό μ‚¬μš©ν•˜μ§€ μ•Šκ³  라벨을 μ‚¬μš©ν•œ μ„œλΉ„μŠ€λ₯Ό 톡해 νŒŸμ„ μ§€μ •ν•œλ‹€.

ClusterIP

  • 기본적인 μΏ λ²„λ„€ν‹°μŠ€ μ„œλΉ„μŠ€μ΄λ‹€.
  • 톡상 μ‚¬μš©ν•˜μ§€ μ•ŠλŠ” μ„œλΉ„μŠ€μ΄λ‹€.
  • ν΄λŸ¬μŠ€ν„° μ•ˆμ—μ„œ μœ νš¨ν•œ IPμ„œλΉ„μŠ€λ₯Ό μ‚¬μš©ν•œλ‹€.
  • μ‚¬μš©ν•˜μ§€ μ•ŠλŠ” μ΄μœ λŠ” 같은 ν΄λŸ¬μŠ€ν„° μ•ˆμ—μ„œ frontend μ„œλΉ„μŠ€κ°€ backend에 μžˆλŠ” μ£½κ³  생성될 λ•Œλ§ˆλ‹€ λ³€κ²½λ˜λŠ” IP μ£Όμ†Œλ₯Ό μ‚¬μš©ν•  ν•„μš”κ°€ μ—†κΈ° λ•Œλ¬Έμ΄λ‹€.
  • ν΄λŸ¬μŠ€ν„° μ•ˆμ—μ„œλ§Œ μ‚¬μš©ν•˜κΈ° λ•Œλ¬Έμ— μ™ΈλΆ€μ˜ μ ‘κ·Ό κΆŒν•œμ€ μ—†λ‹€.
  • μ™ΈλΆ€μ—μ„œ μ ‘κ·Όν•˜λŠ” 것이 μ•„λ‹ˆλ‹€. ν΄λŸ¬μŠ€ν„° λ‚΄λΆ€μ—μ„œ λ‹€λ₯Έ νŒŸλ“€κ³Ό ν†΅μ‹ ν•˜κΈ° μœ„ν•œ λ‚΄λΆ€ IP μ£Όμ†Œμ΄λ‹€.

NodePort

image

  • λ…Έλ“œμ—κ²Œ ν• λ‹Ήλœ ν¬νŠΈμ΄λ‹€.
  • λ…Έλ“œμ— 포트λ₯Ό λš«μ–΄ μ™ΈλΆ€μ™€μ˜ 톡신을 μ§„ν–‰ν•œλ‹€.
  • μ™ΈλΆ€μ—μ„œ μ„œλΉ„μŠ€λ‘œ μš”κ΅¬κ°€ λ“€μ–΄μ˜€λ©΄ λ‚΄λΆ€μ˜ νŒŸλ“€μ—κ²Œ 전달해쀀닀.
  • ν¬νŠΈκ°€ μ™ΈλΆ€μ—μ„œ λ“€μ–΄μ˜€λŠ” μΆœμž…κ΅¬μΈ 것이닀.
  • primitive way : λŒ€λΆ€λΆ„μ˜ μΏ λ²„λ„€ν‹°μŠ€ ν΄λŸ¬μŠ€ν„°μ—μ„œ κ°€μš©ν•œ 방법이닀.
  • ꡬ멍을 λš«μ—ˆμ„ 뿐이고 μ œμ–΄ν•˜λŠ” 역할은 μ—†λ‹€.
  • 포트 λ²ˆν˜Έκ°€ 30000-32767둜 μ œν•œλ˜μ–΄ μžˆλ‹€.

LoadBalancer

image

  • ν•˜λ‚˜μ˜ μ»΄ν“¨ν„°μ—μ„œ λ™μž‘ν•˜μ§€ μ•ŠλŠ”λ‹€. 볡수의 컴퓨터가 μžˆμ–΄μ•Ό ν•œλ‹€.
  • μ™ΈλΆ€μ—μ„œ 데이터λ₯Ό λ°›μ•„ ν΄λŸ¬μŠ€ν„° μ•ˆμͺ½μ˜ μ„œλΉ„μŠ€λ‘œ 전달해 ν΄λŸ¬μŠ€ν„° 내뢀에 μ „λ‹¬ν•˜λŠ” ν˜•νƒœ
  • μ™ΈλΆ€ λ„€νŠΈμ›Œν¬μ™€ 연결을 ν•˜κΈ° μœ„ν•΄ loadbalancerμ—κ²Œ ν•˜λ‚˜μ˜ IP μ£Όμ†Œλ₯Ό μ „λ‹¬ν•˜μ—¬ 내뢀에 μžˆλŠ” 것은 μˆ¨κ²¨μ£ΌλŠ” 역할을 ν•˜κ³  데이터λ₯Ό λ°›μ•„ μ „λ‹¬ν•˜λŠ” κ΄€λ¬Έμ˜ 역할을 ν•œλ‹€.

Ingress

image

  • 기술적으둜 μ„œλΉ„μŠ€μ— μ†ν•˜μ§€λŠ” μ•ŠλŠ”λ‹€.
  • 슀마트 λΌμš°ν„°λ‘œμ„œμ˜ 역할을 ν•œλ‹€.
  • ν•œ λŒ€μ˜ 컴퓨터에 μ—¬λŸ¬ 이름을 κ°–λŠ” κ²½μš°κ°€ μžˆλ‹€. νŠΉμ • 도메인에 λŒ€ν•œ μ„œλΉ„μŠ€λ‘œ 전달해쀀닀.
  • μž…κ΅¬κ°€ ν•˜λ‚˜μΈλ° μž…κ΅¬λ₯Ό μ•Œκ³  λ“€μ–΄μ˜€λŠ” μƒλŒ€λ°©μ€ μ—¬λŸ¬ 도메인 쀑 ν•˜λ‚˜λ‘œ μƒκ°ν•˜κ³  μ „λ‹¬ν•˜λŠ” 것.
  • 즉, A둜 μƒκ°ν•˜κ³  λ³΄λ‚΄λŠ” 경우, B둜 μƒκ°ν•˜κ³  λ³΄λ‚΄λŠ” 경우 각각의 λ„λ©”μΈμ˜ μ„œλΉ„μŠ€λ‘œ μ „λ‹¬ν•œλ‹€.