自动化 Azure 资源部署的行业标准方法



我最近开始自动部署所有 Azure 资源,并在公司构建开发环境时需要进行其他修改。我开始使用 Azure RM 模块的 .NET Core 版本在 Linux 上使用 Powershell。后来发现,用于与 Azure 交互的 cmdlet 中有一半存在于另一个模块 Azure 中。它还没有.NET Core版本。有关该问题的更多详细信息,请参阅我最近的另一篇文章。

我今天尝试在Windows上运行我的脚本,它爆炸得很可怕。可能是由于平台之间的一些奇怪的语法差异或其他原因。我还没有开始故障排除。但这让我思考Powershell是否是最好的解决方案。任何人都可以推荐替代方法吗?

最好是不太专有的东西,具有更好的跨平台支持。我认识到在StackOverflow上也有类似的问题。但它们涉及整个应用程序和 CI/CD 管道。我主要指的是底层资源组、安全规则等。但是,我也可能会利用此脚本来部署 k8s、couchbase 等。因此,也许整个设计更改是有序的。

朋友们,我期待着你们的见解。

我在 linux\windows 上使用 powershell 将资源部署到 Azure,没有太多麻烦。但是对于资源配置,我会使用 ARM 模板来自动化部署,因为它们几乎可以部署任何东西,当您扫描它们时很容易理解,它们只是一堆 json。

ARM模板可以插入ansible(我目前正在使用(和其他一些东西(如VSTS,Terraform等(

此外,Invoke-AzureRmResourceActionNewGetRemove-AzureRmResource在 Linux 和 Windows 上可用,可用于在 Azure 中执行几乎任何事情(但它们比本机 cmdlet 要棘手得多(。

最新更新