Kubernetes-如何通过rest请求从pod中的web服务器访问服务

Kubernetes-如何通过rest请求从pod中的web服务器访问服务,kubernetes,Kubernetes,我正在寻找使用Kubernetes DNS从播客中重新获得播客。一切都在我的库伯内特斯星系群中 我想使用来自web应用的http请求调用另一个web应用 例如,我想从DashboardWebApp调用ProductWebApp 我找到了kubernetes rest api ➜ ~ kubectl exec-it仪表板-57f598dd76-54s2x-/bin/bash ➜ ~ curl-xget { 种类:地位,, 版本:v1, 元数据:{ },, 状态:失败, 消息:服务\产品应用\被

我正在寻找使用Kubernetes DNS从播客中重新获得播客。一切都在我的库伯内特斯星系群中

我想使用来自web应用的http请求调用另一个web应用

例如,我想从DashboardWebApp调用ProductWebApp

我找到了kubernetes rest api

➜ ~ kubectl exec-it仪表板-57f598dd76-54s2x-/bin/bash

➜ ~ curl-xget { 种类:地位,, 版本:v1, 元数据:{

},, 状态:失败, 消息:服务\产品应用\被禁止:用户\系统:匿名\无法在命名空间\staging\中获取服务/代理, 理由:禁止,, 详情:{ 名称:产品应用程序, 种类:服务 }, 代码:403 }%

我不明白为什么是街区

我也找到了这个网址 ➜ ~ curl-XGET product-app.staging.svc.cluster.local/api/product/5BF42B2CA5FC05061640DC6

但这也不管用

那么,从pod呼叫服务的好方法是什么呢?

当ProductWebApp和DashboardWebApp都在同一Kubernetes群集上运行时:

使用类型:ClusterIP Service为要调用ProductWebApp的应用定义所述的服务;使用服务名称作为要调用的URI配置调用应用程序DashboardWebApp

例如,假设ProductWebApp位于名为staging的命名空间中,为ProductWebApp部署定义名为product app的服务,然后配置仪表板WebApp以在此URI调用ProductWebApp:

http://product-app.staging.svc.cluster.local/end/point/as/needed
如果ProductWebApp端点需要http,请将其替换为https。请注意,服务名称可以与为其提供服务的部署的名称相同

当Kubernetes群集正在运行DNS服务,而大多数群集都在运行DNS服务时,此功能有效-请参阅此部分,特别是本节。

有关ProductWebApp和DashboardWebApp在同一Kubernetes群集上运行时的信息:

使用类型:ClusterIP Service为要调用ProductWebApp的应用定义所述的服务;使用服务名称作为要调用的URI配置调用应用程序DashboardWebApp

例如,假设ProductWebApp位于名为staging的命名空间中,为ProductWebApp部署定义名为product app的服务,然后配置仪表板WebApp以在此URI调用ProductWebApp:

http://product-app.staging.svc.cluster.local/end/point/as/needed
如果ProductWebApp端点需要http,请将其替换为https。请注意,服务名称可以与为其提供服务的部署的名称相同

当Kubernetes集群正在运行DNS服务时,这一点就起作用了,而大多数集群都在运行DNS服务——请参见本节,特别是本节