我一直在阅读有关 Spring Cloud Config 服务器的信息,以帮助我们迁移到云上的集中式配置服务器。目前,我们将配置和密码都存储在一个文件中,受限人员在生产环境中可以查看该文件。关于在实际生产中使用它支持的各种后端实现它,我有几个问题:
文件系统:如果我们使用文件系统作为云上配置的存储介质,我们将需要一个持久卷。在这种情况下,不同环境的 PV 会有所不同。当我们需要在 Prod 中使用新配置更新 PV 时,如何完成?(我只能想到让容器挂载 PV 并通过 bash 登录容器并添加/更新配置)。有不同的方法吗?
Git:如果我们有 git 作为存储介质,假设我们有不同的分支用于不同的环境,开发人员将能够查看 Prod 分支以及 Prod 分支中的密码。谷歌搜索建议没有办法限制在 Git 中查看某些分支。那么 Git 在这里有什么帮助呢?此外,与 Git 的连接需要密码/SSH 密钥,该密钥需要存储在 PV 中(然后 #1 的问题再次适用)
JDBC:如果我们有一个数据库作为存储介质,连接到数据库的密码需要在 SCCS 配置文件中指定——这又是不安全的。我们可以从文件系统中的文件加载它,但这意味着我们需要 PV 来存储密码(然后 #1 的问题再次适用)。此外,如何为生产完成配置的添加/更新?(如果使用RDBMS,我们需要连接一个客户端并运行SQL Inserts?)
保险柜:如果要使用保险柜,它也需要一个密钥/密码来存储在 PV 中(以及 #1 的问题)
总的来说,我不确定如何在实际的生产环境中使用 SCCS。如果有人实施了 SCCS for Production 并且他们的配置有密码,你能分享一些见解吗?
谢谢,
米顿