ssl - 无法验证 ip 的证书,因为它不包含任何 IP SAN

标签 ssl docker kubernetes openshift-origin

我已经使用 ansible 安装程序安装了带有 Docker 的 OpenShift3 和 Kubernetes。 安装后,我想在我的主机上创建我的 docker 注册,但出现以下错误(我读到它与 SSL 有关,但我找不到解决方案): 命令(来自示例):

[root@ip-10-0-0-x centos]# export CURL_CA_BUNDLE=`pwd`/openshift.local.config/master/ca.crt
[root@ip-10-0-0-x centos]# sudo chmod a+rwX openshift.local.config/master/admin.kubeconfig
[root@ip-10-0-0-x centos]# sudo chmod +r openshift.local.config/master/openshift-registry.kubeconfig
[root@ip-10-0-0-x centos]# oadm registry --create --credentials=openshift.local.config/master/openshift-registry.kubeconfig --config=openshift.local.config/master/admin.kubeconfig

错误:

error: error getting client: couldn't read version from server: Get https://10.0.0.x:8443/api: x509: cannot validate certificate for 10.0.0.x because it doesn't contain any IP SANs

附加信息

[root@ip-10-0-0-x centos]# kubectl version
Client Version: version.Info{Major:"", Minor:"", GitVersion:"v1.1.0-alpha.0-1605-g44c91b1", GitCommit:"44c91b1", GitTreeState:"not a git tree"}
Server Version: version.Info{Major:"", Minor:"", GitVersion:"v1.1.0-alpha.0-1605-g44c91b1", GitCommit:"44c91b1", GitTreeState:"not a git tree"}

[root@ip-10-0-0-191 centos]# oc get services
NAME         CLUSTER_IP   EXTERNAL_IP   PORT(S)   SELECTOR   AGE
kubernetes   172.30.0.1   <none>        443/TCP   <none>     1d

[root@ip-10-0-0-x centos]# kubernetes apiserver
F0924 12:15:13.674745   75545 server.go:223] No --service-cluster-ip-range specified

最佳答案

Ansible 安装程序应该 为您生成证书中具有正确 IP 的证书。您的本地 kubeconfig 文件(oadm 用于连接到服务器的文件)应该是由 Ansible 安装程序生成的——您能证实是这样吗?该文件位于 ~/.kube/config - 它是否指向 Ansible 安装程序使用的系统?您使用的是用于 OpenShift 的 IaaS、部署到本地机器还是 Vagrant?

关于ssl - 无法验证 ip 的证书,因为它不包含任何 IP SAN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32823237/

相关文章:

docker - Docker构建忽略文件权限

haskell - 如何在不使用套接字文件的情况下将堆栈指向 docker 守护进程启动?

Kubernetes Autoscaler如何始终保持一个节点空闲

azure - aks 无法创建 kubernetes 副本集

Android 4.2.2,如何为 HttpsURLConnection 启用 TLS 1.2?

php - 移动应用程序的安全问题

Java,SSLSocket,没有收到任何答复

macos - 如何在 OS X 上安装 SSL 证书以便从 Github 克隆项目?

docker - 在多阶段docker文件中重复使用CLI安装

json - Ingress-Nginx 外部身份验证的自定义响应