wie zu verwenden Kubernetes DNS für Hülsen?
Auf GKE, kube-dns - läuft auf meinem Knoten, den ich sehen kann, der docker-Container.
Ich habe Zugang zu Dienstleistungen Namen, die ist ideal für alle Anwendungen, wo load balancing ist eine perfekt passende Lösung, aber wie würde ich den DNS-Zugriff auf einzelne pods?
Ich weiß, ich kann schauen spezifischen pods in der API, aber ich brauche zu aktualisieren, die hosts
Datei selbst, und halten gerade die pod-Liste. DNS machen soll, dass es für mich so, wie ist es dazu genutzt werden, um innerhalb eines pod?
Den Kubernetes doc sagt, die DNS-info übergeben werden muss, um die kubelet aber ich habe keinen Zugriff auf GKE, die ich kenne, so ist es einfach nicht das setup, die Möglichkeit auf GKE oder gibt es etwas zu tun, um es zu aktivieren?
Einige meiner Dienstleistungen (Tierpfleger im besonderen) sich bewusst von anderen Knoten auf seine eigene, und versucht, eine Verbindung zu Ihnen durch den host-Namen (das ist der pod-name) und das schlägt fehl, es sei denn, ich update die hosts
Datei selbst. Ich möchte mit der integrierten DNS-Dienst für die.
Keine Anleitung, wie dies zu tun würde geschätzt.
Dank
Du musst angemeldet sein, um einen Kommentar abzugeben.
UPDATE
Laut der docs, das format ist jetzt:
_my-port-name._my-port-protocol.my-svc.my-namespace.svc.cluster.local
Finden Sie unter den verwandten doc hier:
https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pods
ORIGINAL ANTWORT:
als dieses Datum, das ist eigentlich nicht möglich... aber es wird angeschaut durch die Kubernetes-team.
Sehen dieses Problem : https://github.com/kubernetes/kubernetes/issues/13552
UPDATE:
DNS ist verfügbar für Hülsen da 09/2015
Sehen PR:https://github.com/kubernetes/kubernetes/pull/13759
kurz:
podIP
.... Leider ist UtterlyUseless™ (da die IP ist nie vorhersehbar) und UtterlyPointless™ (denn wenn Sie wissen, die IP, können Sie es direkt benutzen und müssen nicht Ein a-record).clusterIP: None
) - Dienst erstellt<pod-name>.<service-name>.<namespace>.svc.<cluster-suffix>
Einträge (plus die<service-name>.<namespace>.svc.<cluster-suffix>
als A-Datensätze für alle Endpunkte). Das heißt, ich brauche zwei Dienste für die StatefulSet. Dauerte zwar ein bisschen von Versuch und Irrtum herausfinden.Kubernetes statefulset support-Mitarbeiter einen service-Namen, und definieren pod dns-name durch den Namen des service.
Wie Ihre erstellen einer zk daemonset, und ein zk-service, dann den dns-Namen des zk daemonset erste pod ist zk-0.$(namespace).svc.cluster.lokale
mehr details finden Sie unter:
https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/
Wichtig: Der service muss werden "headless" für diese Arbeit, dass ist es
.spec.clusterIP
muss werdenNone
.