我正在学习与Kubernetes一起工作,并尝试配置对我的Kubernetes集群的监视。为此,我使用metricbeat和elk。 部署并配置metricbeat后,出现错误:
error making http request: Get http://172.16.0.205:10255/stats/summary: dial tcp 172.16.0.205:10255: connect: connection refused
我发现我的Kubelet没有在端口10255上监听:
[root@kube2 /]# netstat -ap | grep -i "listen" | grep "kubelet"
tcp 0 0 localhost:40450 0.0.0.0:* LISTEN 8560/kubelet
tcp 0 0 localhost:10248 0.0.0.0:* LISTEN 8560/kubelet
tcp6 0 0 [::]:10250 [::]:* LISTEN 8560/kubelet
如何启用此端口。我发现需要使用参数--read-only-port = 10255的信息,但是如何将其应用于我的kubelet,我不太了解。例如:
[root@kube2 /]# kubelet --config --read-only-port=10255
\F1010 13:32:48.592306 15851 server.go:196] failed to load Kubelet config file --read-only-port=10255, error failed to read kubelet config file "/--read-only-port=10255", error: open /--read-only-port=10255: no such file or directory
它不起作用。需要哪个文件?
有人可以帮助我解决这个问题吗?
答案 0 :(得分:0)
我解决了这个问题。我在每个kubertenes节点中的/ var / lib / kubelet / kubelet-flags中添加了标记:
KUBELET_KUBEADM_ARGS="--cgroup-driver=systemd --network-plugin=cni --pod-infra-container-image=k8s.gcr.io/pause:3.1 --read-only-port=10255"
并重新启动kubelet服务。
现在我打开了端口10255:
[root@kube2 7.1]# netstat -ap | grep -i "listen" | grep "kubelet"
tcp 0 0 localhost:44799 0.0.0.0:* LISTEN 6281/kubelet
tcp 0 0 localhost:10248 0.0.0.0:* LISTEN 6281/kubelet
tcp6 0 0 [::]:10250 [::]:* LISTEN 6281/kubelet
tcp6 0 0 [::]:10255 [::]:* LISTEN 6281/kubelet
我在我的kibana中看到了一些kubernetes日志。