Kubectl 的替代品:kubeman

週末閒逛 Twitter 時,發現一個頗有意思的小工具叫 kubeman,野心卻是不小,勵志成爲 kubectl 的替代品,用於實時監控和管理 kubernetes 集羣,還能夠調試與 Istio 相關的問題。git

若是隻使用 kubectl,當網格中的服務出現問題時,可能須要運行不少命令,並且要交叉引用來自多個命令的輸出信息,這就會致使問題分析的過程很複雜。kubeman 將這些交叉引用和相關信息分析的複雜邏輯隱藏起來,只暴露一個 UI 界面,針對每一種資源對象封裝了一些經常使用的操做項,這樣能夠簡化不少操做流程。github

安裝很簡單,到 release 頁面下載相應的二進制,而後直接運行就行了。下面經過一個完整的示例來演示它的工做流程:工具

一、運行 kubeman 二進制文件。spa

二、點擊 Select Cluster 菜單選擇集羣,還能夠在 NAMESPACES 對話框中選擇一個或多個 namespace,將後面操做項的會話限制在某些 namespace 中。3d

三、以前選擇的集羣 context 如今會顯示在頂部。調試

四、左邊一欄是菜單面板,操做項被按照不一樣的資源類型進行分組,你能夠從菜單組中選擇一個要執行的操做項。code

五、因爲操做項的數量很龐大,從中尋找咱們想要的操做項可能會很費勁,還好頂部有一個搜索框,你能夠經過搜索來找到你想要的操做項,搜索結果會顯示在 Matching Recipes 菜單中。component

六、某些操做項會作更進一步的篩選,例如 namesapce,service,pod 等。對象

七、右邊是輸出面板,用來捕獲並顯示全部操做項的輸出。還提供了一些額外的操做:blog

  • 一旦操做項運行並輸出告終果,你就能夠在輸出面板頂部的搜索框裏經過關鍵詞搜索相應的文本。若是想刪除搜索的關鍵詞,能夠按下鍵盤上的 esc 鍵。

  • 每一個操做項的輸出會按層級進行分組。最頂部的輸出行(深藍色)顯示的是輸出結果的標題,單擊這一行會將整個輸出摺疊起來,只顯示組和子組,這樣就能夠看到整個輸出的概要。再次單擊這一行就會顯示整個輸出。

  • 同理,你能夠單擊某一個組來摺疊這個組的輸出,只顯示子組。同理適用於子組。

  • 不一樣的子組下的輸出均可以展開和摺疊,你能夠上下滾動來選擇感興趣的子組,而後單擊展開輸出。

八、有些操做項須要你在搜索框中輸入關鍵詞,而後纔會顯示輸出。例如,操做項 Find component by IP 會等待你輸入一個或多個 IP 地址,而後輸出結果。此時搜索框扮演了兩個角色,既做爲輸出結果的搜索框,也做爲操做項的輸入框。若是一個操做項支持輸入,須要在輸入的字符串前面加上 / 以代表這是操做項的輸入。多個輸入關鍵詞能夠用 , 隔開。

九、有些操做項支持重複運行,一旦這些操做項執行完成,你就能在輸出面板的頂部看到一個 ReRun 菜單,單擊它就能夠從新運行。你也能夠在搜索框中輸入命令 /r 來從新運行。

十、有些操做項支持狀況輸出結果,一旦這些操做項執行完成,你就能在輸出面板的頂部看到一個 Clear 菜單,單擊它就能夠清理輸出結果。你也能夠在搜索框中輸入命令 /clear 或者 /c 來清理輸出結果。

十一、有些操做項支持自動按期執行,這些操做項的菜單欄中有一個 Auto Refresh 選項,還能夠自定義執行週期,默認的週期是 15s。

十二、搜索框支持更高級的搜索語法,例如操做符 or 表示或,! 表示非。

總的來講,kubeman 仍是很強大的,簡直是個 k8s 集羣調試神器,除了上面提到的功能以外,它支持窗口多開,窗口最大化,還能夠選擇暗黑主題,趕快試試吧!

相關文章
相關標籤/搜索