Kubernetes 集群拓扑和指标可视化工具 - KUR8
共 2262字,需浏览 5分钟
·
2022-03-16 11:57
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:
replicas: 1
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
port: 3000
targetPort: 3000
此外,为了允许读取 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:
# 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