Насколько я понимаю, сервер kube-api действует как клиент при общении с ETCD и Kubelet. И ETCD, и Kubelet действуют как серверы для kube-api. В безопасной среде (двусторонняя SSL-аутентификация) серверу kube-api требуются сертификаты ETCD и Kubelet, а также сертификат CA. Я не понимаю, почему нам нужно предоставлять закрытые ключи ETCD (etcd-keyfile) и Kubelet (kubelet-client-key) при настройке kube-apiserver.yaml?
Так как etcd использует взаимную аутентификацию TLS X.509 в кубернетах, поэтому apiserver должен иметь возможность доказать, что он владеет сертификат клиента который предоставляется серверу, и это происходит через закрытый ключ
Есть другие варианты аутентификации для etcd, но Kubernetes их не использует, и неясно, предлагает ли apiserver даже вариант аутентификации без TLS для подключения к etcd, даже если вы хотели