欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > IT业 > Nginx-Ingress-Controller自定义端口实现TCP/UDP转发

Nginx-Ingress-Controller自定义端口实现TCP/UDP转发

2025/6/25 17:58:55 来源:https://blog.csdn.net/weixin_44923842/article/details/148782471  浏览:    关键词:Nginx-Ingress-Controller自定义端口实现TCP/UDP转发

背景1

使用deployment部署一个http服务,配合使用ingress+tls的解析在ingress终止。

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:annotations:name: test.comnamespace: rcs-netswitch-prod
spec:defaultBackend:service:name: rcs-netswitch-prodport:number: 9200ingressClassName: nginxrules:- host: test.comhttp:paths:- backend:service:name: rcs-netswitch-prodport:number: 9200path: /pathType: Prefixtls:- hosts:- test.comsecretName: test.com

访问https://test.com:443结果请求正常。
去除tls部分的配置http://test.com:80也正常

背景2

使用deployment部署一个http服务,配合使用ingress+tls的解析在ingress终止,使用非443和80端口配置

需要在nginx-ingress-controller开启tcp/udp支持。启动参数确保有–tcp-services-configmap=xxx,如果没有,手动添加

- '--tcp-services-configmap=$(POD_NAMESPACE)/nginx-ingress-tcp'

二、添加对应configmap nginx-ingress-tcp
 

apiVersion: v1
data:"9200": test-devops/nacos-headless:9200
kind: ConfigMap
metadata:name: nginx-ingress-tcpnamespace: ingress-nginx

格式:“端口”: 命名空间/服务:端口
前面的端口是nginx-ingress-controller监听端口,会转发到命名空间下的服务:端口

          ports:- containerPort: 80hostPort: 80name: httpprotocol: TCP- containerPort: 443hostPort: 443name: httpsprotocol: TCP

 这里是通过hostPort方式映射的端口,也可以在service中使用loadBalance、nodePort方式暴露端口,nodePort方式还需要添加LB转发

                     

参考链接:https://blog.csdn.net/biyanjiangdu04942/article/details/145324374

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词