kubelet證書需要在端口10250.它並不需要簽署證書的HTTPS服務器,所以CA:TRUE是多餘的。不知道爲什麼這樣創建。
IIRC,kube-apiserver信任任何證書,如果它運行時沒有設置--tls-ca-file
。我記得一些較老的k8s教程沒有強制執行TLS。
另外,任何人/任何東西都可以無限制地訪問kubelet,直到您打開kubelet authentication。
在任何情況下,如果以這種方式運行您的k8s集羣是不安全的。我建議使用kargo,kops,kubeadm或任何一種知名工具來提升羣集。這些解決方案構建適當的證書層次結構作爲安裝過程的一部從kubelet's docs
額外信息:
--cert-dir string The directory where the TLS certs are located (by default /var/run/kubernetes). If --tls-cert-file and --tls-private-key-file are provided, this flag will be ignored. (default "/var/run/kubernetes")
--tls-cert-file string File containing x509 Certificate for HTTPS. (CA cert, if any, concatenated after server cert). If --tls-cert-file and --tls-private-key-file are not provided, a self-signed certificate and key are generated for the public address and saved to the directory passed to --cert-dir.
--port int32 The port for the Kubelet to serve on. (default 10250)
集羣與kubeadm創建。從你的鏈接看來,授權是通過默認kubelet配置給予apiserver的。感謝您的幫助。 – cristi