赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 分布式云容器平台ACK One
  4. 开发参考
  5. Terraform
  6. 通过Terraform创建舰队

通过Terraform创建舰队

  • Terraform
  • 发布于 2025-04-18
  • 0 次阅读
文档编辑
文档编辑

本文介绍如何使用Terraform创建ACK One Fleet实例。

前提条件

  • 由于阿里云账号(主账号)具有资源的所有权限,一旦发生泄露将面临重大风险。建议您使用RAM用户,并为该RAM用户创建AccessKey,具体操作方式请参见创建RAM用户和创建AccessKey。

  • 为运行Terraform命令的RAM用户绑定以下最小权限策略,以获取管理本示例所涉及资源的权限。更多信息,请参见为RAM用户授权。

    该权限策略允许RAM用户创建、查看和删除RAM角色,并支持对RAM角色权限策略的管理。

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "ram:GetRole",
            "ram:ListRoles",
            "ram:AttachPolicyToRole",
            "ram:ListPoliciesForRole",
            "ram:CreateRole",
            "ram:DetachPolicyFromRole",
            "ram:DeleteRole"
          ],
          "Resource": "*"
        }
      ]
    }
  • 准备Terraform运行环境,您可以选择以下任一方式来使用Terraform。

    • 在Terraform Explorer中使用Terraform:阿里云提供了Terraform的在线运行环境,您无需安装Terraform,登录后即可在线使用和体验Terraform。适用于零成本、快速、便捷地体验和调试Terraform的场景。

    • Cloud Shell:阿里云Cloud Shell中预装了Terraform的组件,并已配置好身份凭证,您可直接在Cloud Shell中运行Terraform的命令。适用于低成本、快速、便捷地访问和使用Terraform的场景。

    • 在本地安装和配置Terraform:适用于网络连接较差或需要自定义开发环境的场景。

  • 该账户下必须存在ACK集群,才能创建舰队。

使用的资源

  • alicloud_zones:查询可用区。

  • alicloud_vpc:创建专有网络VPC。

  • alicloud_vswitch:创建虚拟交换机(vSwitch)为VPC划分一个或多个子网。

  • alicloud_ack_one_cluster:创建ACK One Fleet实例。

使用Terraform创建ACK One Fleet实例

  1. 创建一个工作目录,并在该工作目录中创建名为main.tf的配置文件,然后将以下代码复制到main.tf中。

    variable "name" {
      default = "terraform-example"
    }
    
    provider "alicloud" {
      region = "cn-hangzhou"
    }
    # 指定可用区。
    data "alicloud_zones" "default" {
      available_resource_creation = "VSwitch"
    }
    # 创建专有网络VPC。
    resource "alicloud_vpc" "defaultVpc" {
      cidr_block = "172.16.0.0/12"
      vpc_name   = var.name
    
    }
    # 创建虚拟交换机。
    resource "alicloud_vswitch" "defaultyVSwitch" {
      vpc_id       = alicloud_vpc.defaultVpc.id
      cidr_block   = "172.16.2.0/24"
      zone_id      = data.alicloud_zones.default.zones.0.id
      vswitch_name = var.name
    
    }
    
    # 创建ACK One Fleet实例。
    resource "alicloud_ack_one_cluster" "default" {
      profile        = "Default"
      argocd_enabled = false
      network {
        vpc_id    = alicloud_vpc.defaultVpc.id
        vswitches = ["${alicloud_vswitch.defaultyVSwitch.id}"]
      }
    }
  2. 执行以下命令,初始化Terraform运行环境。

    terraform init
  3. 执行以下命令,创建执行计划并预览变更。

    terraform plan
  4. 执行以下命令,创建实例。

    terraform apply

    在执行过程中,根据提示输入yes并按下Enter键,等待命令执行完成。若出现以下信息,则表示ACK One Fleet实例创建成功。

    Apply complete! Resources: 3 added, 0 changed, 0 destroyed.
  5. 执行以下命令,验证结果。也可登录ACK One控制台查看已创建的舰队信息。

    terraform show

清理资源

当您不再需要上述通过Terraform创建的资源时,请执行以下命令释放资源。

重要

舰队中的argocd_enabled属性必须为false才可以释放资源。

terraform destroy
相关文章

通过Terraform创建舰队 2025-04-18 18:03

本文介绍如何使用Terraform创建ACK One Fleet实例。 前提条件 由于阿里云账号(主账号)具有资源的所有权限,一旦

通过Terraform为舰队添加关联集群 2025-04-18 18:03

本文介绍如何使用Terraform为舰队添加关联集群。 前提条件 由于阿里云账号(主账号)具有资源

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号