容器访问数据库方式?

1. 容器直接访问数据库,是开放容器node主机的IP和端口白名单。为了防止pod的漂移后也需要访问数据库,一般是开放整个业务集群所有node的IP 白名单。甚至,也需要开放master节点的数据库白名单。2. 经过Outbound路由,是pod直接访问数据库么?白名单怎么开,有什么不一样?...显示全部

1. 容器直接访问数据库,是开放容器node主机的IP和端口白名单。为了防止pod的漂移后也需要访问数据库,一般是开放整个业务集群所有node的IP 白名单。甚至,也需要开放master节点的数据库白名单。
2. 经过Outbound路由,是pod直接访问数据库么?白名单怎么开,有什么不一样?

收起
参与5

查看其它 1 个回答Garyy的回答

GaryyGaryy系统工程师某保险

大多数 Kubernetes 用户都有可能用到集群外部的服务。如果位于不同环境中的应用连接相同的外部端点,并且您不打算将外部服务引入 Kubernetes 集群,那么在代码中直接使用外部服务端点是完全可以的。然而,很多时候情况并非如此。数据库就是一个很好的例子。虽然一些云原生数据库(如 Cloud Firestore 或 Cloud Spanner)对所有访问均使用一个端点,但大多数数据库对不同实例都有单独的端点。
例如,一个常见场景是在集群外部托管自己的数据库,例如在 Google 计算引擎实例中。如果在 Kubernetes 内部和外部分别运行一些服务,或者需要在 Kubernetes 允许的基础上获得更多定制或控制,通常可采用上述这种方式。
希望未来某个时候您可以将所有服务都移入集群内,但在此之前将是“内外混用”的状态。你可以使用静态 Kubernetes 服务来缓解上述痛点。
一般情况下,是不推荐直接访问数据库的直接访问,可以通过endpoint的方式

保险 · 2020-09-09
浏览1086

回答者

Garyy
Garyy0410
系统工程师某保险
擅长领域: 云计算存储容器

Garyy 最近回答过的问题

回答状态

  • 发布时间:2020-09-09
  • 关注会员:2 人
  • 回答浏览:1086
  • X社区推广