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

背景1

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

复制代码
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
  name: test.com
  namespace: rcs-netswitch-prod
spec:
  defaultBackend:
    service:
      name: rcs-netswitch-prod
      port:
        number: 9200
  ingressClassName: nginx
  rules:
    - host: test.com
      http:
        paths:
          - backend:
              service:
                name: rcs-netswitch-prod
                port:
                  number: 9200
            path: /
            pathType: Prefix
  tls:
    - hosts:
        - test.com
      secretName: 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-tcp
  namespace: ingress-nginx

格式:"端口": 命名空间/服务:端口

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

复制代码
          ports:
            - containerPort: 80
              hostPort: 80
              name: http
              protocol: TCP
            - containerPort: 443
              hostPort: 443
              name: https
              protocol: TCP

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

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

相关推荐
wuxinyan1233 小时前
Java面试题47:一文深入了解Nginx
java·nginx·面试题
小敬爱吃饭4 小时前
Ragflow Docker部署及问题解决方案(界面为Welcome to nginx,ragflow上传文件失败,Docker中的ragflow-cpu-1一直重启)
人工智能·python·nginx·docker·语言模型·容器·数据挖掘
codeejun5 小时前
每日一Go-44、Go网络栈深度拆解--从 TCP 到 HTTP 的资源复用艺术
网络·tcp/ip·golang
上海云盾-小余7 小时前
精准抵御流量攻击:高防 IP + 游戏盾组合部署实战详解
网络·tcp/ip·游戏
okiseethenwhat7 小时前
TCP拥塞控制算法原理详解
tcp/ip
江畔何人初7 小时前
TCP的三次握手与四次挥手
linux·服务器·网络·网络协议·tcp/ip
m0_738120727 小时前
网络安全编程——Python编写基于UDP的主机发现工具(解码IP header)
python·网络协议·tcp/ip·安全·web安全·udp
龙卷风卷云8 小时前
【BUG】Nginx使用upstream后端接口报 400
运维·nginx·bug
有代理ip8 小时前
动态IP的安全性优化:策略升级与隐私保护实战指南
网络·网络协议·tcp/ip
CDN3608 小时前
高防 IP 回源 502/504 异常?源站放行与健康检查修复
网络·网络协议·tcp/ip