大家好,我是本期的实验室研究员—贠乾。明天我将通过实例为大家解说如何装置Bicep,利用Bicep部署 Azure 资源。Bicep是一种用于申明式部署Azure资源的畛域特定语言。它有更清晰的语法,可能彻底简化编写体验。 接下来就让咱们一起在实验室开始摸索吧!

微软MVP实验室研究员

思路浅析

有用过 IAC 工具的同学们都晓得。在 Azure ARM 的 JSON 中必须在模板的相应局部申明所有参数、变量和输入,有肯定的限度。

本次试验,咱们能够利用 Azure Bicep 乖巧的部署Azure资源。它比 JSON 语法更简略,不须要写太多的参数设置。Bicep 是一种用于申明式部署Azure资源的畛域特定语言。它的指标是通过更清晰的语法、改良的类型安全性、以及对模块化和代码重用的更好反对,彻底简化编写体验。

Bicep 其实是对 ARM 模板的通明形象,Bicep 代码被解析成规范的 JSON 文件,它无效地将 ARM模板 视为一种两头语言(IL)。Bicep 不是编写应用程序的通用编程语言,而是申明Azure资源和资源属性的语言。简略来说,它是用来开发 Azure ARM 模板的。

大抵思路是这样的,首先咱们须要在开发环境中装置 Azure CLI 和 Biecp CLI。而后,应用VS Code 中的 Bicep 插件实现申明 Azure 资源的Biecp文件。最初,咱们利用 Azure CLI 与 Bicep 文件配合应用将资源部署到 Azure。

装置Bicep工具

(1)VS Code 编辑器装置 Bicep 插件

(2)装置 Bicep CLI

  1) 利用 Azure CLI 手动装置
az bicep install

2) 利用 Chocolatey 手动装置

choco install bicep

创立Bicep文件

在Bicep我的项目目录下创立后缀为 bicep 的 main 文件,这个时候会下载.NET runtime ,稍等片刻。

Azure资源的申明还是从最相熟的资源组开始,在 “main.bicep” 文件中中输出 “res-rg” ,并按Tab 补全代码。增加Scope作用域,如下图所示。

targetScope='subscription'resource rg 'Microsoft.Resources/resourceGroups@2021-04-01' = {  name: 'Web_Test_Bicep_RG'  location: 'EastAsia'  tags:{    'tag': 'create by bicep'     }}

以后代码中标记为红色的为自定义值。

点击图中箭头指向,能够以可视化的形式查看资源依赖关系。

预部属查看Bicep

在部署 Bicep 文件之前,能够预测行将产生的资源更改。此时咱们须要增加在CLI 命令中退出 what-if,不便咱们查看不同类型资源的更改。

az deployment sub  what-if --location "eastasia" --template-file "main.bicep"Image

部属Bicep

Bicep 能定义将资源部署到设定指标有 “资源组”,“订阅”,“治理组”,“租户”。

本文中演示是将 “Web_Test_Rg” 部署到 “订阅”。

az deployment sub create --confirm-with-what-if --location "eastasia" --template-file "main.bicep"


查看资源组部署情况,Azure 资源组部署胜利。

总结

本期试验,咱们学习了如何应用 Azure Bicep 预部署检测资源组,也为咱们在抉择基础设施即代码的解决方案上又减少了新的计划。

对于上述试验中波及到的各类技术和服务,大家能够通过下列链接进一步理解。

Azure Bicep 技术文档:

https://docs.microsoft.com/zh...

*Bicep 文档:

https://github.com/Azure/bicep


微软MVP我的项目介绍

微软最有价值专家是微软公司授予第三方技术专业人士的一个寰球奖项。28年来,世界各地的技术社区领导者,因其在线上和线下的技术社区中分享专业知识和教训而取得此奖项。

MVP是通过严格筛选的专家团队,他们代表着技术最精湛且最具智慧的人,是对社区投入极大的激情并乐于助人的专家。MVP致力于通过演讲、论坛问答、创立网站、撰写博客、分享视频、开源我的项目、组织会议等形式来帮忙别人,并最大水平地帮忙微软技术社区用户应用Microsoft技术。
更多详情请登录官方网站:
https://mvp.microsoft.com/zh-cn


扫码关注微软MSDN,获取更多微软一手技术信息和官网学习材料!