2015-06-27 50 views
1

我剛剛在我的fedora筆記本電腦上使用this guide直接安裝了kubernetes測試安裝。本地主機上的Kubernetes:安裝證書

啓動kube2sky後,我注意到我無法連接到kubernetes API,因爲證書是必需的。 kubernetes-ro已棄用且不再可用,因此我收到以下錯誤:

E0627 15:58:07.145720 1 reflector.go:133]無法列出* api.Service:獲得https://10.254.0.1:443/api/v1beta3/services:x509:無法加載系統的根,沒有根提供 E0627 15:58:07.146844 1 reflector.go:133]無法列出* api.Endpoints:獲取https://10.254.0.1:443/api/v1beta3/endpoints:X509:無法加載系統根和無根提供

如何我可以設置證書嗎?

回答

2

對於沒有在使用salt自動配置主節點上的系統機密(如GCE)的設置上運行的人來說,這是一個常見問題。這一點已經得到解決,應該在下一個版本中修復。

與此同時,您可以手動爲包含kube2sky的kubeconfig文件以連接到主服務器的DNS服務創建一個祕密。您可以通過查看kube-addons.sh(使用用戶名「system:dns」調用時)中的create-kubeconfig-secret功能來了解GCE的工作方式。結果祕密的名稱應該是token-system-dns。

+0

我分享同樣的問題。我經常看到令牌與證書一樣被談論。標記是否否定了對證書的需求?這是我不明白的部分。看起來你仍然需要建立那個需要證書的https連接。 – Greg

+2

令牌和證書用於不同的目的。證書允許客戶端驗證服務器的身份(這樣您就不會被中間人攻擊者攔截)。該令牌允許服務器識別客戶端(以便只有經過驗證的客戶端才能進行連接)。他們一起允許客戶端和服務器建立一個安全的認證連接。您可以在沒有證書的情況下建立連接(但使用令牌),但無法保證有人不會通過攔截您的流量來竊取您的憑證。希望有所幫助。 –

相關問題