【问题标题】:Kubernetes health check public accessKubernetes 健康检查公共访问
【发布时间】:2019-01-06 11:46:12
【问题描述】:
假设您有微服务并运行许多节点。每个节点都向互联网公开服务,并且它们还有内部使用的健康休息服务,但它们应该是私有的。
如何在 Kubernetes 中进行私有化健康检查?
Kubernetes Ingress Controller 是唯一的方法吗?
【问题讨论】:
标签:
kubernetes
google-kubernetes-engine
kubernetes-ingress
kubernetes-health-check
kubernetes-security
【解决方案1】:
此类问题取决于公共云和您创建集群的方式。
例如,在 Google 云中,每种服务类型的默认值都是 LoadBalancer,它会自动向互联网公开。
例如在 Azure 中,如果您不使用 acs-engine,并且当您创建服务时,服务类型的默认值为 ClusterIP(如果未配置为 LoadBalancer)。
请详细说明公共云提供商和Kubernetes集群创建方法。
【解决方案2】:
我自己解决了这个问题,想在这里分享一下。
正如我在问题上所说,可以在 Kubernetes Ingress 中将一些 url 限制为外部世界,以便它们仅在内部活动。
顺便说一下,我使用的是 Google Cloud,但它不应该是特定于云提供商的。