gpt4 book ai didi

postgresql - 在 Kubernetes 集群中使用 pgAdmin 访问数据库

转载 作者:行者123 更新时间:2023-12-02 12:02:18 28 4
gpt4 key购买 nike

在我当前的非 Kubernetes 环境中,如果我需要访问 Postgres 数据库,我只需设置一个 SSH 隧道:
ssh -L 5432:localhost:5432 user@domain.com
我试图弄清楚如何在我在 EKS 中设置的测试 Kubernetes 集群中做类似的事情,这不会带来很大的安全风险。例如,在入口控制中创建到数据库端口的路径是一个糟糕的主意。

集群将设置在 Postgres 位于 pod 中的位置,但所有数据都在持久卷声明中,因此当 pod 被销毁时数据仍然存在。

在这种设置中如何使用 pgAdmin 访问数据库?

最佳答案

kubectl命令可以forward TCP ports通过 kube-api 进入 POD

kubectl port-forward {postgres-pod-ID} 5432:5432

如果您不使用 cluster-admin 用户,则该用户需要绑定(bind)到一个允许其 create 的角色。 pods/portforward在 pods 命名空间中。
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: pg-portforward
rules:
- apiGroups: [""]
resources: ["pods/portforward"]
verbs: ["create"]

关于postgresql - 在 Kubernetes 集群中使用 pgAdmin 访问数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59796161/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com