RocketMQ云原生02:Operator 运维管理 - 自动化的终极形态
引言:声明式运维的魅力 传统部署:编写 10+ 个 YAML 文件,手动管理 StatefulSet、Service、ConfigMap… Operator 部署:一个 CRD 搞定所有配置,自动化管理生命周期。 # 传统方式:10+ 个 YAML 文件 kubectl apply -f namespace.yaml kubectl apply -f configmap.yaml kubectl apply -f nameserver-statefulset.yaml kubectl apply -f nameserver-service.yaml kubectl apply -f broker-statefulset.yaml ... # Operator 方式:1 个 CRD kubectl apply -f rocketmq-cluster.yaml # Done! 本文目标: 理解 Operator 工作原理 安装 RocketMQ Operator 使用 CRD 部署集群 实现自动化运维 一、Operator 基础 1.1 什么是 Operator? Operator = CRD + Controller ┌──────────────────────────────────────────┐ │ Operator │ │ │ │ ┌────────────┐ ┌───────────────┐ │ │ │ CRD │ │ Controller │ │ │ │ (定义) │─────>│ (执行逻辑) │ │ │ └────────────┘ └───────┬───────┘ │ │ │ │ └──────────────────────────────┼──────────┘ │ ┌──────────▼──────────┐ │ K8s API Server │ └──────────┬──────────┘ │ ┌──────────────────────┼──────────────────────┐ │ │ │ ┌─────▼─────┐ ┌─────▼─────┐ ┌─────▼─────┐ │StatefulSet│ │ Service │ │ ConfigMap │ └───────────┘ └───────────┘ └───────────┘ Operator 功能: ...