Kubernetes
為什麼 kubernetes kube-api server 需要 etcd-keyfile 和 kubelet-client-key
據我了解,kube-api 伺服器在與 ETCD 和 Kubelet 通信時充當客戶端。ETCD 和 Kubelet 都充當 kube-api 的伺服器。在安全環境下(雙向 SSL 認證),kube-api 伺服器需要 ETCD 和 Kubelet 證書以及 CA 證書。我不明白的是為什麼我們在配置 kube-apiserver.yaml 時需要提供 ETCD (etcd-keyfile) 和 Kubelet (kubelet-client-key) 的私鑰?
因為etcd 在 kubernetes 中使用 X.509 雙向 TLS 身份驗證,所以 apiserver 需要能夠證明它對呈現給伺服器的客戶端證書擁有所有權,這通過私鑰發生
etcd還有其他的身份驗證選項,但是 kubernetes 不使用它們,並且不清楚 apiserver 是否甚至提供了用於連接 etcd 的非 TLS 身份驗證選項,即使您想這樣做