问题是,我只能通过我的 ngnix Controller 路由 http 或 https 请求。
如何通过入口将非 HTTP 请求(例如数据库或 corba)发送到我的容器?
最佳答案
这没有通过入口机制得到很好的支持,并且是一个 open issue .
有一个使用 nginx-ingress 的 tcp 或 udp 流量解决方法,它将使用 configmap 将暴露的端口映射到 kubernetes 服务。
见 this doc .
使用 tcp-services-configmap
启动入口 Controller (和/或 udp-services-configmap
)参数。
args:
- "/nginx-ingress-controller"
- "--tcp-services-configmap=default/nginx-tcp-configmap"
- "--v=2"
部署配置映射:
apiVersion: v1
kind: ConfigMap
metadata:
name: nginx-tcp-configmap
data:
9000: "default/example-service:8080"
哪里
9000
是暴露的端口和 8080
是服务端口
关于Kubernetes:通过 Ingress 将非 HTTP 请求路由到容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49439899/