Kubernetes Components

  • https://kubernetes.io/docs/concepts/overview/components/

components
  • μΏ λ²„λ„€ν‹°μŠ€λ₯Ό λ°°ν¬ν•˜λ©΄, ν΄λŸ¬μŠ€ν„°λ₯Ό κ°€μ§€κ²Œ 됨

  • μΏ λ²„λ„€ν‹°μŠ€ ν΄λŸ¬μŠ€ν„°λŠ” μ»¨ν…Œμ΄λ„ˆλΌμ΄μ§•λœ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μ‹€ν–‰ν•˜λŠ” λ…Έλ“œ(μ›Œμ»€ λ¨Έμ‹ )λ“€λ‘œ ꡬ성됨

  • λͺ¨λ“  ν΄λŸ¬μŠ€ν„°λŠ” 적어도 ν•˜λ‚˜μ˜ μ›Œμ»€ λ…Έλ“œλ₯Ό κ°€μ§€κ³  있음

  • μ›Œμ»€ λ…Έλ“œλ“€μ€ μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ›Œν¬λ‘œλ“œμ˜ κ΅¬μ„±μš”μ†ŒμΈ Podsλ₯Ό ν˜ΈμŠ€νŒ…ν•¨

  • control plane은 μ›Œμ»€ λ…Έλ“œμ™€ ν΄λŸ¬μŠ€ν„° λ‚΄μ˜ Podsλ₯Ό 관리함

  • ν”„λ‘œλ•μ…˜ ν™˜κ²½μ—μ„œ control plane은 일반적으둜 μ—¬λŸ¬ μ»΄ν“¨ν„°μ—μ„œ μ‹€ν–‰λ˜κ³ , ν΄λŸ¬μŠ€ν„°λŠ” 일반적으둜 μ—¬λŸ¬ λ…Έλ“œλ₯Ό μ‹€ν–‰ν•˜μ—¬ 내결함성과 κ³ κ°€μš©μ„±μ„ μ œκ³΅ν•¨

Control Plane Components

  • control plane의 μ»΄ν¬λ„ŒνŠΈλ“€μ€ ν΄λŸ¬μŠ€ν„°μ— λŒ€ν•œ 전역적인 κ²°μ •(예λ₯Ό λ“€μ–΄, μŠ€μΌ€μ€„λ§)을 λ‚΄λ¦Ό

  • λ˜ν•œ ν΄λŸ¬μŠ€ν„°μ˜ 이벀트λ₯Ό κ°μ§€ν•˜κ³  응닡함

  • Control plane은 ν΄λŸ¬μŠ€ν„° λ‚΄μ˜ μ–΄λ– ν•œ λ¨Έμ‹ μ—μ„œλ„ μž‘λ™ν•  수 있음

  • ν•˜μ§€λ§Œ, κ°„λ‹¨ν•˜κ²Œ ν•˜κΈ°μœ„ν•΄μ„œ 일반적으둜 λ™μΌν•œ 머신에 control plane μ»΄ν¬λ„ŒνŠΈλ₯Ό μ‹œμž‘ν•˜κ³ , 이 λ¨Έμ‹ μ—μ„œ μ‚¬μš©μž μ»¨ν…Œμ΄λ„ˆλ₯Ό μ‹€ν–‰ν•˜μ§€ μ•ŠμŒ

Kube-apiserver

  • control plane의 μ•žλ‹¨

  • μˆ˜ν‰μœΌλ‘œ ν™•μž₯λ˜λ„λ‘ λ””μžμΈ

  • μ—¬λ € μΈμŠ€ν„΄μŠ€λ₯Ό μ‹€ν–‰ν•˜κ³  μΈμŠ€ν„΄μŠ€κ°„μ˜ νŠΈλž˜ν”½μ˜ κ· ν˜•μ„ 맞좜 수 있음

etcd

  • λͺ¨λ“  ν΄λŸ¬μŠ€ν„° 데이터에 λŒ€ν•œ Kubernetes의 λ°±μ—… μ €μž₯μ†Œλ‘œ μ‚¬μš©λ˜λŠ” μΌκ΄€λ˜κ³  κ°€μš©μ„±μ΄ 높은 ν‚€ κ°’ μ €μž₯μ†Œ

  • etcdλ₯Ό λ°±μ—… μ €μž₯μ†Œλ‘œ μ‚¬μš©ν•œλ‹€λ©΄, 데이터 λ°±μ—… μ „λž΅μ„ 확인해야함

kube-scheduler

  • μƒˆλ‘œ μƒμ„±λœ Pod을 κ°μ§€ν•˜κ³  μ‹€ν–‰ν•  λ…Έλ“œλ₯Ό 선택

kube-controller-manager

  • controller processλ₯Ό μ‹€ν–‰ν•˜λŠ” μ»΄ν¬λ„ŒνŠΈ

  • λ³„λ„μ˜ ν”„λ‘œμ„ΈμŠ€μ΄μ§€λ§Œ, λ³΅μž‘μ„±μ„ 쀄이기 μœ„ν•΄μ„œ λͺ¨λ‘ 단일 λ°”μ΄λ„ˆλ¦¬λ‘œ 컴파일되고 단일 ν”„λ‘œμ„ΈμŠ€μ—μ„œ 싀행됨

cloud-controller-manager

  • ν΄λŸ¬μŠ€ν„°λ₯Ό ν΄λΌμš°λ“œ API와 μ—°κ²°ν•˜κ³ , ν•΄λ‹Ή ν΄λΌμš°λ“œ ν”Œλž«νΌκ³Ό μƒν˜Έ μž‘μš©ν•˜λŠ” μ»΄ν¬λ„ŒνŠΈλ₯Ό ν΄λŸ¬μŠ€ν„°μ™€λ§Œ μƒν˜Έ μž‘μš©ν•˜λŠ” μ»΄ν¬λ„ŒνŠΈμ—μ„œ 뢄리할 수 있음

  • μ˜¨ν”„λ ˆλ―ΈμŠ€ ν™˜κ²½μ—μ„œλŠ” μ‚¬μš©λ˜μ§€ μ•ŠμŒ

Node Components

  • λͺ¨λ“  λ…Έλ“œμ—μ„œ λ™μž‘ν•˜κ³ , λ™μž‘ 쀑인 νŒŒλ“œλ₯Ό μœ μ§€ν•˜κ³  μΏ λ²„λ„€ν‹°μŠ€ λŸ°νƒ€μž„ ν™˜κ²½μ„ μ œκ³΅ν•¨

kubelet

  • ν΄λŸ¬μŠ€ν„°μ˜ 각 λ…Έλ“œμ—μ„œ λ™μž‘ν•˜λŠ” μ—μ΄μ „νŠΈ

  • νŒŒλ“œ 내에 μ»¨ν…Œμ΄λ„ˆκ°€ λ™μž‘ 쀑인지 확인함

  • μΏ λ²„λ„€ν‹°μŠ€λ‘œ μƒμ„±λ˜μ§€ μ•Šμ€ μ»¨ν…Œμ΄λ„ˆλŠ” κ΄€λ¦¬ν•˜μ§€ μ•ŠμŒ

kube-proxy

  • ν΄λŸ¬μŠ€ν„°μ˜ 각 λ…Έλ“œμ—μ„œ μ‹€ν–‰λ˜λŠ” λ„€νŠΈμ›Œν¬ ν”„λ‘μ‹œ

  • μΏ λ²„λ„€ν‹°μŠ€ μ„œλΉ„μŠ€ κ°œλ…μ˜ 일뢀λ₯Ό κ΅¬ν˜„

  • λ…Έλ“œμ˜ λ„€νŠΈμ›Œν¬ κ·œμΉ™μ„ μœ μ§€ν•¨

  • ν΄λŸ¬μŠ€ν„°μ˜ λ‚΄λΆ€ λ˜λŠ” μ™ΈλΆ€μ˜ λ„€νŠΈμ›Œν¬ μ„Έμ…˜μ—μ„œ νŒŒλ“œλ‘œμ˜ λ„€νŠΈμ›Œν¬ 톡신을 ν—ˆμš©ν•¨

  • OS νŒ¨ν‚· 필터링 계측이 μžˆλ‹€λ©΄ 이λ₯Ό μ‚¬μš©ν•˜κ³ , μ—†λ‹€λ©΄ νŠΈλž˜ν”½ 자체λ₯Ό 전달함

Container runtime

  • μ»¨ν…Œμ΄λ„ˆ 싀행을 λ‹΄λ‹Ή

Last updated