文档首页/ 云商店/ 接入指南/ 商品接入相关接口/ 自动部署接入指南/ 最佳实践/ 如何通过一个模板在多个Region完成部署
更新时间:2024-07-05 GMT+08:00
分享

如何通过一个模板在多个Region完成部署

应用场景

本文介绍了在华为云云商店怎么实现一份自动部署模板支持多个Region,避免通过在模板中定义了一个Region变量,让客户在部署中选择两次不同的Region(一个是华为云Console所在的Region,一个是客户真实想要部署的Region),最终导致部署失败。

解决方案

去掉自动部署模板中的Region属性,当需要Region的时候动态查询当前Console所在的Region

操作步骤

  1. 去掉模板中的Region属性

    1. 检查模板中的所有resources,去掉region属性,如下图所示。在创建华为云资源的时候,如果不指定Region,将会使用provider级别的Region,更新信息可参考huaweicloud provider的文档

    2. 去掉provider.tf中的Region,最终providers.tf的配置如下:
      ①  // Configure the HuaweiCloud Provider
      ②  provider "huaweicloud" {}

  2. 动态获取当前Console所在region

    华为云的云服务大多是Region级的服务,在创建各种云服务的时候,可能会需要用到Region的地方,此时可以动态的获取Region,如下所示,后续所有需要用到Region的地方可直接引用local.region

    // 查询可用区
    data "huaweicloud_availability_zones" "az" {}
    locals {
        // 获取当前Console所在的Region
        region = data.huaweicloud_availability_zones.az.region
    }

相关文档