2016-05-17 14 views
3

Ich sehe eine Menge Fehler in meinen Logs in Bezug auf Uhren. Hier ist ein Ausschnitt aus meinem apiserver Protokoll auf einer Maschine:Fehler in Bezug auf Kubernetes Uhren

W0517 07:54:02.106535  1 reflector.go:289] pkg/storage/cacher.go:161: watch of *api.Service ended with: client: etcd cluster is unavailable or misconfigured 
W0517 07:54:02.106553  1 reflector.go:289] pkg/storage/cacher.go:161: watch of *api.PersistentVolumeClaim ended with: client: etcd cluster is unavailable or misconfigured 
E0517 07:54:02.120217  1 reflector.go:271] pkg/admission/resourcequota/admission.go:86: Failed to watch *api.ResourceQuota: too old resource version: 790115 (790254) 
E0517 07:54:02.120390  1 reflector.go:271] pkg/admission/namespace/lifecycle/admission.go:126: Failed to watch *api.Namespace: too old resource version: 790115 (790254) 
E0517 07:54:02.134209  1 reflector.go:271] pkg/admission/serviceaccount/admission.go:102: Failed to watch *api.ServiceAccount: too old resource version: 790115 (790254) 

Wie Sie sehen können, gibt es zwei Arten von Fehlern:

  • etcd cluster is unavailable or misconfigured
    ich --etcd-servers=http://k8s-master-etcd-elb.eu-west-1.i.tst.nonprod-ffs.io:2379 zum apiserver bin vorbei (das ist definitiv erreichbar). Another question scheint darauf hinzudeuten, dass dies nicht funktioniert, aber --etcd-cluster ist keine anerkannte Option in der Version renne ich (1.2.3)
  • too old resource version
    ich verschiedene gesehen habe dies erwähnt (zB. this issue) aber nichts schlüssig, was das verursacht. Ich verstehe das Standard-Cache-Fenster ist 1000, aber das Delta zwischen Versionen im obigen Beispiel sind weniger als 1000. Könnte es der Fehler oben ist, ist die Ursache dafür?
+0

etcd: ist es möglich, das ist nur beim Booten und etcd ist down? Was sagt etcdctl cluster-health? –

+0

Dies geschieht immer noch (lange nachdem der Knoten hochgekommen ist). Um zu verdeutlichen, ist die etcd, mit der ich den Apiserver konfiguriere, nicht mit dem gleichen Host. – obeattie

+0

funktioniert etcd? –

Antwort

2

Ich sehe, dass Sie auf die etcd über ELB-Proxy auf AWS zugreifen.

Ich habe ähnliche Lösung, nur die ETCD ist von der Kubmaster-Server zu seinem eigenen 3-Knoten-Cluster entkoppelt, hinter einem internen ELB versteckt.

Ich kann die gleichen Fehler vom kube-apiserver sehen, wenn sie für die Verwendung des ELB konfiguriert sind. Ohne den ELB, der wie üblich mit einer Liste von ETCD-Endpunkten konfiguriert ist, sehe ich keine Fehler.

Leider kenne ich die Ursache nicht oder warum passiert das, wird mehr untersuchen.

+0

Interessant. Bitte lassen Sie mich wissen, wenn Sie mehr erfahren! – obeattie

+0

Ich bekomme auch diesen Kubernetes-Fehler bei der Verwendung von etcd, obwohl ein interner ELB-Proxy auf AWS. Hast du mehr erfahren/warum? Oder gibt es einen bestehenden Kubernetes-Bug dafür? – user2707671