不使用HTTP / s的服务如何在Openshift 3.11或4.x中公开?
我认为路由仅支持HTTP / s流量。
我已经读过关于将外部IP配置用于服务的信息,但是与路由/入口相比,这会使集群的操作变得复杂且静态。
例如Nginx-ingress-controller允许它具有特殊配置:https://kubernetes.github.io/ingress-nginx/user-guide/exposing-tcp-udp-services/
Openshift 3.11或4.x有哪些选项?
谢谢。
答案 0 :(得分:2)
NodePort通过静态端口(30000〜32767)[0]在每个节点的IP上公开服务。 您可以通过请求:格式从群集外部与NodePort服务联系。
apiVersion: v1
kind: Service
metadata:
name: nodeport
spec:
type: NodePort
ports:
- name: "8080"
protocol: "TCP"
port: 8080
targetPort: 80
nodePort: 30000
selector:
labelName: targetname
答案 1 :(得分:2)
OpenShift官方文档中有一个名为Getting Traffic Into the Cluster的部分。
The recommendation, in order or preference, is:
- If you have HTTP/HTTPS, use a router.
- If you have a TLS-encrypted protocol other than HTTPS (for example, TLS with the SNI header), use a router.
- Otherwise, use a Load Balancer, an External IP, or a NodePort.