【问题标题】:Proper way to maintain azure resource manager template维护天蓝色资源管理器模板的正确方法
【发布时间】:2019-08-06 17:55:02
【问题描述】:

我有 arm 模板来重新创建包含资源及其设置的资源组。这很好用。

用例:

一些开发人员进入 Azure 门户并更新某些资源的一些设置。有没有办法获得可以应用于我的模板的确切更改以使这些更改生效? (更新源代码管理中的模板)

如果我转到资源组中的自动化脚本,我可以看到所有资源,但我在源代码管理中的模板不同(参数、条件、变量、链接在一起的多个模板......)。乍一看,我看不到做了哪些更改,也无法使用任何差异。

也许我完全错过了一些东西,但你是如何解决这个问题的?

谢谢。

【问题讨论】:

    标签: azure azure-resource-manager


    【解决方案1】:

    通过比较门户中的模板来查看资源的任何更改并不容易。最佳实践是始终使用 ARM 模板(和 CI/CD 管道)来部署 ARM 模板以供应资源。将这些 ARM 模板置于源代码管理之下以跟踪它们。

    除此之外,我认为您有两个主要选项来跟踪这些更改:

    1) 您可以使用Azure Activity Log 来跟踪更改。 Azure 活动日志是一个订阅日志,可让您深入了解 Azure 中发生的订阅级事件。这包括一系列数据,从 Azure 资源管理器操作数据到服务运行状况事件的更新。

    2) 针对管理平面 API 编写一些智能代码。一个好的起点是https://resources.azure.com/subscriptions。您可以编写一个小摘录,每天提取所有资源并将它们提交到 git 存储库。这只会更新模板的更改。然后,您可以在需要时或在需要时分析增量。

    【讨论】:

    • 感谢您的回答。第 2 点的有趣想法。无论如何,模板本身必须简单地手动维护,对吗?我的意思是简单的方法是开发人员在门户中修改某些内容时会简单地更新模板,但我真的很好奇是否有一些工具可以简化它。
    • 不是我知道的,当然也没有免费选项,可能在某些产品中。如果微软在门户中的模板引擎上多花点时间,并将其链接到 git/hub 或 DevOps Repos 并允许进行一些往返,那就太好了。
    • 感谢您的确认。
    【解决方案2】:

    从概念上讲,开发人员不应该“转到 [es] 到 Azure 门户并更新某些资源的某些设置”,除非是他自己的开发/单元测试工作。然后,他应该生成一个更新的 ARM 模板,用于在 TST 等环境中部署,并使用新模板记录他的单元测试更改。如果他的更新与您在 TST 的资源冲突,他可能会来找您解释他的更改,并讨论解决方案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多