微软在Azure支持Pulumi工具

微软现在让用户也可以使用Pulumi,在Azure上配置基础设施,Pulumi允许开发者使用像是Python等熟悉的程序语言,来编写配置基础设施的文件,微软表示,所有基础设施即程序代码(Infrastructure as Code,IaC)工具,能做的工作都一样,提供多样工具只是方便熟悉不同语言的人使用。

基础设施即程序代码让用户通过样板文件来定义基础设施,由样板中的配置来部署资源,而且因为基础设施即程序代码是以文本来定义基础设施,因此适用软件开发生命周期程序来管理基础设施,就如同管理程序代码一样。

微软已经提供Azure资源管理器(Azure Resource Manager,ARM)以及Terraform等工具,供用户定义Azure上的基础设施,而现在微软引入一个称为Pulumi的新工具,其特色是让用户可以用程序语言,来执行基础设施即程序代码工作。

基础设施即程序代码通常使用独立于语言之外的资料格式,像是JSON或YAML,Terraform则稍微特殊,使用领域特定语言(Domain Specific Language,DSL)以及Hashicorp配置语言(Hashicorp Configuration Language,HCL)来构建样板。

而Pulumi不需要开发者额外学习JSON、YAML或是DSL,可以直接使用熟悉的程序语言定义基础设施,这代表开发者也可以使用程序语言中的循环、变量、错误处理等标准功能。微软提到,这些功能也可以用其他工具完成,像是在Python中可用for循环来创建多个人信息源,而使用ARM则可以用复制功能达到相同的目的。

工具间并没有优劣,只是看用户习惯哪一种工具,云计算工程师可能较熟悉使用JSON或YAML,而开发人员习惯程序语言,就可以选择Pulumi。