监控:Kubernetes 监控
对kubernetes的通用性能指标进行采集监控。
监控前操作
如果想要监控 Kubernetes
中的信息,则需要获取到可访问Api Server的授权TOKEN,让采集请求获取到对应的信息。
参考获取token步骤
方式一
创建service account并绑定默认cluster-admin管理员集群角色
kubectl create serviceaccount dashboard-admin -n kube-system
用户授权
kubectl create clusterrolebinding dashboard-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin
kubectl -n kube-system get secret | grep dashboard-admin | awk '{print $1}'
kubectl describe secret {secret} -n kube-system
方式二
kubectl create serviceaccount cluster-admin
kubectl create clusterrolebinding cluster-admin-manual --clusterrole=cluster-admin --serviceaccount=default:cluster-admin
kubectl create token --duration=1000h cluster-admin
配置参数
参数名称 | 参数帮助描述 |
---|---|
监控Host | 被监控的对端IPV4,IPV6或域名。注意⚠️不带协议头(eg: https://, http://)。 |
任务名称 | 标识此监控的名称,名称需要保证唯一性。 |
APiServer端口 | K8s APiServer端口,默认6443 |
token | 授权Access Token |
URL | 数据库连接URL,可选,若配置,则URL里面的数据库名称,用户名密码等参数会覆盖上面配置的参数 |
采集间隔 | 监控周期性采集数据间隔时间,单位秒,可设置的最小间隔为30秒 |
是否探测 | 新增监控前是否先探测检查监控可用性,探测成功才会继续新增修改操作 |
描述备注 | 更多标识和描述此监控的备注信息,用户可以在这里备注信息 |
采集指标
指标集合:nodes
指标名称 | 指标单位 | 指标帮助描述 |
---|---|---|
node_name | 无 | 节点名称 |
is_ready | 无 | 节点状态 |
capacity_cpu | 无 | CPU容量 |
allocatable_cpu | 无 | 已分配CPU |
capacity_memory | 无 | 内存容量 |
allocatable_memory | 无 | 已分配内存 |
creation_time | 无 | 节点创建时间 |
指标集合:namespaces
指标名称 | 指标单位 | 指标帮助描述 |
---|---|---|
namespace | 无 | namespace名称 |
status | 无 | 状态 |
creation_time | 无 | 创建时间 |
指标集合:pods
指标名称 | 指标单位 | 指标帮助描述 |
---|---|---|
pod | 无 | pod名称 |
namespace | 无 | pod所属namespace |
status | 无 | pod状态 |
restart | 无 | 重启次数 |
host_ip | 无 | 所在主机IP |
pod_ip | 无 | pod ip |
creation_time | 无 | pod创建时间 |
start_time | 无 | pod启动时间 |
指标集合:services
指标名称 | 指标单位 | 指标帮助描述 |
---|---|---|
service | 无 | service名称 |
namespace | 无 | service所属namespace |
type | 无 | service类型 ClusterIP NodePort LoadBalancer ExternalName |
cluster_ip | 无 | cluster ip |
selector | 无 | tag selector匹配 |
creation_time | 无 | 创建时间 |