安裝證書的TLS我一直努力讓api-server 1.2.2
與etcd
與TLS安全的運行。Kubernetes 1.2.2:API服務器失敗:找不到ETCD
我從1.1.2
升級到1.2.2
在1.1.2
我用的是--etcd-config
標誌,並有一個看起來像一個文件:
{
"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"
}
}
現在這個不再支持,我轉向使用標誌:
--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"
現在我得到這個錯誤:
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
因此,它似乎無法找到證書文件。 文件路徑和名稱與以前一樣,並且它們以與v1.1.2完全相同的方式裝載,因此我不明白爲什麼api-server不會找到它們。
我一直在試圖找出什麼是簡單地從
- /hyperkube
- api-server
...
切換command
在吊艙
- /bin/sleep
- 60
但kubelet
不會啓動該吊艙的文件路徑怎麼回事出於某種原因,我不明白。
它是否與yaml文件名或什麼有關?
我不明白爲什麼kubelet
不會使用此命令運行。
任何幫助,這將不勝感激。
感謝
UPDATE
我能夠進入運行容器/hyperkube scheduler
替換命令後,我可以貓API服務器被抱怨的文件,所以我不不明白他們爲什麼找不到。
這裏還報道:https://github.com/kubernetes/kubernetes/issues/24578交叉參考 – MrE
我試過v1.2.1和同樣的問題。只有1.1.2似乎工作 – MrE