管理Kafka消息队列
更新时间 2026-04-16 16:26:07
最近更新时间: 2026-04-16 16:26:07
操作说明
本方案基于 天翼云 ROS(资源编排服务)控制台,实现 Kafka 消息队列实例、Topic、消费组及关联网络资源的快速搭建,有效提升消息中间件资源交付效率,降低人工配置与运维成本。
方案内置标准化全链路编排模板,一站式完成 VPC 网络、子网、安全组、Kafka 集群实例、Topic 分区、消费组的联动部署,支持自定义规格配置、存储类型选择、节点数调整等灵活参数化设置,用户可根据消息队列业务规模、吞吐量与存储需求快速适配,高效完成生产级 Kafka 消息服务资源部署。
适用场景
Kafka 消息队列集群快速搭建
一键完成生产级 Kafka 集群 + Topic + 消费组全链路部署,无需分步手动配置,大幅缩短资源交付周期。
消息中间件多环境标准化部署
统一配置规范,支持测试、预发、生产等多环境 Kafka 资源标准化批量编排,避免配置不一致问题。
临时消息业务资源快速创建与释放
适配临时数据采集、压测、活动类消息业务场景,可快速创建 / 销毁 Kafka 资源,按需使用、节约成本
操作步骤
登录控制中心。
在控制台首页搜索“资源编排ROS”,或在左侧产品导航栏选择“管理工具 > 资源编排ROS”,进入资源编排控制台。
在左侧导航栏选择 模板管理。
在模板管理页面,单击创建模板,可参考创建模板完成模板配置。
模板默认基于华南2资源池, 可以根据需要进行调整。
terraform {
required_providers {
ctyun = {
source = "ctyun-it/ctyun"
version = "2.1.1"
}
}
}
provider "ctyun" {
}
variable "kafka_name" {
type = string
description = "kafka实例名称"
default = "demo-kafka"
}
variable "kafka_topic_name" {
type = string
description = "topic名称"
default = "demo-topic"
}
variable "kafka_consumer_group" {
type = string
description = "消费组名称"
default = "demo-consumers"
}
variable "kafka_spec_name" {
type = string
description = "kafka实例的规格类型,可通过https://www.ctyun.cn/document/10029624/10030704或使用ctyun_kafka_specs查看"
default = "kafka.2u4g.cluster"
}
variable "kafka_disk_type" {
type = string
description = "磁盘类型,通常支持SAS、SSD、FAST-SSD,规格支持的具体磁盘类型可使用ctyun_kafka_specs查看"
default = "SSD"
}
variable "kafka_disk_size" {
type = number
description = "单个节点的磁盘存储空间,单位为GB"
default = 100
}
variable "kafka_node_num" {
type = number
description = "节点数,也叫代理个数,单机版为1个,集群版3~50个"
default = 3
}
variable "kafka_topic_partition_num" {
type = number
description = "topic的分区数量"
default = 1
}
resource "ctyun_vpc" "vpc_test" {
name = "vpc-for-kafka"
cidr = "192.168.0.0/16"
}
resource "ctyun_subnet" "subnet_test" {
vpc_id = ctyun_vpc.vpc_test.id
name = "subnet-for-kafka"
cidr = "192.168.1.0/24"
dns = [
"114.114.114.114",
"8.8.8.8"
]
}
resource "ctyun_security_group" "security_group_test" {
vpc_id = ctyun_vpc.vpc_test.id
name = "sg-for-kafka"
}
data "ctyun_zones" "test" {
}
resource "ctyun_kafka_instance" "test_kafka_instance" {
instance_name = var.kafka_name
engine_version = "3.6"
spec_name = var.kafka_spec_name
node_num = var.kafka_node_num
zone_list = data.ctyun_zones.test.zones
disk_type = var.kafka_disk_type
disk_size = var.kafka_disk_size
vpc_id = ctyun_vpc.vpc_test.id
subnet_id = ctyun_subnet.subnet_test.id
security_group_id = ctyun_security_group.security_group_test.id
cycle_type = "month"
cycle_count = 3
auto_renew = true
auto_renew_cycle_count = 1
}
resource "ctyun_kafka_topic" "test_kafka_topic" {
name = var.kafka_topic_name
instance_id = ctyun_kafka_instance.test_kafka_instance.id
partition_num = var.kafka_topic_partition_num
}
resource "ctyun_kafka_consumer_group" "test_kafka_consumer_group" {
name = var.kafka_consumer_group
instance_id = ctyun_kafka_instance.test_kafka_instance.id
description = "测试消费组"
}