使Kubernetes更容易操作的11種工具
利用這些Kubernetes相關組件的優(yōu)勢來改善監(jiān)視,命令行操作,多集群管理等操作。
是,如果Kubernetes幫助我們管理了龐大而復雜的容器部署,那么有什么可以幫助我們管理Kubernetes的呢?它也可能是復雜,混亂且難以管理的。
隨著Kubernetes的發(fā)展壯大,毫無疑問,它的許多功能都將在用戶的項目內部得到使用。但是有些用戶并沒有等著Kubernetes變得更容易使用,他們已經針對生產中Kubernetes的許多常見問題推出了自己的解決方案。
Bitnami Cabin:適用于iOS和Android的Kubernetes儀表板
任何現代Web應用程序或服務都不應該沒有某種移動界面。Cabin為Kubernetes管理員提供了一個Kubernetes的儀表板,可從iOS或Android智能手機上進行訪問。完整的Kubernetes儀表板中的許多功能都可以從Cabin中啟動,包括Helm圖表,縮放部署,讀取pod日志以及訪問Kubernetes托管的基于Web的應用程序。
Goldpinger:可視化Kubernetes集群
人類是視覺生物。圖形和圖表使我們更容易理解全局。考慮到Kubernetes集群的范圍和復雜性,我們可以考慮使用圖形化的工具來表現kubernetes集群的結構。彭博的技術部門開源的這個有趣的工具,名字叫Goldpinger,它很簡單,它在Kubernetes集群中運行,并顯示節(jié)點之間關系的交互式地圖。健康的節(jié)點顯示為綠色,不健康的節(jié)點顯示為紅色。只需單擊一個節(jié)點以獲取詳細信息。您可以使用Swagger自定義API,以引入其他報告,指標或其他集成。
K9s:全屏Kubernetes CLI UI
管理員喜歡“單一窗格”的實用程序。K9s是Kubernetes集群的全屏CLI UI。它使您可以快速查看正在運行的Pod,日志和部署的視圖,并可以快速訪問Shell。請注意,您將需要授予用戶Kubernetes在user和namespace級別的讀取權限,以使K9正常工作。
Kops:Kubernetes集群的命令行操作
Kops由Kubernetes團隊開發(fā),可讓您從命令行管理Kubernetes集群。它支持在AWS和GCE上運行的集群,以及正在運行的VMware vSphere和其他環(huán)境。除了自動進行設置和拆卸過程外,Kops還可以幫助進行其他類型的自動化。例如,它可以生成Terraform配置,以允許使用Terraform重新部署群集。
Kubebox:Kubernetes的終端控制臺
Kubebox是Kubernetes的高級終端控制臺,不僅為Kubernetes及其API提供了好看的外殼。它提供內存和CPU利用率,窗格列表,運行日志和配置編輯器的交互式顯示。最重要的是,它可以作為適用于Linux,Windows和MacOS的獨立應用程序使用。
Kube-ps1:Smart Kubernetes命令提示符
不,Kube-ps1并不是適用于Kubernetes的第一代SonyPlayStation模擬器(盡管那很漂亮)。這是對Bash的簡單補充,可在提示中顯示當前的Kubernetes上下文和名稱空間。 Kube-shell包括此功能以及許多其他功能,但是如果您只想提供更智能的提示,Kube-ps1幾乎不會給您帶來任何開銷。
Kube-prompt:交互式Kubernetes客戶端
對Kubernetes CLI的另一種最小但有用的修改,Kube-prompt允許您輸入相當于與Kubernetes客戶端的交互式命令會話的內容。Kube提示使您不必鍵入kubectl來為每個命令添加前綴,并為每個命令提供帶有上下文信息的自動完成功能。
Kube-shell:Kubernetes CLI的Shell
Kubernetes命令行功能強大,但是與任何命令行應用程序一樣,選擇其選項可能很繁瑣。 Kube-shell將標準的Kubernetes命令行包裝在一個集成的Shell中,該命令行提供自動完成和自動建議的常用命令,包括Kubernetes服務器提供的建議(例如,服務名稱)。它還為您提供了更強大的命令歷史記錄功能,vi風格的編輯模式以及有關用戶,名稱空間,集群和其他特定于安裝的詳細信息的運行上下文信息。
Kubespy:Kubernetes資源的實時監(jiān)控
Pulumi的Kubespy是一種診斷工具,可讓您實時跟蹤對Kubernetes資源的更改,從而為您提供了一種實時的文本視圖儀表板。例如,您可以在啟動時查看Pod狀態(tài)的變化:將Pod定義寫入Etcd,將Pod計劃在節(jié)點上運行,在該節(jié)點上的Kubelet創(chuàng)建Pod,最后將Pod 標記為正在運行。Kubespy可以作為獨立的二進制文件運行,也可以作為Kubectl的插件運行。
Kube-ops-view:多個Kubernetes集群的儀表板
Kubernetes有一個有用的儀表板,可用于通用監(jiān)控,但是Kubernetes社區(qū)正在嘗試其他方法,以向Kubernetes管理員有用地呈現數據。Kube-ops-view是這樣的一種實驗。它提供了以圖形方式呈現的多個Kubernetes集群的概覽視圖,因此您可以一目了然地看到集群中整個CPU和內存使用率以及Pod的狀態(tài)。請注意,它不允許您調用任何命令;僅用于可視化。但是,它提供的可視化效果驚人且高效,是為您的運營中心中的墻壁監(jiān)控器所生。
Stern和Kubetail:Kubernetes的日志工具
通過Stern,您可以從Kubernetes中的容器和容器中生成含有顏色編碼的輸出(按照tail命令)。這是一種將來自多個資源的所有輸出傳輸到單個流中的快速方法,一目了然。同時,您可以使用顏色一目了然地的進行區(qū)分。 Kubetail同樣將來自多個Pod的日志聚合到單個流中,并對不同Pod和容器進行顏色編碼。但是Kubetail是Bash腳本,因此只需要一個shell。