Một tùy chọn là đặt trước các dịch vụ của bạn bằng tài nguyên nhập (cân bằng tải) và đính kèm nó vào một IP tĩnh mà bạn đã đặt trước đó.
tôi đã không thể tìm thấy điều này ghi nhận ở một trong hai tài liệu Kubernetes hoặc GKE, nhưng tôi đã tìm thấy nó ở đây:
https://github.com/kelseyhightower/ingress-with-static-ip
Hãy nhớ rằng giá trị mà bạn đặt ra cho kubernetes.io/ingress.global-static-ip-name
chú thích là tên của tài nguyên IP được dành riêng và không phải chính IP. Trước khi có sẵn, bạn cần tạo IP toàn cầu, đính kèm nó vào bộ cân bằng tải GCE, trong đó có quy tắc chuyển tiếp toàn cầu nhắm mục tiêu tại các nút của cụm của bạn.
Tôi không tin rằng có một cách để làm cho công việc này tự động, hôm nay, nếu bạn không muốn trước dịch vụ của bạn với bộ cân bằng tải Ingress hoặc GCP k8. Điều đó nói rằng, Ingress là khá đơn giản, vì vậy tôi sẽ khuyên bạn nên đi con đường đó, nếu bạn có thể.
Ngoài ra còn có một dự án Kubernetes Incubator gọi là "bên ngoài-dns" trông như là một add-on hỗ trợ này hơn nói chung, và hoàn toàn từ bên trong cụm bản thân:
https://github.com/kubernetes-incubator/external-dns
Tôi có chưa thử cách tiếp cận đó, nhưng đề cập đến nó nghe như một cái gì đó bạn có thể muốn làm theo.