我有一个包含以下图表的pod:
入口: 启用:true 注释: kubernetes.io/ingress.class:nginx // … 路径: - / api / myservice我的pod暴露api和另外一个/ …
将端点更改为指向您的API。 / api / myservice / my-api或使用app-root注释,指向/ api / myservice中的api:
nginx.ingress.kubernetes.io/app-root: /path/to/my/app/root/dir
更多细节在这里: https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#rewrite
如果你只是需要内部访问,我认为你不应该把它放入入口。你可以利用 DNS服务 已经和Kubernetes集群一起了。
如果您的prometheus服务运行与工作窗格相同的命名空间,则可以使用以下地址来访问它。
http://prometheus-svc-name
如果您的prometheus服务在不同的命名空间中运行,您可以使用:
http://prometheus-svc-name.prometheus-namespace.svc.cluster.local
访问该服务。
实现此目的的最佳方法是从入口删除prometheus端点,如果您知道prometheus支持使用服务上的注释进行自动发现,请将prometheus配置为k8s自动发现,然后在服务yaml文件中添加注释。 https://prometheus.io/docs/prometheus/latest/configuration/configuration/#kubernetes_sd_config