2015-09-18 58 views
1

如何使服务可以通过在kubernetes主服务器上运行的服务代理访问? 例如kube-ui或fluentd-elasticsearch的服务。可以访问的网址:http://[masterIP:post]/api/v1/proxy/namespaces/kube-system/services/kube-ui/如何使服务可以通过在kubernetes主服务器上运行的服务代理访问

我无法访问http://[masterIP:post]/api/v1/proxy/namespaces/test/services/myweb,当我在名为myweb的测试名称空间中创建服务时。

那么该怎么办?

回答

0

如果您尝试从群集中运行的群集访问群集,最好直接访问该服务。服务在集群内使用DNS提供。如果你的pod和服务位于同一个命名空间,你应该可以简单地使用它的名字来访问它,例如,在这种情况下在myweb。如果您的pod位于不同的命名空间中,则可以在pod-name.namespace处将它命中,例如,在这种情况下为myweb.test

如果您尝试从群集外访问它,则不需要执行与默认服务不同的任何操作。如果您无法以相同的方式访问它,则很可能您的服务没有任何支持它的Pod,或者这些Pod无法正常工作。您可以使用kubectl get endpoints myweb --namespace=test查看哪些吊舱支持您的服务。如果这是空的,那么你应该确保你已经安排了要实现该服务的豆荚,如果是这样,他们的标签是正确的。

您可能会发现documentation on services有用。

相关问题