Ich habe einen Kubernetes-Cluster (1.3.2) im GKE und ich möchte VMs und Dienste von meinem Google-Projekt verbinden, das das gleiche Netzwerk wie der Cluster hat.Deterministische Verbindung zur cloudinternen IP des K8S-Dienstes oder des ihm zugrunde liegenden Endpunkts?
Gibt es eine Möglichkeit für eine VM, die intern im Subnetz, aber nicht intern im Cluster selbst ist, sich mit dem Dienst zu verbinden, ohne die externe IP zu treffen?
Ich weiß, es gibt eine Menge Dinge, die Sie tun können, um eindeutig die IP und den Port von Diensten zu bestimmen, wie die ENVs und DNS ... aber das ClusterIP ist außerhalb des Clusters (offensichtlich) nicht erreichbar.
Gibt es etwas, das mir fehlt? Eine wichtige Komponente dazu ist, dass dies ein Dienst "öffentlich" für das Projekt sein soll, so dass ich nicht weiß, welche VMs im Projekt eine Verbindung mit dem Dienst herstellen wollen (diese könnte loadBalancerSourceRanges ausschließen). Ich verstehe den Endpunkt, den die Dienste tatsächlich umschlingen, ist die interne IP, die ich treffen kann, aber der einzige gute Weg, um zu dieser IP zu kommen, ist die Kube API oder kubectl, die beide keine idealen Möglichkeiten sind, meinen Dienst zu treffen.
Danke, CJ. Das zu googeln war aus irgendeinem Grund ziemlich schwierig :) – user1040625
Eigentlich gibt es eine Nachfolgefrage ... gibt es eine Garantie, dass Knoten 0 (der erste Knoten, der von k8s gesponnen wird) immer existiert, vorausgesetzt, dass Repliken immer auf 1 oder mehr gesetzt sind ? Ich kann die Notwendigkeit für einen Controller sehen, wenn das nicht der Fall ist. – user1040625
Ich glaube nicht, dass es eine Garantie gibt, welche Knoten verschwinden, wenn Sie Ihren Cluster verkleinern. Und ein Knoten könnte aus irgendeinem anderen Grund nicht mehr reagieren, also sind die zweite und dritte Option definitiv besser (aber mehr Arbeit). –