iT邦幫忙

2024 iThome 鐵人賽

DAY 6
0
Kubernetes

Kubernetes圖解筆記系列 第 6 篇

Day-6 Kubernetes 的基本架構

  • 分享至 

  • xImage
  •  

偏無聊但重要 ( ;´Д`)


先認識三個基本名詞

  • Pod:元件中的最小單位,可包含一個或多個容器,且容器之間共享網路和資源。
    可以理解成跑在同一個 pod 上的容器,相當於運行在同一個 local 環境。

  • Node:節點,運行、管理、監控 Pod 的元件。
    分為 Control Plane 和 Worker Node,各自包含不同的組件(下篇會詳細介紹)。

  • Cluster:由多個節點組成的叢集,負責管理 Node 中的資源。

https://ithelp.ithome.com.tw/upload/images/20240907/20168437bTXWFZbD5s.png

使用 kubernetes 可以建立 Cluster,Cluster 中會包含Node,依照功能角色可將其分為 Control Plane 和 Worker Node。

上一篇有強調,Kubernetes 是一套專注於容器管理和配置的工具。既然是管理,要有個發號施令中樞也很合理。

沒錯,就是 Control Plane

Control Plane

負責管理、協調、發號施令的決策中心
https://ithelp.ithome.com.tw/upload/images/20240907/20168437tRyjeVlbsA.png
要構建一套管理生命周期的系統,靠單一的解決方案是難以規劃出可靠機制的。需要多個組件相互配合,才能確保系統順暢運行。
Control Plane 內包含四個主要的組件:

  • ETCD:
    以 key-value的方式儲存所有配置訊息,使用 2379 Port
  • kube-scheduler:
    監控現有資源,決定如何調度 Pod 應該運行在哪個 Node 上
  • kube-controller-manager:
    由多個 controller 組成,可視為群集的大腦。負責協調工作,確保群集中的資源都依照配置運行。
  • kube-apiserver:
    負責傳遞訊息和指令

Control Plane 直接決定了群集是否能正常運作,為了提高系統可用性,實務上配置多個 Control Plane 也是常見的做法。
現在管理中樞有了,還需要有實際完成任務的單位:Worker Node。

Worker Node

提供環境和計算資源,以運行應用程序
包含組件:

  • kubelet:
    執行 kube-apiserver 傳達的任務,並回覆執行情況,以確保容器在 Pod 中運行。
  • kube-proxy:
    處理成員間的通訊(溝通),負責網路規則和轉發流量
  • container runtime:
    負責運行容器

不同於 Control Plane 具有明確的結構和定義,Worker Node 更像是一個靈活的概念。可以將它視為從可用計算資源中劃分出的一個區塊,而這個區塊專門用於配置和運行 Pod 的環境,且這些區塊可以依據實際需求進行增減。


小結

使用 Kubernetes 建立 Cluster,Cluster 中會包含 Node,又可分為 Control Plane 和 Worker Node。
部署時,由 Control Plane 挑選合適的 Worker Node,並由 Worker Node 建立 Pod,將容器運行在 Pod 之中。

小知識:
Control Plane的舊稱為 Master Node,不過這個標籤已棄用囉~


上一篇
Day-5 Kubernetes
下一篇
Day-7 Control Plane
系列文
Kubernetes圖解筆記 共 30 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言