更新时间:2023-12-01 GMT+08:00
分享

开发自动部署模板

自动部署模板基于Terraform进行开发。Terraform是一个开源的自动化资源编排工具,使用Terraform管理云资源的流程如下图所示。在运行本示例之前,您需要先参考Terraform的快速入门完成Terraform的安装、配置,使用Terraform完成华为云VPC的创建。同时学习华为云资源编排服务RFS,掌握如何创建资源栈、创建执行计划、删除资源栈等。

Terraform支持使用配置文件描述单个应用或整个数据中心。通过Terraform您可以轻松的创建、管理、删除华为云资源,并对其进行版本控制。Terraform支持编排的华为云资源请参考:HuaweiCloud Provider

本篇Codelab所涉及的自动部署模板的源码位于code目录下,code的目录结构如下图所示。

其中modules下面包含了ecs、eip、evs、rds、elb、vpc等多个模块,分别提供了创建ECS、EIP、EVS、RDS、elb、VPC等云服务的相关功能,您可以根据您的实际业务使用。在solutions中目前四个解决方案级的模板,每个解决方案级模板的功能如下:

  • ecs-cluster-deployment, ECS集群化部署模板,其中包含了两个ECS、一个RDS、一个ELB和一个EIP。
  • ecs-fg-init-deployment,ECS和FunctionGraph的部署模板,在ECS创建完成之后,借助于FunctionGraph执行shell脚本。
  • single-node-ecs-deployment,新建VPC的ECS单节点部署,其中包含了一个ECS、一个RDS和一个EIP。
  • single-node-ecs-deployment-ExistingVPC,基于已有VPC和子网的ECS单节点部署,其中包含了一个ECS、一个RDS和一个EIP。

每个模板的组成包括:.extension、main.tf、outputs.tf、providers.tf、variables.tf和versions.tf,下面分别介绍各个文件的作用,详细的使用方法可参考每个解决方案级示例模板目录下的README.md。

  • .extension,RFS的扩展能力,用户帮助用户更好的配置参数,理解参数,更多信息可参考:Extension简介
  • main.tf,自动部署模板的执行入口,包含了创建云资源的具体代码逻辑。
  • outputs.tf,自动部署的输出信息,比如ECS的资源Id。
  • providers.tf,huaweicloud provider的配置信息,本地调测的时候,我们推荐您使用环境变量的方式配置ak和sk,不要在providers.tf文件中直接配置ak和sk。
  • variables.tf,部署模板中定义的变量,需要部署时手工输入,比如ECS实例的密码。
  • versions.tf,huaweicloud provider的版本,我们推荐您采用>=配置provider的版本号,比如version = ">= 1.56.0"。
分享:

    相关文档

    相关产品