我想知道同一个Kubernetes集群中的多个荚是否能够访问使用Google云持久磁盘上的持久卷配置的数据库。
目前,我正在构建一个微服务架构的web应用程序,其中有3个节点apis在不同的豆荚,所有访问相同的数据库。那么,我如何用库伯内特斯来实现这一点呢?
请告诉我我的架构是否正确。
发布于 2018-12-31 09:06:16
当然,您可以将多个基于节点的应用程序荚连接到同一个数据库。有时有人说,微服务不应该共享数据库,但这取决于您的应用程序正在做什么,项目历史,以及您希望这些部分单独工作的程度。
关于大规模运行数据库,您必须回答一些问题,比如您将来的负载,以及如果要跨可用性区域,您是否想使用关系数据库。还有一些特定于kubernetes的内容,特别是关于如何将DB Pods与数据关联。见https://stackoverflow.com/a/53980021/9705485。另一个流行的选项是使用来自云提供程序的托管DB服务。如果您确实在k8s中运行数据库,那么我建议您查找一个舵机图表,或者查看一个操作符,比如kubeDB操作符,以避免自己制作kubernetes描述符,并获得关于运行DB和设置它的更多指导。
如果这是一个新项目,而且以前没有使用过k8s,那么您还必须决定在哪里托管代码、停靠文件映像和部署描述符,以及如何设置CI管道。如果您还没有得到这些问题的答案,那么我建议您看看Jenkins,因为它将为整个集群和CI设置提供开箱即用的默认值,并为构建节点应用程序提供一个模板(“building”),并通过管道将它们部署到暂存和prod环境中。
https://stackoverflow.com/questions/53978641
复制相似问题