我会使用Telegraf将Kubernetes的度量数据保存在InfluxDB中(临时)

安装Telegraf

在Kubernetes的控制节点上安装Telegraf。

wget -qO- https://repos.influxdata.com/influxdb.key | sudo tee /etc/apt/trusted.gpg.d/influxdb.asc >/dev/null
echo "deb https://repos.influxdata.com/debian stable main" | sudo tee /etc/apt/sources.list.d/influxdb.list
sudo apt-get update && sudo apt-get install telegraf

电报实时监控配置文件

Telegraf的配置文件位于/etc/telegraf/telegraf.conf,但由于这个文件太大而不容易修改,所以最好创建一个新文件并进行复制。
需要设置的项目有两个,分别是:
[[inputs.kubernetes]]
[[outputs.influxdb_v2]]。
如果InfluxDB的版本低于v2,建议设置outputs.influxdb。

接下来要设置telegraf打击API,但这是最麻烦的一步(涉及到调整kubernetes的RBAC权限)。

命令:通过CLI执行curl以访问。

curl https://127.0.0.1:6443/api/v1/nodes/{nodename}/proxy –header “Authorization: Bearer $TOKEN” –insecure

Telegraf需要访问在系统上指定的URL上的/stats/summary。因此需要确认是否能够访问到数据。如果无法访问,请确认Kubernetes的RBAC认证。

确认内容如下:
1. 如果只能获取kube-system的Pod的metrics,请确保kubelet-api-admin的clusterrole已为metrics-server创建了clusterrolebnding。
2. 其次,需要检查TOKEN的ServiceAccount是否具有一些…

创建InfluxDB。

创建InfluxDB。

wget -qO- https://repos.influxdata.com/influxdb.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/influxdb.gpg > /dev/null
export DISTRIB_ID=$(lsb_release -si); export DISTRIB_CODENAME=$(lsb_release -sc)
echo "deb [signed-by=/etc/apt/trusted.gpg.d/influxdb.gpg] https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/influxdb.list > /dev/null

sudo apt-get update && sudo apt-get install influxdb2

访问InfluxDB的网站,
访问即可进行初始设置。

如果有任何不清楚或错误的地方,请在评论中提醒我。


以下是一种可能的汉语表达方式:

各种方便的网站集合
API
https://kubernetes.io/ja/docs/setup/production-environment/tools/kubeadm/install-kubeadm/
官方RBAC认证文档
https://kubernetes.io/ja/docs/reference/access-authn-authz/rbac/#rolebinding%E3%81%A8clusterrolebinding
资源排序方法
https://stackoverflow.com/questions/49396607/where-can-i-get-a-list-of-kubernetes-api-resources-and-subresources
Telegraf Kubernetes输入插件的官方文档
https://github.com/influxdata/telegraf/blob/master/plugins/inputs/kubernetes/README.md
Telegraf官方GitHub页面
https://github.com/influxdata/telegraf/blob/master/docs/CONFIGURATION.md#metric-filtering