Kann mir jemand sagen, wie Sie dieses Problem am besten und elegantesten gelöst haben? Es gibt einen Kubernetes-Cluster mit einigen Bereitstellungen. Einige Clients müssen unsere IPs zu ihrer Whitelist hinzufügen, damit Anwendungen Anfragen stellen können. Aufgrund der Skalierbarkeit des Clusters ist es notwendig, neue IPs von unseren neuen Knoten für die Whitelist an Clients weiterzugeben oder Anwendungen auf denselben Knoten bereitzustellen.
Die Lösung ist nicht optimal, daher benötigen Sie feste IPs. Machen Sie sie entweder statisch oder so, dass sie über ein Gateway ausgehen.
Die Kubernetes-Installation ist beim Netzwerkanbieter Flannel Standard. Dieser Anbieter verfügt nicht über diese Funktion.
- Eine solche Eigenschaft besitzt beispielsweise Kaliko.https://projectcalico.docs.tigera.io/networking/use-specific-ip
- Ich habe auch dieses Projekt gefunden:https://github.com/nirmata/kube-static-egress-ip- hat es jemand benutzt?
Was sind Ihre Vorschläge?
Wenn es hilft, dann ist unser Hosting bei Hetzner.
Danke!
Antwort1
Die eleganteste Lösung dürfte wohl Antrea seinhttps://antrea.io/docs/v1.3.0/docs/egress/das CNI, das z. B. von VMWare Tanzu und anderen verwendet wird. Mit Antrea können Sie einen EgressIPPool definieren und das CNI verwaltet den Pool automatisch und stellt HA-Funktionen zwischen Kubernetes-Knoten bereit. Sie legen ein Label für die Pods fest, die eine statische ausgehende Adresse verwenden müssen, und fertig.
Calico hat eine ähnliche Funktion, aber das Egress Gateway ist eine kostenpflichtige Option, sodass Sie auf die Verwendung eines IP-Pools und die Zuweisung von IP-Blöcken zu K8s-Knoten sowie die Kennzeichnung bestimmter Pods beschränkt sind, damit diese diese IPs verwenden. Wie Sie sich denken können, können diese IP-Pools in einer großen Clusterumgebung sehr schnell erschöpft sein. Außerdem hatte ich L2-Routing-Probleme (Pods konnten nicht von Adressen innerhalb desselben VLANs erreicht werden), aber das liegt wahrscheinlich an einem Konfigurationsfehler meinerseits.
Ich habe auch versucht, Cillium zu installieren, und es ist wirklich fortschrittlich und effizient, aber für das Egress Gateway unterstützt es nur eine einzelne IP auf einem Knoten (die manuell auf der Schnittstelle des Knotens konfiguriert werden muss) ohne HA-Funktionen.
Wenn keine CNI-Migration möglich ist, Ihre letzte Ressource