我们正在为 k8s 集群使用外部 etcd 集群。我们将 master 连接到此 etcd 服务器,但收到
"tls: first record does not look like a TLS handshake"
如何解决这个问题?(对于 eksctl 方面,所有在具有相同证书的 etcd 服务器上都可以正常工作)
ETCDCTL_API=3 /usr/local/bin/etcdctl member list --endpoints=https://127.0.0.1:2379 --cacert=/etc/etcd/ca.crt --cert=/etc/etcd/etcd-server.crt --key=/etc/etcd/etcd-server.key
b1fa8ebad0f4fa6, started, etcd-kube-cluster-1, https://10.105.113.*:2380, https://10.105.113.*:2379, false
984a08591dda4911, started, etcd-kube-cluster-3, https://10.105.114.*:2380, https://10.105.114.*:2379, false
b55b37a2544c7daa, started, etcd-kube-cluster-2, https://10.105.113.*:2380, https://10.105.113.*:2379, false
Kube-api 服务器清单更新为相同的证书
该错误消息暗示 ETCD 服务器拒绝您的连接,因为 URL 中的证书或 CN 对于配置的证书无效。
我想问题出在 etcd 服务器中配置的 subjectAltName 或 CN,您不能在 etcd-server 证书的 subjectAltName 中包含 127.0.0.1 IP。您可以执行以下 2 个选项中的任何一个来使其工作。
谢谢,