操作说明
本方案基于 天翼云 ROS(资源编排服务)控制台,提供 OpenClaw 云主机的一键批量部署与删除能力。用户仅需在 ROS 控制台导入模板并配置参数,即可在分钟级完成环境搭建与资源回收。
方案通过模板化编排,将计算、网络与安全策略统一纳管,实现“自动化部署 + 安全策略一体化”,显著提升资源交付效率,降低运维复杂度。
适用场景
OpenClaw 云主机快速批量搭建
多环境标准化部署(开发、测试、生产)
临时资源快速创建与释放
对网络隔离与安全策略有定制化和合规管理要求的业务场景
方案架构
基于 ROS 模板编排,自动创建以下资源:
VPC 私有网络
子网(Subnet)
安全组及访问规则
ECS 云主机(OpenClaw 镜像)
弹性公网 IP(自动分配与绑定)
架构关系如下:
VPC
├── Subnet
│ └── ECS(OpenClaw实例) × N
│ ├── EIP
│ └── Security Group
核心能力
在 ROS 控制台中:
导入模板(基于 Terraform 语法适配)
核心参数配置:配置实例数量(instance_count)、可用区选择、镜像、云主机规格等等
一键创建资源栈
即可自动完成:
多台 OpenClaw 云主机创建
自动命名(如 openclaw-1、openclaw-2)
公网 IP 自动绑定
同时支持一键删除资源栈,实现全量资源自动回收
操作步骤
登录控制中心。
在控制台首页搜索“资源编排ROS”,或在左侧产品导航栏选择“管理工具 > 资源编排ROS”,进入资源编排控制台。
在左侧导航栏选择 模板管理。
在模板管理页面,单击创建模板。
批量部署OpenClaw云主机的.tf模板示例如下(该模板默认基于西南1资源池, 可以根据需要可以进行调整),请参考文档创建模板完成模板配置。
注意:provider版本至少使用2.1.0
# provider版本请至少使用2.1.0
terraform {
required_providers {
ctyun = {
source = "ctyun-it/ctyun"
version = "2.1.0"
}
}
}
#变量定义
variable "az_name" {
type = string
default = "cn-xinan1-xn2A-public-ctcloud"
description = "可用区"
}
variable "instance_name" {
type = string
default = "openclaw"
description = "创建OpenClaw的云主机前缀"
}
variable "vpc_name" {
type = string
default = "vpc-for-openclaw"
description = "vpc名称"
}
# 请使用OpenClaw镜像
variable "image_id" {
type = string
default = "d8fe8e9b-512c-42a8-9bd6-a4ff158f31db"
description = "OpenClaw镜像的id"
}
variable "flavor_name" {
type = string
default = "e.large.2"
description = "OpenClaw flavor name"
}
variable "password" {
type = string
sensitive = true
description = "用户密码,满足以下规则:长度在8~30个字符必须包含大写字母、小写字母、数字以及特殊符号中的三项:特殊符号可选:()`~!@#$%^&*_-+=|{}[]:;'<>,.?/且不能以斜线号/开头"
}
variable "instance_count" {
type = number
default = 1
description = "创建OpenClaw的云主机数量"
}
variable "bandwidth" {
type = number
default = 5
description = "带宽大小,传递时会自动创建弹性IP并绑定,单位为Mbit/s,取值范围:[1, 2000],为了保证使用体验,建议至少设置成5"
}
#资源定义
# 创建vpc
resource "ctyun_vpc" "vpc_test" {
name = var.vpc_name
cidr = "192.168.0.0/16"
description = "terraform测试使用"
enable_ipv6 = true
}
# 在vpc下创建子网
resource "ctyun_subnet" "subnet_test" {
vpc_id = ctyun_vpc.vpc_test.id
name = "subnet-for-openclaw"
cidr = "192.168.1.0/24"
description = "terraform测试使用"
dns = [
"114.114.114.114",
"8.8.8.8"
]
enable_ipv6 = true
}
#查询flavor
data "ctyun_ecs_flavors" "ctyun_ecs_flavors_openclaw" {
az_name = var.az_name
name = var.flavor_name
}
# 按需开通多台云主机
resource "ctyun_ecs" "ecs_test" {
count = var.instance_count
instance_name = "${var.instance_name}-${count.index + 1}"
display_name = "${var.instance_name}-${count.index + 1}"
flavor_id = data.ctyun_ecs_flavors.ctyun_ecs_flavors_openclaw.flavors[0].id
image_id = var.image_id
system_disk_type = "sata"
system_disk_size = 40
vpc_id = ctyun_vpc.vpc_test.id
cycle_type = "on_demand"
subnet_id = ctyun_subnet.subnet_test.id
az_name = var.az_name
bandwidth = var.bandwidth
password = var.password
security_group_ids = [ctyun_security_group.security_group_openclaw_test.id]
}
#安全组,可以根据实际需要在安全组添加安全规则
resource "ctyun_security_group" "security_group_openclaw_test" {
vpc_id = ctyun_vpc.vpc_test.id
name = "sg-openclaw-test"
description = "openclaw测试使用"
}
#定义输出
output "ecs_info" {
description = "创建的云主机名称和EIP列表"
value = [
for ecs in ctyun_ecs.ecs_test : {
instance_name = ecs.instance_name
eip_address = ecs.eip_address
}
]
}在资源栈管理中,参考创建资源栈,选择刚才创建的模板,并填写参数触发资源栈的创建。
注意:OpenClaw的部署需要选择相关的资源池、镜像和规格,具体信息请参考 使用云主机部署OpenClaw
参考部署资源栈,完成资源栈部署。
部署完成后,您可前往对应资源栈控制台查看资源的创建结果。
可以在资源Tab查看创建的资源
可以在输出Tab查看自定义的输出信息。
OpenClaw云主机使用完毕,可以点击删除按钮一键删除。