OpenShift集群中的PostgreSQL服务能否通过暴露路由接收外部流量
Can PostgreSQL service in OpenShift cluster receive external traffic via exposed route
是否可以 运行 PostgreSQL 作为 OpenShift 集群内的一项服务并通过公开路由(推荐的从外部通信的默认方式)获取 external traffic 到它?
OpenShift 3.9 documentation 声明如下:
A router is configured to accept external requests and proxy them
based on the configured routes. This is limited to
HTTP/HTTPS(SNI)/TLS(SNI), which covers web applications.
PostgreSQL 可以使用 SSL,并且可以配置为侦听端口 443 (HTTPS),但我认为它 cannot 还支持 SNI。我只会 运行 服务后面的一个 pod,所以负载平衡应该不会造成问题。如果可行,我希望使用 psql -h ...
.
连接到集群和服务
我得出的(初步)结论是 OpenShift port forwarding (oc port-forward
) 提供了在这种情况下前进的最佳方式(好吧...:)。
您可以创建一个 LoadBalancer
服务,该服务将创建一个专用于您的 pods 的负载均衡器,并且此负载均衡器接受基于 TCP 的流量:https://docs.openshift.com/container-platform/3.9/admin_guide/tcp_ingress_external_ports.html#unique-external-ips-ingress-traffic-configure-service
所以像
oc expose dc postgres --type=LoadBalancer --name=postgres-lb
会给你一个可公开访问的 PostgreSQL 数据库
是否可以 运行 PostgreSQL 作为 OpenShift 集群内的一项服务并通过公开路由(推荐的从外部通信的默认方式)获取 external traffic 到它?
OpenShift 3.9 documentation 声明如下:
A router is configured to accept external requests and proxy them based on the configured routes. This is limited to HTTP/HTTPS(SNI)/TLS(SNI), which covers web applications.
PostgreSQL 可以使用 SSL,并且可以配置为侦听端口 443 (HTTPS),但我认为它 cannot 还支持 SNI。我只会 运行 服务后面的一个 pod,所以负载平衡应该不会造成问题。如果可行,我希望使用 psql -h ...
.
我得出的(初步)结论是 OpenShift port forwarding (oc port-forward
) 提供了在这种情况下前进的最佳方式(好吧...:)。
您可以创建一个 LoadBalancer
服务,该服务将创建一个专用于您的 pods 的负载均衡器,并且此负载均衡器接受基于 TCP 的流量:https://docs.openshift.com/container-platform/3.9/admin_guide/tcp_ingress_external_ports.html#unique-external-ips-ingress-traffic-configure-service
所以像
oc expose dc postgres --type=LoadBalancer --name=postgres-lb
会给你一个可公开访问的 PostgreSQL 数据库