相信使用過K8S或容器化的大家都有了解過私有容器倉庫Harbor,Harbor是VMware大佬開源的一個私有容器鏡像倉庫,VMware也開源了另外一個工具就是本文要說到的Octant,從筆者的角度上看來它更像一個Dashboard的代替品。
附上:
喵了個咪的部落格:
w-blog.cn Octant官方Git位址: https://github.com/vmware/octantPS:Octant需要依賴本地的kuberctl才能正常啟動,目前官方最新版本為 V0.7
一、介紹
借用官方的一句話說:
A web-based, highly extensible platform for developers to better understand the complexity of Kubernetes clusters.
基于Web的高度可擴充平台,供開發人員更好地了解Kubernetes叢集的複雜性。
Octant主要具備以下特性
-
資源檢視
以圖形方式顯示Kubernetes叢集中對象之間的關系。各個對象的狀态由顔色表示,以顯示工作負載性能。
-
摘要視圖
通過使用多個kubectl指令找到的輸出聚合的單個頁面中的合并狀态和配置資訊。
-
端口轉發
使用頁面點選的方式将本地端口轉發到正在運作的pod,以便調試應用程式,甚至可以跨命名空間端口轉發多個pod。
-
日志檢視
檢視pod和容器活動的日志流,以便在不打開多個終端的情況下進行故障排除或監控
-
标簽過濾器
使用标簽篩選來組織工作負載,以檢查命名空間中具有大量對象的群集。
-
群集導航
跨不同群集輕松更改名稱空間或上下文之間的内容。還支援多個kubeconfig檔案。
-
插件系統
高度可擴充的插件系統,供使用者通過gRPC提供額外的功能。插件作者可以在現有視圖之上添加元件。
但是從筆者的角度上來看最重要的主要是如下幾點:
- 能夠完整的檢視整個K8S中各個元件以及他們的關聯關系,Dashboard隐藏了很多元件的狀态
- 能夠通過網頁的方式直接映射POD中的端口,可以很友善的進行調試增加開發人員的易用性
當然有優勢也有缺點,目前的版本并不支援線上shell控制也沒有更強的權限控制能力,還不能完全脫離Dashboard但是如果結合者kubebox還是可以一戰的
二、安裝Octant
廢話不多說我們就進入具體的安裝使用環節,推薦直接使用二進制檔案進行安裝,方法和kububox基本一緻
使用mac舉例:
PS:首先需要保障kubectl能夠正常使用
wget https://github.com/vmware/octant/releases/download/v0.7.0/octant_0.7.0_macOS-64bit.tar.gz
tar -zxvf octant_0.7.0_macOS-64bit.tar.gz
octant_0.7.0_macOS-64bit/octant
運作之後就會自動彈出頁面了
三、功能示範
選擇一個Deployments在點選到resourceViewer就可以檢視關聯關系圖
如果具有複雜關系可以非常直覺的圖中展示出來
在繼續選擇到POD層
Container proxy就可以選擇把POD中莫個團隊之間映射到本地
如下:
就可以正常通路了,這個功能可以非常友善開發人員進行容器下的調試
PS:端口映射隻能映射到localhost上,并不能在一台功能伺服器上放出端口給到多個開發使用,等後續官方支援吧