首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Kubernetes 1.2.2: api-server失败:无法在etcd上找到TLS的挂载证书

Kubernetes 1.2.2: api-server失败:无法在etcd上找到TLS的挂载证书
EN

Stack Overflow用户
提问于 2016-04-21 02:04:41
回答 1查看 132关注 0票数 1

我一直在努力让api-server 1.2.2使用TLS保护的etcd运行。

我正在从1.1.2升级到1.2.2

1.1.2中,我使用了--etcd-config标志,并有一个类似于以下内容的文件:

代码语言:javascript
运行
复制
{
  "cluster": {
    "machines": [
      "https://XXX.XXX.XXX.XXX:2379",
      "https://XXX.XXX.XXX.XXY:2379",
      "https://XXX.XXX.XXX.XXZ:2379"
    ]
  },
  "config": {
    "certFile": "/etc/ssl/etcd/etcd-peer.cert.pem",
    "keyFile": "/etc/ssl/etcd/private/etcd-peer.key.pem",
    "caCertFiles": [
      "/etc/ssl/etcd/ca-chain.cert.pem"
    ],
    "consistency": "STRONG_CONSISTENCY"
  }
}

现在,这不再受支持,我转而使用这些标志:

代码语言:javascript
运行
复制
--etcd-cafile="/etc/ssl/etcd/ca-chain.cert.pem"
--etcd-certfile="/etc/ssl/etcd/etcd-peer.cert.pem"
--etcd-keyfile="/etc/ssl/etcd/private/etcd-peer.key.pem"    
--etcd-servers="https://XXX.XXX.XXX.XXX:2379, https://XXX.XXX.XXX.XXY:2379,https://XXX.XXX.XXX.XXZ:2379"

现在我得到了这个错误:

代码语言:javascript
运行
复制
F0421 00:54:40.133777       1 server.go:291] Invalid storage version or misconfigured etcd: open "/etc/ssl/etcd/etcd-peer<nodeIP>.cert.pem": no such file or directory

所以,它似乎找不到cert文件。文件路径和名称与以前相同,它们是用hostPath安装的,方式与v1.1.2完全相同,所以我不明白为什么api-server找不到它们。

我一直试图通过简单地将吊舱中的command切换到

代码语言:javascript
运行
复制
- /hyperkube
- api-server
...

代码语言:javascript
运行
复制
- /bin/sleep
- 60

但是kubelet不会启动这个吊舱,因为我不明白的原因。

是不是和yaml文件名有关?

我不明白发生了什么,为什么kubelet不使用这个命令运行。

如果能对此提供任何帮助,我们将不胜感激。

谢谢

更新

在用/hyperkube scheduler替换命令之后,我能够进入正在运行的容器。

我可以禁止apiserver抱怨的文件,所以我不明白为什么找不到它们。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-21 19:28:34

嗯,罪魁祸首就像"“

代码语言:javascript
运行
复制
--etcd-cafile="/etc/ssl/etcd/ca-chain.cert.pem"
--etcd-certfile="/etc/ssl/etcd/etcd-peer.cert.pem"
--etcd-keyfile="/etc/ssl/etcd/private/etcd-peer.key.pem"    
--etcd-servers="https://XXX.XXX.XXX.XXX:2379, https://XXX.XXX.XXX.XXY:2379,https://XXX.XXX.XXX.XXZ:2379"

是错的

但这样做是可行的:

代码语言:javascript
运行
复制
--etcd-cafile=/etc/ssl/etcd/ca-chain.cert.pem
--etcd-certfile=/etc/ssl/etcd/etcd-peer.cert.pem
--etcd-keyfile=/etc/ssl/etcd/private/etcd-peer.key.pem   
--etcd-servers=https://XXX.XXX.XXX.XXX:2379,https://XXX.XXX.XXX.XXY:2379,https://XXX.XXX.XXX.XXZ:237
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36758328

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档