创建 Azure ALM 友好的开发和部署环境的首选做法是什么?

What is the Preferred Practice to Create an Azure ALM-Friendly Development and Deployment Environment?

我终于加入了 Azure 开发团队,我对创建开发和部署环境的首选做法有疑问。

首先,我正在学习 Azure Key Vault,它提供了我的核心问题的完美示例场景。

在我的开发(和 ALM)过程中,我通常有:

对于每个环境,我通常有一个 App.config 或 Web.config,每个环境都有 XDT environment transforms,运行,并在每个环境的环境设置中放置我的应用程序使用的外部资源。

现在,我确实看到了 this question, but it is a few years old, so I wanted to revisit it as there seems to have been a lot of work done in particular with the new Azure Resource Manager and the Azure Management API that seems to have replaced Azure Service Management model

对于 Azure Key Vault,我正在考虑创建 4 个资源组(开发、测试、暂存、生产)并在每个组中创建一个 Azure Key Vault 实例。

我的问题是:

  1. 这是查看 Azure 资源组的正确方法吗?
  2. 我应该从我的本地开发环境连接到存储在我创建的开发 Azure 资源组中的资源,还是有其他首选的本地开发机制? (例如,我应该考虑使用其他模拟器,例如 Azure Storage Emulator 吗?)
  3. 是否有比我提供的方法更适合处理我的环境的方法?

提前感谢您的帮助和澄清!

恕我直言(..我不能假装自己是专家),

  1. 是的,每个环境一个资源组听起来很合理。但是,您可能也想考虑单独的订阅(或仅用于生产的单独订阅),因为 AAD(我假设您将其用于 Key Vault)之类的东西超出了资源组的范围。您可能不希望您的开发应用意外访问生产密钥库。
  2. 这实际上取决于您要构建的内容,但如果没有真正需要区分本地和云开发环境,那么我会说只有 1 个环境。
  3. 见上文:)