暴露 Pod 的 tomcat 端口



我有一个裸露的金属 kubernetes pod 在端口 8085 上运行 tomcat 应用程序。如果是普通服务器,则可以通过http://<server-ip>:8085/app访问该应用程序。我的目标是在 Kubernetes 节点的地址和与 tomcat 中使用的相同端口上公开 tomcat。

我能够使用节点端口服务公开和访问应用程序 - 但端口总是不同的不方便。 我尝试设置traefik入口:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: test-tag2
spec:
rules:
- host: kubernetes.example.com #in my conf I use node's domain name
http:
paths:
- path: /test
backend:
serviceName: test-tag2
servicePort: 8085

我可以在 Traefik 的仪表板中看到结果,但如果我导航到http://kubernetes.example.com/test/app我仍然一无所获。

我已经尝试了很多方法来配置它,但仍然没有运气。 真的可以通过这种方式暴露我的 pod 吗?

您是否尝试在服务 yaml 中指定节点端口值?如果指定,kubernetes 将在指定的 NodePort 上创建服务。如果 nodePort 不可用,kubernetes 不会创建该服务。

有关更多详细信息,请参阅此答案: https://stackoverflow.com/a/43944385/1237402

最新更新