下面是我对Azure的看法:
Resource group: 'microservice-1'
App Service: 'app-service-1'
Database: 'database-1'
Resource group: 'microservice-2'
App Service: 'app-service-2'
Database: 'database-2'
Resource group: 'shared-infrastructure'
Database: 'shared-database-1'这两个微服务都使用shared-database-1。每个微服务都包含ARM模板脚本,用于创建/更新部署微服务时使用的资源组。在ARM脚本中,我们可以定义依赖项(dependsOn),以便以正确的顺序更新资源,但这种工作只在资源组中进行。
下面是我想要运行的场景:
Azure中什么都没有,我想发布microservice-1。在Azure / ARM中是否有我可以使用的机制,以便shared-infrastructure发行版(ARM模板)在microservice-1之前运行
发布于 2016-11-10 11:27:42
不,除非你在你的手臂模板中特别包括了这个。DependOn只需检查资源是否存在,它就不会神奇地为您创建它。
但是,您可以将它包含在模板中,如果它存在,则不会执行任何操作,除非您指定了部署模式= complete。
因此,您可以创建3个模板:用于微服务-1、微服务-2和共享-基础设施。在您的微服务模板中,您可以包括创建共享基础设施的部署,如果它已经到位,它就不会这样做。
基于评论的编辑:
部署后,可以将同一订阅中的资源链接起来。使用ARM没有办法做到这一点,但是PowerShell + ARM可以这样做,您可以搜索现有的共享资源实例,如果不存在-用ARM模板创建它,然后调用另一个ARM模板来部署实际的服务。
https://stackoverflow.com/questions/40526379
复制相似问题