假设我有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,但其他用户/管理员不可行。
- 谢谢-谢谢
1条答案
按热度按时间jtjikinw1#
尝试使用域名www.example.com的通配符DNS条目example.com指向nginx-ingress控制器的IP地址。更新现有的Ingress配置以处理通配符子域路由。通过为每个Pod创建相应的Service,单独公开每个Pod。在Ingress配置中添加额外的规则,以将子域路由到特定的应用Pod。
请记住调整主机值并为您希望通过子域访问的每个Pod添加规则。更新DNS记录:更新您的DNS记录以包括必要的子域