對外行人來說,K8s 代表Kubernetes,數字8 代表K 和s 之間的八個字母。 Kubernetes 在當前的技術環境中幾乎不可避免,但仍然不受歡迎,因為它的複雜性和陡峭的學習曲線。
基於終端的交互在這個故事中發揮著重要作用。如果您曾經有幸觀看一位經驗豐富的 DevOps 使用 Kubernetes 集群工作的方式,您可能會像看一位經驗豐富的武術家展示他的戰鬥技巧一樣看待他。這是因為透過終端完成的所有事情總是看起來更可怕,似乎需要多年的培訓。 🥋
現在的問題是:我們怎麼能讓這樣一個複雜的問題(甚至它的名字還被美化了)變得更有趣呢?好吧,以同樣的方式,我們讓一切變得更愉快 → 讓它變得更容易,讓它更漂亮! 🎀 你可能會問,你會怎麼做呢?具有圖形使用者介面或簡稱 GUI!讓我們來看看在處理 Kubernetes 時為您提供使用者介面的五個工具。
在開始之前,我們想提一下,我們已經安排了 Product Hunt 的首次發布!點擊“通知我”按鈕,以便在我們外出並準備好接收您的回饋時收到提醒 🔔
如果您為我們的儲存庫加註星標並幫助我們在其他開發人員面前獲得我們的工具,我們將非常高興 ⭐
讓我們深入了解 Kubernetes 管理的精髓工具 – Kubernetes 儀表板。它會自動與您的叢集捆綁在一起,提供 Kubernetes 環境的圖形概覽。您可以使用它來概覽叢集上執行的應用程式、將容器化應用程式部署到 Kubernetes 叢集以及管理叢集資源。
Kubernetes 儀表板不僅提供概述,還有助於排除故障。它提供對 Kubernetes 資源運作狀況的洞察,突出任何操作錯誤。
透過它,您還可以部署應用程式。您可以使用您編寫的清單或透過您剛剛填寫的表單來完成此操作。但是,值得注意的是,該表單雖然用戶友好,但缺乏基本範例之外的自訂靈活性。
雖然 K8s 儀表板是萬能,但許多人發現它是一個多面手,缺乏深入的功能。這種限制鼓勵我們探索更多工具,每種工具都是為特定目的而設計的,因此我們透過我們探索過的工具清單開始我們的旅程。
透過終端探索集群時,K9s 是你最好的朋友(明白了嗎?🐶)。它與 Vim 的互動風格有共同點,即使用快捷鍵和以 :
開頭的命令,但不要因此而洩氣。 K9s 密切關注 Kubernetes 活動,為資源互動提供即時資訊和直覺的命令。
它幾乎可以取代標準的“kubectl”,並且在與 Kubernetes 互動時不需要您身邊有“備忘單”。您只需選擇資源並深入到最低級別即可遍歷資源。這樣可以輕鬆提取日誌並存取其外殼。
K9s 可讓您查看每個資源的清單,並能夠編輯和套用變更。正如我所提到的,它幾乎取代了“kubectl”。區別之一是您無法透過 K9 部署新資源。
K9s 具有過濾資源並使用「/」指令進行搜尋的功能,可以更輕鬆地在資源海洋中找到您要尋找的資源或透過特定 pod 的日誌進行過濾。
螢幕頂部隨時可以使用的命令和快捷方式清單是一個不錯的設計,它的皮膚和插件自訂為您提供了額外實用程式的空間。
如果您在處理清單檔案時遇到困難,Cyclops 就是適合您的工具! Cyclops 透過將清單轉換為基於 Web 的結構化形式,消除了處理清單時的混亂和複雜性,從而消除了手動配置和命令列互動的需要。
這使得具有不同技術專業知識水平的個人更容易理解部署過程。
在 Cyclops 的架構中,核心元件是 Helm 引擎。 Helm 在 Kubernetes 社群中非常受歡迎;很可能你已經遇到過它。 Helm 的流行因其簡單的整合而發揮了 Cyclops 的優勢。
有了 Cyclops,您就不再局限於一刀切的方法。 您可以自訂表單以滿足您的獨特需求。 例如,團隊成員可以產生 Helm 圖表,讓其他人可以使用 Cyclops 定義必要的值,以實現輕鬆的應用程式部署。
一旦您聲明了應用程式的所需狀態,部署它就像單擊按鈕一樣簡單。此外,一旦部署應用程式,也可以透過 Cyclops 輕鬆更改所需狀態。
在 Cyclops 中,每個應用程式都列出了它使用的資源的詳細清單 - 部署、服務、pod 等,所有這些都在簡單的視圖中。您可以輕鬆追蹤它們的狀態,幫助您快速發現並修復應用程式中的任何問題。這就像有一個清晰的路線圖來導航和解決出現的任何問題。
考慮每次儲存程式碼時自動刷新本機伺服器的便利性和節省時間,從而提供程式碼變更的即時視覺化。
想像一下將這種流暢的體驗進一步應用到 Kubernetes 叢集中; DevSpace 讓這一切成為可能。借助 DevSpace,您可以在編碼過程中即時部署應用程式,從而促進快速迭代。
DevSpace 透過自動將變更套用到 K8s 叢集來簡化流程,而無需整個映像建置和部署管道。它在本地建立映像,而不將其推送到註冊表,儘管在開發過程中需要它的人可以使用自動推送映像的選項。
此外,DevSpace 具有一個使用者介面,雖然有些限制,但可以快速概述叢集中的所有 Pod。它允許您輕鬆存取 Pod 日誌,甚至直接在其中執行命令,從而增強您的開發工作流程。
儘管我專注於本地開發,但 DevSpace 也用於建立工作流程。您的所有工作流程都保存在一個檔案中,從而可以使用單一「devspace deploy」命令輕鬆在任何電腦上重現環境。
與本文中提到的其他工具不同,Kubevious 無法更改叢集狀態。它僅用作可觀察性工具,重點關注集群中的潛在問題。它突出顯示了您可能執行的每種資源的潛在威脅和風險。
圖形視圖提供對容器、網路、暴露、RBAC 和 Helm 圖表的深入了解,以進行直觀的故障排除。
Kubevious 有一個規則引擎,有助於偵測並防止錯誤配置。它附帶了開箱即用的規則,但它也允許您建立自訂規則(例如,「不允許圖像位於最新標籤上」)。
它還配備了很酷的時間機器功能,允許用戶回到過去、審核應用程式、根本原因中斷和恢復清單,確保完全了解叢集歷史記錄。
我不得不提一下它提供的全文搜尋!您可以搜尋任何資源,而無需知道其特定名稱。一個很好的例子是,只需輸入「port 3000」即可搜尋使用特定連接埠的任何資源,Kubevious 就會找到您的資源。
為了增強 Kubernetes 體驗,我們推出了五個令人愉悅的工具,每個工具都有其獨特的魅力,讓您的旅程更加順暢和愉快。
這些並不是為 Kubernetes 提供 UI 的唯一工具,但我們希望專注於一些可能不太知名的工具。
所有這些工具都是開源的,所以請嘗試一下;他們是免費的!
我想用一個針對讀者的問題來結束這篇文章:您對 Kubernetes 的圖形表示有何看法?是否需要,或者「kubectl」是否佔據主導地位?
原文出處:https://dev.to/cyclops-ui/five-tools-to-make-your-k8s-experience-more-enjoyable-5d85