KUR8 : 一款 Kubernetes 集群拓撲和指標可視化工具
KUR8 是一個 Kubernetes 拓撲結構和 Prometheus 指標的可視化概覽開源工具,只需要使用一個配置文件和 RBAC 授權的權限直接部署到你的 Kubernetes 集群中即可。KUR8 將在本地啟動,讓您一目了然地監控 Kubernetes 集群。
功能
結構:瀏覽 ??Structure?
? 頁面可以以輕松查看你的控制平面和工作節點及其所有 pod,單擊組件可查看有關其元數據、狀態和規范的更多詳細信息,輕松查找有關從容器到入口的任何內容的鏡像 ID 或 IP 地址的信息。
指標:使用我們精選的指標儀表板一目了然地了解集群的狀態。
自定義指標:使用我們的自定義指標頁面來使用 PROMQL 自動完成查詢想要的任何指標。
報警:你的所有 Prometheus 報警都會顯示在 ??Alerts?
? 選項卡中,查明是否有任何警報正在觸發以及它們屬于哪些規則組。
部署
部署 KUR8
可以直接使用下面的資源清單直接部署到你的 Kubernetes 集群中:
# kur8-depl.yaml
apiVersion apps/v1
kind Deployment
metadata
name kur8-depl
spec
replicas1
selector
matchLabels
app kur8
template
metadata
labels
app kur8
spec
containers
name kur8
image kur8/dashboard latest
---
apiVersion v1
kind Service
metadata
name kur8-srv
labels
prometheus cluster-monitoring
k8s-app kube-state-metrics
spec
selector
app kur8
type ClusterIP
ports
name kur8
protocol TCP
port3000
targetPort3000
此外,為了允許讀取 API 的資源,你必須配置一組權限。我們已經使用 RBAC 授權設置了一個 YAML 文件,您可以直接應用到你的 Kubernetes 集群中:
# fabric8-rbac.yaml
# NOTE: The service account `default:default` already exists in k8s cluster.
# You can create a new account following like this:
#---
#apiVersion: v1
#kind: ServiceAccount
#metadata:
# name: <new-account-name>
# namespace: <namespace>
---
apiVersion rbac.authorization.k8s.io/v1
kind ClusterRoleBinding
metadata
name fabric8-rbac
subjects
kind ServiceAccount
# Reference to upper's `metadata.name`
name default
# Reference to upper's `metadata.namespace`
namespace default
roleRef
kind ClusterRole
name cluster-admin
apiGroup rbac.authorization.k8s.io
部署完成后可以使用 ??kubectl port-forward?
? 命令在端口 3068 上打開 KUR8:
kubectl port-forward deployment/kur8-depl 3068:3068
然后,打開你的網絡瀏覽器訪問 http://localhost:3068。左側的結構選項卡將查詢您的 Kubernetes API 以查看集群的架構。
部署 Prometheus
如果您沒有安裝 Prometheus 實例,請首先克隆存儲庫:
git clone https://github.com/oslabs-beta/KUR8
在 KUR8 目錄中運行:
kubectl create -f infra/manifests/setup
設置完成后運行:
kubectl create -f infra/manifests/
如果您想將 Kur8 連接到 Prometheus,請通過以下方式打開端口:
kubectl --namespace monitoring port-forward svc/prometheus-k8s 9090
現在你就可以在 KUR8 中查看 Prometheus 選項卡,查看和創建您的自定義儀表板。?
倉庫地址:https://github.com/oslabs-beta/KUR8