Cilium 系列-3-Cilium 的基本元件和重要概念

2023-07-24 12:00:48

系列文章

前言

安裝完了,我們看看 Cilium 有哪些元件和重要概念。

Cilium 元件

如上所述,安裝 Cilium 時,會安裝幾個執行元件(有些是可選元件), 它們各是什麼用途?

Cilium Operator

Cilium Operator 可以理解為 Cilium 的管理平面或操作運維平面。Cilium Operator 不處於任何轉發或網路策略決策的關鍵路徑上。如果 Operator 暫時不可用,叢集一般也能繼續執行。

Cilium Agent

Cilium Agent 以 daemonset 的形式執行,因此 Kubernetes 叢集的每個節點上都有一個 Cilium agent pod 在執行。該 agent 執行與 Cilium 相關的大部分工作:

  • 與 Kubernetes API 伺服器互動,同步叢集狀態
  • 與 Linux kernel 互動--載入 eBPF 程式並更新 eBPF map
  • 通過檔案系統 socket 與 Cilium CNI 外掛可執行檔案互動,以獲得新排程工作負載的通知
  • 根據要求的網路策略,按需建立 DNS 和 Envoy Proxy 伺服器
  • 啟用 Hubble 時建立 Hubble gRPC 服務

Cilium Client

Cilium Agent 守護行程中的每個 pod 都帶有一個 Cilium Client 可執行檔案,可用於檢查該節點上安裝的 Cilium Agent 和 eBPF map 資源的狀態。Client 通過守護行程 pod 與 Cilium Agent 的 REST API 通訊。