Gab*_*vay 9 load-balancing google-cloud-platform kubernetes google-kubernetes-engine
我想避免使用type: "LoadBalancer"某个Kubernetes服务,但仍然可以在Internet上发布它.我正在使用Google Cloud Platform(GCP)来运行当前在单个节点上运行的Kubernetes集群.
我尝试了我们的externalIPs服务配置并轮流给出以下IP:
kubernetes describe node)LoadBalancer同一节点上运行的另一个类型的Kubernetes服务的公共/外部IP .以上都没有帮助我使用带有externalIPs配置的Kubernetes服务来访问我的应用程序.
那么,如何在不使用LoadBalancer-type Kubernetes服务的情况下在Internet上发布服务.
如果您不想使用LoadBalancer服务,则公开公开服务的其他选项包括:
NodePort使用typeset to 创建服务NodePort,Kubernetes将在您的服务将公开的所有节点VM上分配一个端口(docs).例如,如果你有2个节点,W /公网IP 12.34.56.78和23.45.67.89和Kubernetes分配您的服务端口31234,那么该服务将公开两个12.34.56.78:31234&23.45.67.89:31234
externalIPs如果您能够将公共IP路由到您的节点,您可以externalIPs在您的服务中指定告诉Kubernetes"如果您发现某些内容已发送到具有我的服务端口的IP,请将其发送给我." (docs)
群集端点不适用于此,因为这只是Kubernetes主服务器的IP.另一个LoadBalancer服务的公共IP 将不起作用,因为LoadBalancer仅配置为路由该原始服务的端口.我希望节点IP可以正常工作,但如果您的服务端口是特权端口,则可能会发生冲突.
/proxy/端点Kubernetes API包含一个/proxy/端点,允许您访问群集端点IP上的服务.例如,如果您的群集端点是1.2.3.4,则可以通过使用群集凭据访问my-service命名空间.这应该只用于测试/调试,因为它在通往服务的途中通过你的Kubernetes主站的所有流量(额外的跳,SPOF等).my-nshttps://1.2.3.4/api/v1/proxy/namespaces/my-ns/services/my-service
| 归档时间: |
|
| 查看次数: |
2445 次 |
| 最近记录: |