我已经设置了一个AKS集群,配置了一个POD来运行多个Tomcat服务。我的Apache web服务器位于AKS集群之外,托管在VM上,但位于同一子网中。Apache服务器使用ajp://10.x.x.x:5009/dbp_webui向Tomcat发送请求,该请求位于AKS集群内。我正在寻找关于如何公开Tomcat服务的选项,以便我的Apache能够成功地进行连接。
发布于 2021-10-26 14:56:49
你可以用入口暴露你的服务。在0.18.0版本中,它支持AJP协议。https://github.com/kubernetes/ingress-nginx/blob/main/Changelog.md#0180。入口介绍:https://kubernetes.io/docs/concepts/services-networking/ingress/
您可能需要设置额外的注释来描述后端协议:https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#backend-protocol
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: ingress-name
annotations:
nginx.ingress.kubernetes.io/backend-protocol: "AJP"
spec:
...正如评论中提到的@CSharpRocks,默认情况下AKS节点没有公共IP地址。这意味着更好的选择是使用LoadBalancer服务类型。https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer
它将部署一个LB,它将路由流量到Pod,不管它将驻留在女巫节点上。AFAIK与AKS有选择,安装内置的盒子,一个LB。
编辑
刮一下这个
更简单的方法:使用
NodePort类型服务:https://kubernetes.io/docs/concepts/services-networking/service/#nodeport
https://stackoverflow.com/questions/69725156
复制相似问题