【问题标题】:Is it possible to connect pgsql running in Kubernetes cluster using clients like Dbeaver or SQLDeveloper outside of cluster?是否可以使用集群外的 Dbeaver 或 SQLDeveloper 等客户端连接在 Kubernetes 集群中运行的 pgsql?
【发布时间】:2021-10-12 10:36:09
【问题描述】:

我正在尝试从集群外部连接 dbeaver,但似乎我无法与 pgsql 建立连接,已尝试在 kubernetes 中进行端口转发,但仍然没有解决问题,只是指出我应该做的所有事情检查?

Edit1:kubernetes 在远程 ubuntu 机器中运行,并且 dbeaver 在我的机器中,它具有不同的 IP 地址? Kubernetes 没有在我的机器上运行。

【问题讨论】:

  • 是的。例如,我们可以使用端口转发到本地机器。如果它不起作用,这听起来像是配置错误。
  • 但是 kubernetes 没有在我的机器上运行,它是一个不同的 linux 机器,任何参考链接将不胜感激:)
  • 如果远程 ubuntu 机器可以暴露其他端口(SSH 除外),您可以使用 NodePort 服务(这对于开发环境来说是个好主意,但对于生产环境来说不是真的)。即使 ubuntu 机器只能公开 SSH,您也可以随时创建 NodePort 服务来公开您的 postgresql,然后将 Dbeaver 与 SSH 隧道连接。
  • 谢谢@AndD 我没试过 NodePort 会试试的。
  • 嗨@mar​​co525,有进展吗?

标签: postgresql kubernetes dbeaver


【解决方案1】:

是的,这是可能的。感谢@Turing85 和@AndD。

我的 postgres pod 正在 Kubernetes 集群中运行,例如(IP:192.168.0.1)。

  1. 登录集群并触发此命令:

    kubectl 获取服务

  2. 在命令下触发服务以将外部 ip 映射到我的服务后,我已将其暴露给集群运行的相同 ip。

    kubectl patch svc backend -p '{"spec":{"externalIPs":["192.168.0.1"]}}'

详细示例:Assign External IP to a Kubernetes Service

  1. 之后,只需在 dbeaver 中提供连接设置(ip、dbusername、dbname、passowrd、port)即可。

【讨论】:

    猜你喜欢
    • 2023-03-25
    • 2017-11-15
    • 1970-01-01
    • 1970-01-01
    • 2021-12-24
    • 1970-01-01
    • 2019-08-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多