关于nginx:ingressnginx-tcpudp转发

8次阅读

共计 865 个字符,预计需要花费 3 分钟才能阅读完成。

ingress-nginx 设置 tcp/udp 转发

第一步,更改 ingress-nginx 的 deployment 启动参数,增加 –tcp-services-configmap 和 –udp-services-configmap 参数,开启 tcp 与 udp 的反对

containers:
- args:
  - /nginx-ingress-controller
  - --tcp-services-configmap=$(POD_NAMESPACE)/tcp-services
  - --udp-services-configmap=$(POD_NAMESPACE)/udp-services

第二步,更改 ingress-nginx 的 service,申明 tcp 和 udp 用的端口号

  ports:
  - name: proxied-tcp
    nodePort: 30090
    port: 9000
    protocol: TCP
    targetPort: 9000
  - name: proxied-udp
    nodePort: 30091
    port: 9001
    protocol: UDP
    targetPort: 9001
  - name: nginx
    port: 9005
    protocol: TCP
    targetPort: 9005   

第三步,定义 configmap,格局为 <ingress-controller-svc-port>:”<namespace>/<service-name>:<port>”, 例如上面配置的 data 第一行示意将 default 命名空间下的 example-go 服务的 8080 端口映射到 ingress-controller service 的 9000 端口,即可通过 ingress-controller 的 service ip 加 9000 端口拜访到 example-go 服务

apiVersion: v1
kind: ConfigMap
metadata:
  name: tcp-services
  namespace: ingress-nginx
data:
  9000: "default/example-go:8080"
  9005: "default/nginx:80"
正文完
 0