资源编排服务ROS(Resource Orchestration Service)为Terraform提供了托管的能力,本文为您介绍Terraform对ROS功能和资源的支持情况。

ROS版本支持情况

ROS当前支持的Terraform版本和Provider版本如下表所示。

Terraform版本 Provider版本
0.12.28
  • alicloud:1.121.2
  • aws:3.37.0
  • azurerm:2.56.0
  • random:3.1.0
  • template:2.2.0
  • time:0.7.0
0.15.3
  • alicloud:1.123.0
  • aws:3.42.0
  • azurerm:2.59.0
  • random:3.1.0
  • template:2.2.0
  • time:0.7.1
1.0.11
  • alicloud:1.139.0~1.176.0
  • aws:3.63.0~4.22.0
  • azurerm:2.81.0~3.14.0
  • random:3.1.0~3.3.2
  • template:2.2.0
  • time:0.7.2
  • fortios:1.13.2~1.14.1
  • fortimanager:1.3.4~1.5.0
  • helm:2.3.0~2.6.0
  • kubernetes:2.6.1~2.12.1
1.1.9
  • alicloud:1.139.0~1.176.0
  • aws:3.63.0~4.22.0
  • azurerm:2.81.0~3.14.0
  • random:3.1.0~3.3.2
  • template:2.2.0
  • time:0.7.2
  • fortios:1.13.2~1.14.1
  • fortimanager:1.3.4~1.5.0
  • helm:2.3.0~2.6.0
  • kubernetes:2.6.1~2.12.1
说明 ROS会持续更新支持的Terraform版本和Provider版本。您可以调用GetFeatureDetails接口,获取支持的Terraform版本列表。

ROS功能支持情况

功能 支持的功能 不支持的功能
资源栈
  • 预览、创建、更新、删除和查询资源栈。
  • 查询资源、事件(包括资源栈和资源)、输出和模板。
  • 通过资源栈创建资源时,为资源栈中的部分资源添加系统标签acs:ros:stackId。关于资源的更多信息,请参见ROS资源支持情况章节的支持系统标签的资源列表。
  • 通过资源栈创建或更新资源时,向资源栈中的部分资源传递资源栈的用户标签。关于资源的更多信息,请参见ROS资源支持情况章节的支持传递资源栈用户标签的资源列表。
  • 通过资源栈创建或更新资源时,向资源栈中的部分资源传递资源栈所属的资源组。关于资源的更多信息,请参见ROS资源支持情况章节的支持传递资源栈所属资源组的资源列表。
  • 设置超时时间(10~120分钟)、设置参数和输出、失败继续创建、状态通知、删除保护、删除资源栈时保留所有资源、删除资源栈时保留部分资源、设置RAM角色、管理标签和管理资源组。
  • 管理更改集。
  • 偏差检测。
  • 资源导入。
失败回滚、资源栈策略、替换更新、取消更新、偏差纠正、信号通知和风险检查等。
资源栈组
  • 创建、更新、删除、查询资源栈组。
  • 创建、更新、删除、查询资源栈实例,查询、停止资源栈操作。
  • 管理标签和管理资源组。
  • 偏差检测。
无。
模板
  • 创建、更新、删除、查询、共享和校验模板。
  • 对模板中涉及的收费资源进行询价。关于资源的更多信息,请参见ROS资源支持情况章节的支持询价的资源列表。
  • 管理标签和管理资源组。
生成模板的RAM策略、查询模板参数取值。
其他
  • STS(Security Token Service)。
  • 查询服务开通状态和服务角色信息。
  • 查询功能详情。
查询资源类型。

ROS API支持情况

功能 支持的API
资源栈 PreviewStack、CreateStack、ContinueCreateStack、UpdateStack、DeleteStack、GetStack、ListStacks、ListStackResources、GetStackResource、ListStackEvents和SetDeletionProtection。
说明 GetStack和ListStacks中StackType取值为Terraform时,说明资源栈类型是Terraform。
更改集&资源导入 CreateChangeSet、ExecuteChangeSet、DeleteChangeSet、GetChangeSet和ListChangeSets。
偏差检测 DetectStackDrift、DetectStackGroupDrift、GetStackDriftDetectionStatus和ListStackResourceDrifts。
说明 不支持使用DetectStackResourceDrift对单个资源进行同步的偏差检测。
资源栈组 CreateStackGroup、UpdateStackGroup、DeleteStackGroup、GetStackGroup、ListStackGroups、CreateStackInstances、UpdateStackInstances、DeleteStackInstances、GetStackInstance、ListStackInstances、StopStackGroupOperation、GetStackGroupOperation、ListStackGroupOperations和ListStackGroupOperationResults。
模板 CreateTemplate、UpdateTemplate、DeleteTemplate、GetTemplate、ListTemplates、ListTemplateVersions、SetTemplatePermission、ValidateTemplate、GetTemplateEstimateCost和GetTemplateSummary。
标签 TagResources、UntagResources、ListTagKeys、ListTagValues和ListTagResources。
资源组 MoveResourceGroup。
其他 GetServiceProvisions、GetFeatureDetails。

ROS资源支持情况

在ROS中,Terraform支持的主流云厂商资源如下:

  • 阿里云资源
    说明
    • 支持Terraform在线调试工具
    • ROS提供了一个默认的Provider,使用当前账号的临时AccessKey(或STS凭证)以及资源栈所属的地域ID。

    其中,部分资源支持询价、系统标签、传递资源栈用户标签和传递资源栈所属资源组,具体如下:

    说明 您可以调用GetFeatureDetails接口,获取支持询价、系统标签、传递资源栈用户标签和传递资源栈所属资源组的资源类型列表。
    • 支持询价的资源
      云服务 支持询价的资源
      ECS alicloud_instance、alicloud_ecs_disk、alicloud_disk和alicloud_ecs_dedicated_host。
      VPC alicloud_eip_address、alicloud_eip、alicloud_common_bandwidth_package、alicloud_nat_gateway和alicloud_vpn_gateway。
      SLB alicloud_slb_load_balancer和alicloud_slb。
      RDS alicloud_db_instance和alicloud_db_readonly_instance。
      Redis alicloud_kvstore_instance。
      PolarDB alicloud_polardb_cluster。
      MongoDB alicloud_mongodb_instance。
      CEN alicloud_cen_bandwidth_package。
      MarketPlace alicloud_market_order。
      PolarDB-X alicloud_drds_instance。
      ECI alicloud_eci_container_group。
      EMR alicloud_emr_cluster。
      Elasticsearch alicloud_elasticsearch_instance。
      SAE alicloud_sae_application。
      GPDB alicloud_gpdb_elastic_instance和alicloud_gpdb_instance。
    • 支持系统标签的资源
      云服务 支持系统标签的资源
      ECS alicloud_instance、alicloud_ecs_disk、alicloud_disk、alicloud_ecs_dedicated_host、alicloud_security_group、alicloud_key_pair、alicloud_ecs_launch_template、alicloud_ecs_network_interface、alicloud_image_copy、alicloud_image、alicloud_ecs_snapshot、alicloud_launch_template和alicloud_snapshot。
      VPC alicloud_eip_address、alicloud_eip、alicloud_common_bandwidth_package、alicloud_nat_gateway、alicloud_vpn_gateway、alicloud_vpc和alicloud_vswitch。
      SLB alicloud_slb_load_balancer和alicloud_slb。
      RDS alicloud_db_instance和alicloud_db_readonly_instance。
      Redis alicloud_kvstore_instance。
      PolarDB alicloud_polardb_cluster。
      MongoDB alicloud_mongodb_instance。
      Elasticsearch alicloud_elasticsearch_instance。
      GPDB alicloud_gpdb_elastic_instance和alicloud_gpdb_instance。
    • 支持传递资源栈用户标签的资源
      云服务 支持传递资源栈用户标签的资源
      ECS alicloud_instance、alicloud_ecs_disk、alicloud_disk、alicloud_ecs_dedicated_host、alicloud_security_group、alicloud_key_pair、alicloud_ecs_launch_template、alicloud_ecs_network_interface、alicloud_image_copy、alicloud_image、alicloud_ecs_snapshot、alicloud_launch_template和alicloud_snapshot。
      VPC alicloud_eip_address、alicloud_eip、alicloud_common_bandwidth_package、alicloud_nat_gateway、alicloud_vpn_gateway、alicloud_vpc和alicloud_vswitch。
      SLB alicloud_slb_load_balancer和alicloud_slb。
      RDS alicloud_db_instance和alicloud_db_readonly_instance。
      Redis alicloud_kvstore_instance。
      PolarDB alicloud_polardb_cluster。
      MongoDB alicloud_mongodb_instance。
      CEN alicloud_cen_bandwidth_package。
      PolarDB-X alicloud_drds_instance。
      EMR alicloud_emr_cluster。
      Elasticsearch alicloud_elasticsearch_instance。
      GPDB alicloud_gpdb_elastic_instance和alicloud_gpdb_instance。
    • 支持传递资源栈所属资源组的资源
      云服务 支持传递资源栈所属资源组的资源
      ECS alicloud_instance、alicloud_ecs_disk、alicloud_disk、alicloud_ecs_dedicated_host、alicloud_security_group、alicloud_key_pair、alicloud_ecs_launch_template、alicloud_ecs_network_interface、alicloud_image_copy、alicloud_image、alicloud_snapshot、alicloud_ecs_key_pair、alicloud_launch_template、alicloud_ecs_instance_set、alicloud_snapshot_policy、alicloud_network_interface、alicloud_ecs_auto_snapshot_policy和alicloud_ecs_snapshot。
      VPC alicloud_vpc、alicloud_common_bandwidth_package、alicloud_eip_address和alicloud_eip。
      SLB alicloud_slb_load_balancer、alicloud_slb_server_certificate、alicloud_slb_acl和alicloud_slb。
      RDS alicloud_db_readonly_instance、alicloud_rds_upgrade_db_instance和alicloud_rds_clone_db_instance。
      Redis alicloud_kvstore_instance。
      PolarDB alicloud_db_instance和alicloud_polardb_cluster。
      MongoDB alicloud_mongodb_instance、alicloud_mongodb_serverless_instance和alicloud_mongodb_sharding_instance。
      ECI alicloud_eci_container_group和alicloud_eci_image_cache。
      PolarDB-X alicloud_drds_instance。
      EMR alicloud_emr_cluster。
      Elasticsearch alicloud_elasticsearch_instance。
      CAS alicloud_cas_certificate。
      ROS alicloud_ros_stack、alicloud_ros_stack_group和alicloud_ros_template。
      PVTZ alicloud_pvtz_zone。
      CS alicloud_cs_kubernetes、alicloud_cs_edge_kubernetes、alicloud_cs_managed_kubernetes和alicloud_cs_serverless_kubernetes。
      HBase alicloud_hbase_instance。
      ALB alicloud_alb_acl、alicloud_alb_security_policy、alicloud_alb_load_balancer和alicloud_alb_server_group。
      OOS alicloud_oos_state_configuration、alicloud_oos_template、alicloud_oos_secret_parameter和alicloud_oos_parameter。
      SSL alicloud_ssl_certificates_service_certificate。
      DNS alicloud_dns_domain和alicloud_dns。
      DDoSCOO alicloud_ddoscoo_instance。
      BastionHost alicloud_bastionhost_instance。
      EDAS alicloud_edas_k8s_application、alicloud_edas_cluster、alicloud_edas_k8s_cluster和alicloud_edas_application。
      CDN alicloud_cdn_domain_new。
      WAF alicloud_waf_domain。
      Cassandra alicloud_cassandra_cluster。
      DCDN alicloud_dcdn_domain和alicloud_dcdn_ipa_domain。
      OpenSearch alicloud_open_search_app_group。
      YunDunDBAudit alicloud_yundun_dbaudit_instance。
      ALIDNS alicloud_alidns_gtm_instance和alicloud_alidns_domain。
      HBR alicloud_hbr_vault和alicloud_hbr_replication_vault。
      CEN alicloud_cen_bandwidth_package和alicloud_cen_instance。
      ADB alicloud_adb_cluster和alicloud_adb_db_cluster。
      DDoSBGP alicloud_ddosbgp_instance。
      ALIKafka alicloud_alikafka_instance。
      Lindorm alicloud_lindorm_instance。
  • AWS资源
  • Azure资源