2015-09-23 22 views
2

我有一個成功工作的羣集,沒有任何問題,我嘗試複製它。它的工作基本上,除了一個問題 - 通過API服務器生成的令牌是不是錯誤消息有效:生成的serviceaccount令牌被kube-apiserver拒絕

6 handlers.go:37] Unable to authenticate the request due to an error: crypto/rsa: verification error 

我已經API服務器與下面的參數啓動:

kube-apiserver --address=0.0.0.0 --admission_control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ServiceAccount,ResourceQuota --service-cluster-ip-range=10.116.0.0/23 --client_ca_file=/srv/kubernetes/ca.crt --basic_auth_file=/srv/kubernetes/basic_auth.csv --authorization-mode=AlwaysAllow --tls_cert_file=/srv/kubernetes/server.cert --tls_private_key_file=/srv/kubernetes/server.key --secure_port=6443 --token_auth_file=/srv/kubernetes/known_tokens.csv --v=2 --cors_allowed_origins=.* --etcd-config=/etc/kubernetes/etcd.config --allow_privileged=False 

我想我失去了一些東西但無法找到具體的東西,任何幫助將不勝感激!

回答

0

你可以看到下面這個標誌爲api服務器,它適用於我。檢查這個。

--insecure-bind-address=${OS_PRIVATE_IPV4} 
--bind-address=${OS_PRIVATE_IPV4} 
--tls-cert-file=/srv/kubernetes/server.cert 
--tls-private-key-file=/srv/kubernetes/server.key 
--client-ca-file=/srv/kubernetes/ca.crt 
--admission_control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ResourceQuota 
--token-auth-file=/srv/kubernetes/known_tokens.csv 
--basic-auth-file=/srv/kubernetes/basic_auth.csv 
--etcd_servers=http://${OS_PRIVATE_IPV4}:4001 
--service-cluster-ip-range=10.10.0.0/16 
--logtostderr=true 
--v=5 
3

所以,顯然它是錯誤的server.key控制器管理器使用。 根據kubernetes documentation令牌由控制器管理器生成。

雖然我在做我所有配置的副本,但我不得不更改ipaddress,並且因此也必須更改證書。但是,控制器管理器以「舊」證書啓動,並且在更改後創建了錯誤的密鑰,因爲server.key。