-
Notifications
You must be signed in to change notification settings - Fork 39.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Hard-coded addresses of scheduler and controller manager causes unhealthy ComponentStatus #96848
Comments
/sig api-machinery |
As I know, it is caused by that insecure port of scheduler and kube-controller-manager are deprecated. https://github.com/kubernetes/kubernetes/blob/ac62c47889bcb29cd488a4a7149f90ab9da836e8/pkg/scheduler/apis/config/types.go#L42-49
The readiness/liveness is now using 10259 https port to check cs status.
This may not be fixed as it is deprecated. |
Workaround is to open insecure port which is not secure. remove kubeadm
|
Thanks for the reply. The problem is that the IP addresses of scheduler and controller-manager is hard-coded to 127.0.0.1. However, in our situation, scheduler and controller-manager are running in different containers other than the kube-apiserver, and so they could not be reached by kube-apiserver through 127.0.0.1. Regarding the deprecation of v1 ComponentStatus API, we should detect the status of scheduler and controller-manager by other means instead of by checking the ComponentStatus? Thanks. |
You meet same issue as #19570 (comment) Per #93570, |
Got it. Many thanks. Closing this issue. |
/triage accepted |
We deployed k8s control plane(kube-apiserver, kube-schedudler and kube-controller-manager) in separate containers, so that they could not access each other through the 127.0.0.1 loopback interface.
But as https://github.com/kubernetes/kubernetes/blob/master/pkg/registry/core/rest/storage_core.go#L345, the validation address is hard-coded as 127.0.0.1 which causes the check failed.
What happened:
scheduler and controller-manager Component Status shows Unhealthy
What you expected to happen:
The validation addresses should be detected automatically and the component status shows Healthy.
Anything else we need to know?:
Environment:
kubectl version
): 1.18cat /etc/os-release
):uname -a
):The text was updated successfully, but these errors were encountered: