我的azure SF应用程序有两个服务。将应用程序部署到本地群集时,是否可以只部署其中一项服务,而不是两种(服务)?控制Azure SF应用程序中的服务
回答
是的,你可以很明确地对此进行控制。
在你ApplicationManifest你增加了一些DefaultServices的,这些都是从添加到您的应用服务自动生成。当您从Visual Studio(或VSTS)进行部署时,您(隐式)使用自动添加到您的应用程序项目中的Deploy-FabricApplication.ps1
脚本。这个脚本同时做很多事情。即:
读取并分析发行人的个人资料文件,以获得所选择的目标
上传新的图片版本的集群形象店的参数值(例如云计算,Local1Node,Local2Node等)为ApplicationType使用新的版本号。
创建或升级基于新的图像和版本上的应用程序实例,并创建或ApplicationManifest升级实例每个DefaultService现在
,你可以做所有这些步骤你自己,特别是,您可以选择要为其启动实例的服务。
您可以使用该PowerShell (or CLI) cmdlets或使用FabricClient通过.NET代码。
你需要做的则是(对PowerShell的,但对于FabricClient类似)是:
- 连接到集群Connect-ServiceFabricCluster
- 复制应用程序包到集群Copy-ServiceFabricApplicationPackage
- 如果是新的 - 用Register-ServiceFabricApplicationType
- 注册应用程序类型 - 或 - 升级现有的Start-ServiceFabricApplicationUpgrade
- 对于每个服务要创建一个实例(是的,你可以创建同一个应用程序内的同一服务的多个实例,这是不一样的实例的StatelessService)使用New-ServiceFabricService
所有虽然这除了使用提供的Deploy-FabricApplication.ps1外,还有很多工作要做,它使您可以完全控制部署服务的方式和时间。例如,如果您想为同一群集上的同一应用程序运行多个租户,或者在同一群集上运行同一应用程序的多个版本/环境(例如,在同一群集上运行开发和测试),则也需要执行此操作簇)
将信息添加到您的问题感谢您的详细步骤和链接!所以,当涉及到创建实例时,我想知道在发布配置文件中是否可以保持服务的实例数等于“0”(使其他服务的实例数为1),以便不部署某个特定的服务,即使它存在于VS应用程序项目中。 – cherry
我不确定这是否会起作用,可能会有一个阻止它的检查,尽管我没有尝试过这种特定方法。然而,有一个检查可以防止你创建比实例更多的实例,所以可能会有一个这样的实例...你不能使用同样的方法来实现有状态的服务,但是你需要确定分区在部署时计算服务。您不应该在部署之后尝试更改它,因为这会更改现有分区中该服务的状态保持不变的方式。 – yoape
您也可以在没有默认服务的情况下部署应用程序,然后需要您在创建应用程序后明确创建服务。看看这个例子:https://azure.microsoft.com/en-us/resources/samples/service-fabric-dotnet-iot/ –
- 1. 控制入站流量到Azure的Web应用程序服务
- 2. REPL控制台应用程序服务
- 3. 监控Azure应用服务
- 4. ABCpdf .NET与Azure应用程序服务
- 5. windows服务控制器应用程序编程接口驱动程序服务
- 6. Azure应用程序网关与应用程序服务
- 7. Windows服务或控制台应用程序中的System.Timers.Timer
- 8. 控制台中的主机WCF服务应用程序
- 9. 从Vista中的另一个应用程序控制服务
- 10. 在Azure应用服务的另一个控制器中实例化控制器
- 11. 在控制台应用程序中使用WCF服务
- 12. 在控制台应用程序中使用wcf双工服务
- 13. Azure应用程序服务码头容器'服务不可用'
- 14. Azure应用程序服务计划(基本小)限制?
- 15. 由桌面应用程序控制的Windows服务应用程序?
- 16. 如何将Azure服务总线中继创建为Windows服务? (未作为控制台应用程序)
- 17. 使用Sql Azure在Azure应用程序服务上进行TransactionScope
- 18. 在服务结构中承载控制台应用程序
- 19. 用WPF应用程序控制的Windows服务
- 20. 如何在Azure应用程序服务上部署Windows服务
- 21. Azure服务结构中ASP.NET Core应用程序中的WebpackDevMiddleware
- 22. 在Windows服务器上预定的控制台应用程序
- 23. 来自iPhone的位置服务控制应用程序
- 24. MaxReceivedMessageSize在WCF的控制台应用程序托管服务
- 25. 在后台运行的服务或控制台应用程序?
- 26. Rails的API:让应用程序控制器服务JSON
- 27. SUBST和控制台应用程序与Windows的服务
- 28. 控制台应用程序通过Windows服务的好处
- 29. Azure中的Gradle Spring Boot Rest服务应用程序部署
- 30. 访问Azure的应用程序代理服务从SharePoint Online中
基本上,我想要动态地控制应与应用程序,如一个运行时参数的程序的东西被部署该服务。 – cherry
我建议您通过点击底部的编辑 –