七款用于 DevOps 的 Kubernetes 管理軟件
在新興的云原生環(huán)境中,Kubernetes無處不在。它已成為編排容器的標(biāo)準(zhǔn)。但是,管理多個 Kubernetes 集群(必須以一致且安全的方式在任何地方運(yùn)行)提出了一系列新挑戰(zhàn)。因此,對 Kubernetes 管理工具的需求就出現(xiàn)了。
讓我們探索一些有效管理 Kubernetes 的流行解決方案。
1. K9s
k9s是一個基于終端的資源儀表板。它只有一個命令行界面。無論您在 Kubernetes 儀表板 Web UI 上做什么,您也可以使用此終端 k9s 儀表板實用程序執(zhí)行相同操作。
它持續(xù)關(guān)注 Kubernetes 集群,并提供命令來處理集群上定義的資源。
以下是 K9s 的功能:
- 集群實時跟蹤
- 使用 K9s 皮膚自定義視圖
- 輕松遍歷 Kubernetes 資源
- 向下鉆取選項以檢查集群資源問題
- 提供擴(kuò)展插件來創(chuàng)建您自己的命令
2. Rancher
Rancher是一個開源容器管理平臺,可讓任何企業(yè)輕松采用 Kubernetes。您可以部署和管理在 GKE (GCP)、EKS (AWS)、AKS (Azure) 中運(yùn)行的云托管 Kubernetes 集群,也可以僅在您選擇的 VM 或裸機(jī)基礎(chǔ)設(shè)施上部署 Kubernetes。
Rancher 簡化了管理員的所有操作職責(zé),包括:
- 監(jiān)控集群的運(yùn)行狀況
- 設(shè)置警報和通知
- 啟用集中日志記錄
- 定義和應(yīng)用全局安全策略
- 建立身份驗證并執(zhí)行我們的后臺策略
- 管理和擴(kuò)展您的基礎(chǔ)架構(gòu)
隨著 Kubernetes 在整個公司的采用加速,rancher 鼓勵快速采用讓用戶直接訪問 Kubernetes API 和 CLI。Rancher 的全新智能界面簡化了應(yīng)用管理;團(tuán)隊可以輕松部署和管理工作負(fù)載、定義 Secret 并管理私有注冊表、配置持久卷聲明、配置負(fù)載平衡和服務(wù)發(fā)現(xiàn)、管理 CI 管道。
3. Dashboard + Kubectl + Kubeadm
該Kubernetes儀表盤是一個基于Web的界面來部署集裝箱式應(yīng)用。它對您的應(yīng)用程序進(jìn)行故障排除并管理集群本身以及資源。
您可以使用儀表板概覽集群上運(yùn)行的應(yīng)用程序,以及創(chuàng)建或修改單個 Kubernetes 資源,例如部署作業(yè)、副本集等。
您可以擴(kuò)展部署,也可以啟動滾動更新,甚至可以使用儀表板上的部署向?qū)е匦聠?Pod 或部署新應(yīng)用程序。
Kubectl是一個命令行工具,用于與 API 服務(wù)通信并向主節(jié)點(diǎn)發(fā)送命令。它對 Kubernetes 集群 API 服務(wù)器的 API 調(diào)用的隱蔽命令。
Kubeadm是一個帶有內(nèi)置命令的工具,用于啟動最小的 Kubernetes 集群。它用于引導(dǎo)集群而不是配置機(jī)器。使用 kubeadm,您可以運(yùn)行一些基本命令來引導(dǎo)集群、創(chuàng)建令牌以加入集群、還原對 Kubernetes 集群所做的更改等。
4. Helm
Helm是 Kubernetes 的包管理器。它允許開發(fā)人員和運(yùn)營商在 Kubernetes 集群上打包、配置和部署應(yīng)用程序和服務(wù)。它為操作員提供了對 Kubernetes 集群的更大控制,這些操作:
- 使應(yīng)用程序部署變得簡單、標(biāo)準(zhǔn)化和可重用
- 通過掌舵圖輕松描述復(fù)雜的應(yīng)用程序
- 提高開發(fā)人員的生產(chǎn)力
- 降低部署復(fù)雜性
- 增強(qiáng)操作準(zhǔn)備
- 加快云原生應(yīng)用的采用
- 輕松回滾到以前的版本
Helm 使用包含所有資源定義的 Charts 在 Kubernetes 集群上運(yùn)行應(yīng)用程序或服務(wù)。您可以在此處找到可供使用的多個Helm圖表。
5. KubeSpray
KubeSpray是一個集群生命周期管理器,可幫助您部署生產(chǎn)就緒的 Kubernetes 集群。它使用ansible-playbook來自動化 Kubernetes 集群配置。
其中一些功能包括:
- 基于 Ansible
- 高可用
- 跨平臺
- 生產(chǎn)水平
- 流行的云提供商集成甚至裸機(jī)
- 多種配置選項
- 多平臺 CI/CD
- 默認(rèn)安全
默認(rèn)情況下,Kubespray 允許您通過 kube-master IP 地址和端口 6443 遠(yuǎn)程連接到 Kubernetes 集群。如果您需要靈活的部署,Kubespray 最適合;它提供了很多自定義配置選項。
另外,如果您熟悉Ansible,那么 Kubespray 非常易于使用。
6. Kontena Lens
Kontena Lens是Kubernetes的智能儀表板。
它是您控制 Kubernetes 所需的唯一管理系統(tǒng)。它可免費(fèi)用于 Mac OS、Windows 和 Linux 操作系統(tǒng)。鏡頭應(yīng)用程序啟動后,您將在界面中看到所有關(guān)聯(lián)集群的列表。
對于真正需要每天處理 Kubernetes 的人來說,它是最強(qiáng)大的 IDE。您可以確保正確設(shè)置和配置集群,并且可以更輕松、更快速地使用集群,從根本上提高生產(chǎn)力和業(yè)務(wù)發(fā)展速度。
Kontena Lens IDE 的特點(diǎn)是:
- 可以一次管理多個集群
- 實時可視化集群狀態(tài)
- 提供內(nèi)置終端
- 安裝非常簡單,因為它是一個獨(dú)立的應(yīng)用程序
- 驚人的用戶界面和用戶體驗
- 支持 Kubernetes RBAC
- 經(jīng)測試可處理集群中近 25K 的 Pod
Kubernetes 是一個復(fù)雜的工具,Lens IDE 甚至可以幫助初學(xué)者輕松上手 Kubernetes。它是管理和可視化 Kubernetes 集群的最佳工具之一。
7. WKSctl
WKSctl代表 Weave Kubernetes 系統(tǒng)控制。它是 Weave Kubernetes 平臺的一部分。
WKSctl 是一個使用GitOps進(jìn)行 Kubernetes 配置管理的工具。GitOps 只不過是一組使用 git 請求以傳統(tǒng)方式管理應(yīng)用程序和基礎(chǔ)設(shè)施的實踐。
使用 WKSctl,您可以通過 Git 提交來管理 Kubernetes 集群。您可以升級集群或從集群中添加/刪除節(jié)點(diǎn)。
您可以在兩種模式下運(yùn)行此工具:獨(dú)立模式和 GitOps 模式。在獨(dú)立模式下,它會創(chuàng)建一個靜態(tài)集群。在 GitOps 模式下,它根據(jù) git 上存在的 cluster.yml 和machines.yml 信息配置集群。
WKSctl 特點(diǎn):
- 使用 git 快速啟動集群
- 部署失敗時輕松回滾
- 記錄變更以供審查和審計
- 創(chuàng)建集群只需要 IP 地址和 ssh 密鑰
- 不斷驗證和糾正集群狀態(tài)
結(jié)論
所以這就是流行的 Kubernetes 管理工具/軟件,可以輕松管理 Kubernetes 集群。選擇上面提到的任何一種工具,并在您的Kubernetes集群上試用它!