我正在尝试在集群中部署heapster并收集指标并将其存储在Influxdb中。我可以为Influxdb提供接收器。但我不确定如何提供--source标志的值以连接到安全的 kube API 服务器。有人可以帮我找出这个。
注意:我正在尝试在运行 kube API 服务器的同一集群中部署 heapster。
提前致谢。
我正在尝试在集群中部署heapster并收集指标并将其存储在Influxdb中。我可以为Influxdb提供接收器。但我不确定如何提供--source标志的值以连接到安全的 kube API 服务器。有人可以帮我找出这个。
注意:我正在尝试在运行 kube API 服务器的同一集群中部署 heapster。
提前致谢。
我使用带参数的 heapster
--source=kubernetes: http://kubernetes.default?inClusterConfig=false&insecure=true&auth=/etc/kubernetes/admin.conf
inClusterConfig=false
表示我不在集群中使用 serviceaccount。insecure=true
表示我信任此集群中的 ApiServer。auth=/etc/kubernetes/admin.conf
是,尝试连接到 ApiServer 时的身份验证配置,这与您的 kubectl/kubelet 使用的 kubeconfig 相同。您可以使用 Configmap 或普通卷将此配置挂载到 heapster pod 中。更多源码配置,可以参考这里
我找到了解决方案。我使用的参数是
--source=kubernetes: https://masterIP?auth=/var/lib/kube-proxy/kubeconfig&apiVersion=v1
--sink=influxdb: http://influxdbIP:8086?user=xxx&pw=xxx&db=xxx
我安装/var/lib/kube-proxy/kubeconfig
到 kube-proxy 使用的 heapster 容器,现在 heapster 可以与安全的 API 服务器通信。我也将 heapster 图像更改为gcr.io/google_containers/heapster:v1.2.0
注意:InfluxDB 必须是最新版本才能使其正常工作。我正在使用 v1.2
我不确定这是否是正确的方法。但这对我有用。
感谢您的所有回复。