我想使用我的kurnetes集群的etcdctl功能,但是我做不到,我已经从kubeadm安装了我的kubernetes,我有一个主程序和一个节点。
当我尝试命令etcdctl从我的etcd荚内部,我得到以下错误:
客户端: etcd群集不可用或配置错误; 错误#0:格式错误的HTTP响应"\x15\x03\x01\x00\x02\x02“; 错误#1:拨号tcp 127.0.0.1:4001: getsockopt:连接被拒绝
但是,当我检查我的etcd荚日志时,它似乎是健康的:

发布于 2018-08-03 12:05:37
端点=本地主机:2379 --cert=/etc/kubernetes/pki/etcd/healthcheck-client.crt --key=/etc/kubernetes/pki/etcd/healthcheck-client.key =/etc/kubernetes/pki/etcd/ca.crt ETCDCTL_API=3成员列表
发布于 2018-08-01 18:29:31
据我所知,您似乎已经让etcd侦听https://127.0.0.1:2379上的客户端连接,并且启用了客户端证书身份验证。然后,您应该能够运行以下命令来连接到etcd
ETCDCTL_API=3 etcdctl member list \
--endpoints=https://127.0.0.1:2379 \
--cacert=/etc/kubernetes/pki/etcd/ca.crt \
--cert=/etc/kubernetes/pki/etcd/server.crt \
--key=/etc/kubernetes/pki/etcd/server.key基本上,etcd希望您使用客户端证书进行身份验证。
另外,由于您运行的是3.x版本的etcd,所以您必须通过提供ETCDCTL_API环境变量来告诉etcdctl。
编辑:
供参考:
在测试上面的命令时,我使用了kubeadm版本1.11.1,它在运行Ubuntu18.04的服务器上安装了3.2.18版本的etcd。
https://stackoverflow.com/questions/51592180
复制相似问题