k3s 搭建與部署

Server 配置

/etc/rancher/k3s

自動部署清單

/var/lib/rancher/k3s/server/manifests

包括 coredns、traefik、local-storage 和 metrics-server。嵌入式 servicelb LoadBalancer controller 沒有清單文件,但由於歷史原因,它可以像 AddOn 一樣被禁用。

kubectl create 和 kubectl apply 的區別?

kubectl create 和 kubectl apply 是兩個在使用 Kubernetes 命令行工具 kubectl 時常用到的命令,它們用於在 Kubernetes 集羣中創建資源對象,但在使用方式和行爲上有一些區別。

主要的區別如下:

創建新資源 vs 更新已有資源: kubectl create 用於在 Kubernetes 集羣中創建新的資源對象,而 kubectl apply 則用於創建新資源對象或者更新已有資源對象。kubectl create 只能用於創建新資源對象,如果要更新一個已經存在的資源對象,需要先刪除該對象,然後再使用 kubectl create 創建新的對象。而 kubectl apply 則可以根據當前集羣中的狀態來決定是創建新資源還是更新已有資源。

資源對象定義的來源: kubectl create 的資源對象定義通常是通過命令行參數或者文件中直接指定的,例如 kubectl create -f file.yaml。而 kubectl apply 的資源對象定義通常是通過文件中指定的,例如 kubectl apply -f file.yaml。這意味着 kubectl create 的資源對象定義通常需要在命令行中直接指定,而 kubectl apply 的資源對象定義通常可以通過文件來管理,更加靈活。

對已存在資源的行爲: 當使用 kubectl create 創建一個已存在的資源對象時,會出現錯誤並提示資源已經存在。而當使用 kubectl apply 更新一個已存在的資源對象時,會根據資源的定義進行更新,而不會報錯。

默認行爲: kubectl apply 默認會啓用資源的部分更新(patch)功能,即只更新需要更新的字段,而不會修改其它字段的值。而 kubectl create 則沒有部分更新的功能,只能用於創建全新的資源對象。

資源版本控制: kubectl apply 可以使用 --prune 和 --prune-whitelist 參數來執行資源對象的版本控制,可以控制保留哪些版本的資源對象。而 kubectl create 則沒有版本控制的功能。

綜上所述,kubectl create 適合用於創建全新的資源對象,而 kubectl apply 則適合用於創建新資源對象或更新已有資源對象,並且更加靈活和具有版本控制的功能。在實際使用中,可以根據實際需求和場景選擇合適的命令來創建和管理 Kubernetes 資源對象。

查看目錄

kubectl get deployment kubernetes-dashboard -n kubernetes-dashboard -o yaml
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章