我正在处理新项目的基础架构。它是标准的Laravel堆栈= PHP,SQL Server和Nginx。对于PHP + Nginx,我们使用的是Kubernetes集群-因此,扩展和蓝色/绿色部署都得到了解决。
关于数据库,我有点不确定。我们不想将Kubernetes用于SQL,因此当前的想法是使用Google Cloud SQL托管服务(竞争对手是否更青睐SQL的蓝色/绿色部署?)。问题是它可以在新旧版本的数据库节点之间同步数据吗?
假设我们有3个活动Pod和至少2个活动数据库节点(和负载平衡器)。
因此,标准部署应如下所示:
它应该继续进行此迭代,直到替换所有Pod和Database节点为止。
问题是这可以与数据库一起使用吗?想象一下,网站上有一个用户正在使用最后一个OLD数据库节点写入一些数据,当切换到NEW数据库节点时,直到升级最后一个数据库节点后,数据才存在。它们可以在后台同步吗? Google Cloud SQL托管服务是否提供该服务?
或者有完全不同且更好的解决方案吗?
谢谢!