2015-12-18 26 views
5

私はubutnu(ベアメタルインストール)にkubernetesをインストールしようとしています。 1つのマスターと1つのノードをインストールしても問題ありません。 私は問題なくui addonをインストールしましたが、dns addonをインストールしようとすると、ポッドは自動的に再起動します。skydnsを起動できません

E1218 12:56:15.298118  5 handlers.go:37] Unable to authenticate the request due to an error: crypto/rsa: verification error 
I1218 12:56:15.298220  5 handlers.go:131] GET /api/v1/services: (534.467µs) 401 [[kube2sky/v0.20.2 (linux/amd64) kubernetes/unknown] 172.27.35.39:33013] 
E1218 12:56:15.298396  5 handlers.go:37] Unable to authenticate the request due to an error: crypto/rsa: verification error 
I1218 12:56:15.298469  5 handlers.go:131] GET /api/v1/endpoints: (493.5µs) 401 [[kube2sky/v0.20.2 (linux/amd64) kubernetes/unknown] 172.27.35.39:33014] 
I1218 12:56:16.001321  5 handlers.go:131] GET /healthz: (83.326µs) 0 [[Go 1.1 package http] 127.0.0.1:42096] 
E1218 12:56:16.303274  5 handlers.go:37] Unable to authenticate the request due to an error: crypto/rsa: verification error 
E1218 12:56:16.303274  5 handlers.go:37] Unable to authenticate the request due to an error: crypto/rsa: verification error 

そしてkube2skyコンテナログに、私は次のエラーを取得::私が得るKUBE-apiserverログで

私はサービスアカウントに問題があるよう

E1218 12:57:51.713651  1 reflector.go:136] Failed to list *api.Service: the server has asked for the client to provide credentials (get services) 
E1218 12:57:51.713850  1 reflector.go:136] Failed to list *api.Endpoints: the server has asked for the client to provide credentials (get endpoints) 

は私に見て、私はkube2skyインスタンスを見て、/tmp/secrets/kubernetes.io/serviceaccountディレクトリにトークンがあり、ca.crtがクラスタの正しいcaであることがわかります

私が使用しています: のUbuntu 14.04 kubernetes 1.1.2 アドオン私はではなく、Kubernetes自体に、私はそれがskydnsで発行していない見つけたようkubernetes 1.1.2

+0

私がインストールされている:

# Search the secret name kubectl get pod --namespace=kube-system -l k8s-app=kube-dns -o yaml | grep -A1 serviceaccount # Delete the current secret kubectl delete secret/<name-of-the-secret> --namespace=kube-system 

は、私はまた、より良いアプローチがあるかどうかわからない、全体のPODを再起動する必要があります同じ。 kube2skyコンテナのmountPathを確認してください。私はtokenMountsを次のように使用しています。 "volumeMounts":[{ "名前": "デフォルト・トークンnpk63"、 "読み取り専用":真、 "MOUNTPATH": "/var/run/secrets/kubernetes.io/serviceaccount" }] 、 – jeon

答えて

0

のアドオンディレクトリからのDNSアドオンを作成してみてください。このrc/serviceを別のネームスペースに入れると、完璧に動作します。私は1.1.4でこの問題を抱えていたKubernetes

6

私はapi-serverの証明書とキーを更新した後も同じ問題がありました。私は秘密を取り除いた後、DNSサービスを固定:あなたは正確に持っていたkubernetes

kubectl delete svc/kube-dns rc/kube-dns-v9 --namespace=kube-system 
kubectl create -f dns-addon.yaml