如何解决在 openshift 上使用 nginx 入口控制器操作符公开 TCP 服务
我们使用来自 openshift 市场的认证操作员在 openshift 上安装了 Nginx 入口控制器。我们正在尝试公开 TCP 服务并尝试遵循以下文档。
https://kubernetes.github.io/ingress-nginx/user-guide/exposing-tcp-udp-services/
但是标志 --tcp-services-configmap 无法添加它来部署 Nginx 入口控制器,当我将它添加到部署时,它不会持久化,因为部署是由 Nginx 入口控制器操作员控制的。我没有找到在 Nginx 入口控制器中添加标志 --tcp-services-configmap 的选项,有没有其他方法可以将此标志添加到 Nginx 入口控制器? 或者任何其他方式使用使用 operator 安装的 Nginx 入口控制器公开 TCP 服务。
任何输入将不胜感激。
解决方法
对于基于操作员的 nginx 入口控制器通过 TCP 公开应用程序,下面的链接将有助于公开应用程序。
https://docs.nginx.com/nginx-ingress-controller/configuration/transportserver-resource/
1.修改nginx入口控制器服务允许2222端口
2.创建全局配置。 示例: globalconfiguration.yaml
apiVersion: k8s.nginx.org/v1alpha1
kind: GlobalConfiguration
metadata:
name: nginx-ingress-config
namespace: kube-system
spec:
listeners:
- name: ssh-tcp
port: 2222
protocol: TCP
3.创建传输服务器 示例: transportserver-ssh-tcp.yaml
apiVersion: k8s.nginx.org/v1alpha1
kind: TransportServer
metadata:
name: ssh-tcp
spec:
listener:
name: ssh-tcp
protocol: TCP
upstreams:
- name: ssh-app
service: ssh-server
port: 22
action:
pass: ssh-app
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。