《从零上手 AI DevSpace:用 Agent + Terraform 一键部署华为云基础设施》
# 从零上手 AI DevSpace:用 Agent + Terraform 一键部署华为云基础设施
## 前言
作为经常和云资源打交道的开发者,你是否也经历过这些痛点:
- 每次创建 ECS、VPC、安全组,都要在控制台点十几个页面,参数填错又重来
- 听说 Terraform 可以"基础设施即代码",但看着 HCL 语法一脸懵
- 网上教程要么太老,要么跟华为云的实际 API 对不上
最近体验了华为云 **AI DevSpace** 智能开发环境,发现它把这些问题解决得相当漂亮。今天就把我的完整实践过程分享出来,希望能帮你少走弯路。
## 一、AI DevSpace 是什么?
AI DevSpace 是华为云推出的**智能开发环境**,核心是一个内置了华为云知识库的 AI Agent。你可以用自然语言跟它对话,它会帮你:
- 生成 Terraform 配置文件
- 解释每段代码对应的云资源
- 直接执行 `terraform plan / apply` 部署
- 查询现有云资源状态
简单说,**你说"帮我建一个带 EIP 的 ECS",它就帮你把 VPC、子网、安全组、ECS、EIP 全套代码写好,还能直接部署。**
## 二、实践前的准备
### 2.1 开通环境
在浏览器打开 [AI 办公实践中心](https://hands-on-agent.developer.huaweicloud.com/#tasks),点击「前往 AI DevSpace 实践」,进入智能开发环境。
### 2.2 准备华为云凭证
部署云资源需要 AK/SK(访问密钥),在华为云控制台「我的凭证」页面创建。**安全提醒:AK/SK 不要硬编码到代码里**,建议通过环境变量传入:
```bash
export HW_ACCESS_KEY="你的AK"
export HW_SECRET_KEY="你的SK"
```
### 2.3 确认 Terraform 已安装
AI DevSpace 环境中通常已预装 Terraform,可以在终端确认:
```bash
terraform version
```
如果没有,Agent 会自动帮你安装华为云镜像版的 Terraform,国内下载速度很快。
## 三、动手实践:用自然语言部署一套云资源
### 3.1 提出需求
我在 Agent 对话框里输入:
> 帮我在华为云 cn-north-4 区域创建一套基础设施:一个 VPC,一个子网,一个安全组(放通 22 和 80 端口),一台 s6.large.2 的 ECS,并给 ECS 绑定弹性公网 IP。
### 3.2 Agent 的响应过程
Agent 没有直接甩代码,而是先做了一轮**资源调研**:
1. 查询了 cn-north-4 区域可用的可用区
2. 查询了 s6.large.2 规格的详细信息
3. 检查了我账号下是否已有可复用的 VPC
然后给出了一套完整的 Terraform 配置,并逐段解释:
```hcl
# providers.tf — 声明华为云 Provider
terraform {
required_providers {
huaweicloud = {
source = "huaweicloud/huaweicloud"
version = ">= 1.50.0"
}
}
}
provider "huaweicloud" {
region = "cn-north-4"
# AK/SK 通过环境变量传入,不硬编码
}
```
```hcl
# network.tf — 网络资源
resource "huaweicloud_vpc" "main" {
name = "vpc-devspace-demo"
cidr = "192.168.0.0/16"
}
resource "huaweicloud_vpc_subnet" "main" {
name = "subnet-devspace-demo"
vpc_id = huaweicloud_vpc.main.id
cidr = "192.168.0.0/24"
gateway_ip = "192.168.0.1"
}
resource "huaweicloud_networking_secgroup" "main" {
name = "sg-devspace-demo"
description = "Security group for DevSpace demo"
}
resource "huaweicloud_networking_secgroup_rule" "ssh" {
direction = "ingress"
port_range_min = 22
port_range_max = 22
protocol = "tcp"
remote_ip_prefix = "0.0.0.0/0"
security_group_id = huaweicloud_networking_secgroup.main.id
}
resource "huaweicloud_networking_secgroup_rule" "http" {
direction = "ingress"
port_range_min = 80
port_range_max = 80
protocol = "tcp"
remote_ip_prefix = "0.0.0.0/0"
security_group_id = huaweicloud_networking_secgroup.main.id
}
```
```hcl
# compute.tf — 计算资源
resource "huaweicloud_compute_instance" "web" {
name = "ecs-devspace-demo"
flavor_id = "s6.large.2"
image_id = data.huaweicloud_images_image.default.id
availability_zone = "cn-north-4a"
security_group_ids = [huaweicloud_networking_secgroup.main.id]
network {
uuid = huaweicloud_vpc_subnet.main.id
}
}
resource "huaweicloud_vpc_eip" "web" {
publicip {
type = "5_bgp"
}
bandwidth {
name = "bw-devspace-demo"
size = 5
share_type = "PER"
charge_mode = "traffic"
}
}
resource "huaweicloud_compute_eip_associate" "web" {
public_ip = huaweicloud_vpc_eip.web.publicip[0].ip_address
instance_id = huaweicloud_compute_instance.web.id
}
```
### 3.3 Agent 的解释
Agent 逐段解释了每段代码的含义:
- **providers.tf**:声明使用华为云 Provider,region 设为 cn-north-4(北京4)。AK/SK 不写在文件里,通过环境变量 `HW_ACCESS_KEY` / `HW_SECRET_KEY` 传入,避免泄露。
- **network.tf**:创建 VPC(192.168.0.0/16)和子网(192.168.0.0/24),安全组放通了 22(SSH)和 80(HTTP)端口。
- **compute.tf**:创建 s6.large.2 规格的 ECS,并绑定一个 5Mbps 的按流量计费 EIP。
### 3.4 部署执行
Agent 在执行前会做**确认仪式**,告诉我:
> 即将执行 `terraform apply`,会创建以下资源:
> - 新增 6 个资源:1 VPC + 1 子网 + 1 安全组 + 2 安全组规则 + 1 ECS + 1 EIP
> - 无删除操作
> - 无不可逆操作
>
> 请确认后继续。
我回复"确认"后,Agent 执行了部署。大约 2 分钟后,所有资源创建完成,EIP 地址也返回了。
## 四、体验亮点与踩坑心得
### ✨ 亮点
1. **自然语言交互**:不需要记 HCL 语法,说人话就行。Agent 会自动翻译成正确的 Terraform 配置。
2. **先调研再写码**:Agent 不是盲目生成代码,而是先查询区域、规格、镜像等实际信息,确保代码可执行。
3. **安全意识到位**:Agent 主动提醒不要硬编码 AK/SK,安全组规则也会分析是否过于开放。
4. **确认机制**:所有会改变云状态的操作,Agent 都会先说明要做什么、影响哪些资源,等用户确认后才执行。
### ⚠️ 踩坑提醒
1. **区域选择**:不同区域可用的规格和镜像不同,写代码前最好先确认目标区域的资源可用性。
2. **State 管理**:默认 state 文件在本地,团队协作时建议配置 OBS 作为远程 backend。
3. **安全组规则**:示例中为了简单放通了 0.0.0.0/0,生产环境建议限制为特定 IP 段。Agent 也会主动提醒这一点。
4. **销毁资源**:测试完记得 `terraform destroy` 清理资源,避免持续计费。Agent 同样会在销毁前做确认。
## 五、总结
AI DevSpace 的核心价值不在于"帮你写代码"这件事本身,而在于:
- **降低了 IaC 的学习门槛**:不需要先学 HCL 语法、不需要翻文档找 resource 参数,用自然语言描述需求即可。
- **内置华为云知识**:Agent 了解华为云的 API、命名规范、最佳实践,生成的代码直接可用,不需要反复调试。
- **全流程闭环**:从生成代码 → 解释 → 部署 → 查询 → 销毁,一个环境里全部完成。
如果你也在用华为云,强烈推荐去 [AI 办公实践中心](https://hands-on-agent.developer.huaweicloud.com/#tasks) 体验一下。每日体验还能赚积分,何乐而不为呢 😄
---
> **作者注**:本文基于 2026 年 10 月的实际体验编写,AI DevSpace 功能可能持续迭代更新,请以实际体验为准。如有问题欢迎在评论区交流。
- 点赞
- 收藏
- 关注作者
评论(0)