天天看點

Octan - K8S-Dashboard代替品

相信使用過K8S或容器化的大家都有了解過私有容器倉庫Harbor,Harbor是VMware大佬開源的一個私有容器鏡像倉庫,VMware也開源了另外一個工具就是本文要說到的Octant,從筆者的角度上看來它更像一個Dashboard的代替品。

附上:

喵了個咪的部落格:

w-blog.cn Octant官方Git位址: https://github.com/vmware/octant

PS: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上,并不能在一台功能伺服器上放出端口給到多個開發使用,等後續官方支援吧