Chuyển đến nội dung chính

第 4 課:實作 — 設定叢集和工具

第一次實作:測試cgroup v2,安裝containerd 2.0,使用kind/k3d建立集群,安裝和設定k9s,Headlamp。熟悉基本的 kubectl 指令。

🔒 DevSecOps — 第 4 課 第 4 課:練習 — 設定叢集與 工具

KUBERNETES:從基礎到進階

模組 1:簡介與說明Kubernetes 架構

xdev.asia

練習 1:叢集設定與工具

這是本課程的第一個練習。目標是將先前課程中的理論知識轉化為實踐技能 - 您將自己建立一個完整的 Kubernetes 環境,從測試系統到部署儀表板和運行叢集發現命令。

___HTMLTAG_71__HTMLTAG_72___預計時間:120分鐘(如果熟悉Linux/終端可能會更快)

___HTMLTAG_75__HTMLTAG_76___練習輸出:

  • 在本機電腦上執行的 3 節點 Kubernetes 叢集(1 個控制平面 + 2 個工作執行緒)
  • 全套 CLI 工具:kubectl、k9s、kubectx/kubens、stern
  • 頭燈儀表板正在運作且可存取
  • 熟悉常用的 kubectl 指令

先決條件檢查

程式碼區塊_0

執行上述腳本並確保滿足所有要求,然後再繼續。

實驗 1:安裝 containerd 2.0 並建立 Kind 叢集

第 1 步:安裝 Docker 引擎(如果尚不可用)

kind 和 k3d 都需要 Docker 才能運作。在 macOS 上,安裝 Docker Desktop。在 Linux 上:

程式碼區塊_1

第 2 步:安裝種類並建立叢集

程式碼區塊_2

HTMLTAG_101__HTMLTAG_102kubectl 取得節點的預期輸出___HTMLTAG_104__HTMLTAG_105__:

程式碼區塊_3

步驟 3:安裝 kubectl__HTMLTAG_108___

程式碼區塊_4

檢查點實驗室 1

程式碼區塊_5

實驗 2:安裝 CLI 工具

第 1 步:安裝 k9s

程式碼區塊_6

k9s開啟時,執行下列操作:

程式碼區塊_7

步驟 2:安裝 kubectx 和 kubens

程式碼區塊_8

第 3 步:安裝船尾

程式碼區塊_9

步驟 4:設定 bash/zsh 補全與別名

程式碼區塊_10

實驗 3:部署頭燈儀表板__HTMLTAG_124___

第 1 步:安裝 Helm

程式碼區塊_11

第 2 步:部署頭燈

程式碼區塊_12

步驟 3:建立存取權杖

程式碼區塊_13

第 4 步:開啟頭燈

程式碼區塊_14

開啟瀏覽器並存取 http://localhost:4466。貼上令牌以登入。探索:

  • 節點:查看資源使用、標籤、污點
  • 工作負載 > Pod:查看所有 Pod、日誌、終端__HTMLTAG_141___
  • 配置 > ConfigMap、秘密
  • 叢集 > 命名空間

實驗 4:基本 kubectl 探索__HTMLTAG_148___

4.1。探索集群

程式碼區塊_15

4.2。建立第一個 Pod

程式碼區塊_16

4.3。使用 Deployment

部署應用程式

程式碼區塊_17

4.4。使用 stern 查看日誌

程式碼區塊_18

4.5。資源使用分析

程式碼區塊_19

疑難排解指引:常見錯誤__HTMLTAG_160___

錯誤 1:節點處於未就緒狀態

程式碼區塊_20

錯誤 2:Pod 停留在 Pending__HTMLTAG_164___

程式碼區塊_21

錯誤 3:CrashLoopBackOff

程式碼區塊_22

錯誤 4:ImagePullBackOff

程式碼區塊_23

錯誤 5:無法建立種類簇

程式碼區塊_24

實驗室清理

程式碼區塊_25

練習摘要

在本練習中,您完成了:

  • 檢查並確認先決條件(cgroup v2、Docker、磁碟空間)
  • 使用 kind 建立 3 節點 Kubernetes 叢集並設定 nftables 模式
  • 安裝工具集:kubectl、k9s、kubectx/kubens、stern
  • 部署與存取 Headlamp 儀表板
  • 練習 kubectl 指令:get、describe、logs、exec、scale、rollout
  • 熟悉對掛起的 Pod、CrashLoopBackOff、ImagePullBackOff 進行故障排除

從下一篇文章開始,我們將深入研究 Kubernetes 物件 — 從 Pods 開始,這是最基本的部署單元。