由于每个集群必须至少有 3 台服务器的硬件要求,我想使用该硬件来支持多个分支/环境。具体来说,我们通常为一个应用程序同时运行 3 个 Dev 和 3 个 Test 分支,以支持多个并行开发项目。在我们发布到生产环境后,代码会合并回其他分支。
我知道我可以创建一个应用程序类型的多个实例,但我认为我真正需要的是在同一个集群上拥有一个应用程序类型的多个版本。很有可能同时在 A 和 B 分支中进行开发。我们希望测试两个分支并将其部署到 Dev Cluster。
同样,我想使用同一个集群来公开一个测试环境端点。因此,随着代码的提升,我可以部署应用程序的 TestB 版本,如果发生错误修复,这些将被修复并部署在该应用程序类型的 DevB 版本中。
为了处理 WebAPI 端点端口问题,我们计划让构建脚本选择环境特定的 WEBAPI 服务清单,因为它包含将 Service Fabric 应用程序公开给调用应用程序的端口号。因此,我将拥有一个 ServiceManifest-DevB.xml 文件,该文件被重命名为普通的旧 ServiceManifest.xml,并在 DevB 版本发布时打包。然后 ServiceManifest-TestB.xml 将执行相同的操作,但具有不同的端口。这里的另一个选择是 Tokenizer。
但是我正在努力解决如何在集群上运行相同应用程序类型的不同版本?我可以覆盖参数文件中的应用程序类型或类似的东西吗?我真的希望我不需要为此构建 6 个集群?那是一吨不会飞的硬件。
请提前帮助和感谢,格雷格