kubernetes - 在 Kubernetes 集群上使用 etcdctl 时出错:“证书由未知权限签名”
问题描述
我正在运行 minikube,我正在尝试列出我的 ETCD 上的密钥。
etcdctl
我从github下载了最新的客户端:
https ://github.com/etcd-io/etcd/releases/download/v3.3.18/etcd-v3.3.18-linux-amd64.tar.gz
我尝试使用以下证书运行它/home/myuser/.minikube/certs
:
./etcdctl --ca-file /home/myuser/.minikube/certs/ca.pem
--key-file /home/myuser/.minikube/certs/key.pem
--cert-file /home/myuser/.minikube/certs/cert.pem
--endpoints=https://10.240.0.23:2379 get /
我收到一个错误:
错误:客户端:etcd 集群不可用或配置错误;错误 #0:x509:证书由未知机构签名
错误 #0:x509:证书由未知机构签名
我使用了正确的证书吗?
我尝试了不同的证书:
./etcdctl --ca-file /var/lib/minikube/certs/ca.crt
--key-file /var/lib/minikube/certs/apiserver-etcd-client.key
--cert-file /var/lib/minikube/certs/apiserver-etcd-client.crt
--endpoints=https://10.240.0.23:2379 get /
我从以前收到了同样的错误。
知道有什么问题吗?
解决方案
对于 minikube,etcd 证书的正确路径是:/var/lib/minikube/certs/etcd/ 所以命令将是这样的:
# kubectl -n kube-system exec -it etcd-minikube -- sh -c "ETCDCTL_API=3 ETCDCTL_CACERT=/var/lib/minikube/certs/etcd/ca.crt ETCDCTL_CERT=/var/lib/minikube/certs/etcd/server.crt ETCDCTL_KEY=/var/lib/minikube/certs/etcd/server.key etcdctl endpoint health"
推荐阅读
- python - return redirect() 在 Flask 之前使代码无效
- javascript - 从一个偶数监听器函数切换到另一个
- html - 无论如何在引导程序中以 992px 的屏幕尺寸显示导航栏汉堡包?
- ios - 使用单击的按钮通过 tableView 传递数据
- java - 如何下载jaotc?
- python - 未定义 Django 数据库名称“连接”
- vim - vim:如何将打印到消息日志的内容的输出通过管道传输到缓冲区?
- java - jboss eap 7上的spring boot应用程序部署失败
- c# - SigninManager 没有调用 AccessFailed 和 Lockout 方法
- shell - 字母数字字符串的 Ascii 值