CLI+Terraform简化资源管理的模板编写

本文涉及的产品
云服务器 ECS,每月免费额度200元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: Terraform是一个比较强大的自动化资源编排管理工具,通过模板描述资源,通过apply命令创建/更新资源。详细的使用方法及特性可以参见公众号中关于Terraform的其他文章了解。本文将主要讲解如何利用CLI+Terraform简化模板的编写。

Terraform是一个比较强大的自动化资源编排管理工具,通过模板描述资源,通过apply命令创建/更新资源。详细的使用方法及特性可以参见公众号中关于Terraform的其他文章了解。本文将主要讲解如何利用CLI+Terraform简化模板的编写。

Terraform的模板由几大结构组成:资源(resource)、变量(variable)、输出(output),他还有一个很重量级的结构:数据源(data)。数据源是用来过滤资源中parameter的可选项的,举个例子,ECS的实例类型(instance_type)有90多个选项,我们希望能够根据一些条件过滤这些选项,这时便可以利用data的特性,描述需要ECS的规格(几核 几G 哪个系列),data结果中将会返回符合过滤条件的列表,在resource中直接指定数据源为此data即可。data结构的例子如下:

data "alicloud_instance_types" "4c8g" {
    instance_type_family= "ecs.s3"
    cpu_core_count = 4
    memory_size = 8
}

在resource中引用:

instance_type = "${data. alicloud_instance_types. 4c8g.0.id}"

除实例类型(instance_type)外,ECS的datasource还提供了镜像(images)、地域(regions)、可用区(zones)的数据过滤,详细文档可参见 https://www.terraform.io/docs/providers/alicloud/index.html,或 data_source_alicloud_instance_types_test.go 其中含有示例代码。

datasource在Terraform模板编写时为参数获取提供了便利,如果再加上CLI,使用会更便捷,在上面的模板例子中可以通过CLI方便的看到ECS的系列(instance_type_family)数据,当然也可以看到实例类例、镜像、地域、可用区等数据,将其值放在模板中,将大量简化我们模板编写时对参数可选值的获取。

CLI的安装及使用

  • CLI安装: sudo pip install aliyuncli
  • ecs调用包安装: sudo pip install aliyun-python-sdk-ecs
  • 配置: aliyuncli configure,按提示输入AK、region、output format(建议table)
  • 执行aliyuncli ecs 将能够看到支持的命令,以上面的例子为例输入aliyuncli ecs DescribeInstanceTypeFamilies 将能够看到返回的系列列表,如下图:

cli_instancefamily

更多Terraform的模板请参考https://github.com/alibaba/terraform-provider/tree/master/terraform/examples,有问题可以在issue中提问。欢迎大家关注我们的开源自动化运维工具集:https://github.com/alibaba/opstools/

目录
相关文章
|
云安全 弹性计算 负载均衡
Terraform云资源管理
本方案适合Terraform的迁移用户或准备使用Terraform的用户,可以帮助客户在阿里云安全、高效地预配和管理云基础产品。用户在正式使用前,对Terraform模块与实际使用模块的基本验证,用于对管理和维护IT资源的日常操作的验证。
679 0
Terraform云资源管理
|
云安全 弹性计算 负载均衡
Terraform云资源管理
本方案适合Terraform的迁移用户或准备使用Terraform的用户,可以帮助客户在阿里云安全、高效地预配和管理云基础产品。用户在正式使用前,对Terraform模块与实际使用模块的基本验证,用于对管理和维护IT资源的日常操作的验证。
Terraform云资源管理
|
11月前
|
存储 程序员 编译器
【Effective C++详细总结】第三章 资源管理
【Effective C++详细总结】第三章 资源管理
233 0

热门文章

最新文章

推荐镜像

更多