【发布时间】:2017-10-16 08:22:40
【问题描述】:
我有一个在 GKE 的 Kubernetes 中运行的 Django 应用程序。那个 django 应用程序连接到一个静态(非容器化)postgresql 服务器。由于它们都位于一个区域中,我的 django 应用程序使用内部 IP 连接到数据库。
我只希望我的 django 应用程序请求与 postgresql 数据库的连接,并拒绝来自其他 IP 的请求的连接。
为此,我在pg_hba.conf 中这样做了:
host all all 14.133.0.0/24 md5
因为所有内部 IP 都以 14.133 开头。但是,请求来自 pod IP,因此连接请求被拒绝。
Pod IP 的示例可以是14.4.123.32。因此,如果我在pg_hba.conf 中执行以下操作,问题将得到解决:
host all all 14.0.0.0/8 md5
另外需要注意的是 Pod IP 总是在变化。因此,一旦更新 pod,此解决方案就会中断。
解决此问题的最佳做法是什么?
【问题讨论】:
标签: django postgresql docker kubernetes google-kubernetes-engine