基于POD ID通过ingress动态访问kubernetes pod

hjqgdpho  于 2023-08-03  发布在  Kubernetes
关注(0)|答案(1)|浏览(147)

假设我有1个部署运行3个POD

$ kubectl get pods                                                                         
NAME                          READY   STATUS    RESTARTS      AGE
app-8f7f4678b-7fd4q           2/2     Running   0             7d16h
app-8f7f4678b-pgs86           2/2     Running   0             7d16h
app-8f7f4678b-wqgx4           2/2     Running   0             7d16h

字符串
应用程序可以通过nginx-inge访问app.example.com。此应用程序显示POD id,例如前端的7fd4q,每当访问应用程序时,它会在底部显示正在访问的POD。由于ingress被设置为粘性,一旦用户访问应用程序,他就会停留在上面。为了调试目的,也为应用程序特定的功能,如清理该高速缓存,我希望特定的POD可以从Web访问,例如app-8f7f4678b-7fd4q可以访问app-7fd4q.example.com。这种类型的动态代理可能吗?我知道我可以使用kubectl port-forward访问POD,但其他用户/管理员不可行。

  • 谢谢-谢谢
jtjikinw

jtjikinw1#

尝试使用域名www.example.com的通配符DNS条目example.com指向nginx-ingress控制器的IP地址。更新现有的Ingress配置以处理通配符子域路由。通过为每个Pod创建相应的Service,单独公开每个Pod。在Ingress配置中添加额外的规则,以将子域路由到特定的应用Pod。
请记住调整主机值并为您希望通过子域访问的每个Pod添加规则。更新DNS记录:更新您的DNS记录以包括必要的子域

相关问题