The IP address of API server is at 172.0.1.1.
When the API server address communicates with the Kubelet 10250 port, it always reports an error:
E0402 03:27:12.970501 1 upgradeaware.go:310] Error proxying data from client to backend: write tcp 172.0.1.1:40190->172.0.128.204:10250: write: broken pipe E0402 03:27:13.272704 1 upgradeaware.go:310] Error proxying data from client to backend: write tcp 172.0.1.1:33676->172.0.128.243:10250: write: broken pipe E0402 03:27:14.476613 1 upgradeaware.go:310] Error proxying data from client to backend: write tcp 172.0.1.1:36802->172.0.128.31:10250: write: broken pipe
I have tried to modify the following parameters:
Net.ipv4.tcp_keepalive_time =600 Net.ipv4.tcp_keepalive_intvl = 30 Net.ipv4.tcp_keepalive_probes = 10
And execute sysctl -p
to make it work, but it doesn't solve the problem, or see many of these errors.
That was a known issue of the kubelet keeps connection alive and not bring them down when the corresponding kubectl command was killed.
Fix is to upgrade kubelet to version containing #67288, which should now be in all releases 1.10+, or to periodically restart the kubelet.