Kubernetes Operator for ManageIQ 是一个基于 Kubernetes Operator 框架构建的工具,旨在自动化 ManageIQ 平台在 Kubernetes 集群中的部署、配置、运维及全生命周期管理。该 Operator 通过自定义资源定义(CRD)实现声明式 API,将 ManageIQ 的部署和管理逻辑编码为软件,简化用户在 Kubernetes 环境中使用 ManageIQ 进行多云资源管理的复杂度。
主要用途:
基于 Kubernetes CRD(ManageIQ 自定义资源)实现声明式配置,用户通过定义 CR 资源即可描述期望的 ManageIQ 集群状态,Operator 自动协调实际状态与期望状态。
spec.backup 配置)kubectl 工具(版本与集群匹配)bash# 添加 Helm 仓库 helm repo add manageiq-operator [***] helm repo update # 安装 Operator(指定命名空间,如 manageiq-system) helm install manageiq-operator manageiq-operator/manageiq-operator \ --namespace manageiq-system \ --create-namespace \ --version 1.0.0 # 替换为实际版本号
bash# 创建命名空间 kubectl create namespace manageiq-system # 部署 CRD kubectl apply -f [***] # 部署 Operator 控制器 kubectl apply -f [***] -n manageiq-system
通过定义 ManageIQ 自定义资源(CR)创建实例,示例 YAML(manageiq-instance.yaml):
yamlapiVersion: manageiq.manageiq.org/v1alpha1 kind: ManageIQ metadata: name: my-manageiq namespace: manageiq-system spec: # 基础配置 image: manageiq/manageiq:ivanchuk-1 # 镜像版本 imagePullPolicy: IfNotPresent # 镜像拉取策略 # 资源限制 resources: requests: cpu: "2" memory: "4Gi" limits: cpu: "4" memory: "8Gi" # 存储配置 storage: storageClassName: standard # 存储类名称 size: 100Gi # 存储大小 # 数据库配置(可选,默认使用内置 PostgreSQL) database: external: false # 是否使用外部数据库 # 外部数据库配置(当 external: true 时需填写) # host: postgres.example.com # port: 5432 # database: manageiq # user: manageiq_user # passwordSecret: # name: postgres-credentials # key: password # 网络配置 network: serviceType: ClusterIP # 服务类型(ClusterIP/NodePort/Load***) ingress: enabled: true hostname: manageiq.example.com tls: enabled: true secretName: manageiq-tls # 高可用配置 replicas: 3 # 副本数(建议生产环境 ≥3) # 备份配置 backup: enabled: true schedule: "0 3 * * *" # 每日凌晨 3 点执行备份 storageClassName: backup-storage size: 50Gi
应用 CR 创建实例:
bashkubectl apply -f manageiq-instance.yaml -n manageiq-system
| 参数路径 | 类型 | 描述 | 默认值 |
|---|---|---|---|
spec.image | string | ManageIQ 镜像地址及版本 | manageiq/manageiq:latest |
spec.imagePullPolicy | string | 镜像拉取策略(Always/IfNotPresent/Never) | IfNotPresent |
spec.resources | object | CPU/内存资源请求与限制 | requests: {cpu: "1", memory: "2Gi"}, limits: {cpu: "2", memory: "4Gi"} |
spec.storage | object | 存储配置,包含 storageClassName(存储类)和 size(存储大小) | storageClassName: standard, size: 50Gi |
spec.database.external | bool | 是否使用外部数据库 | false |
spec.network.serviceType | string | 服务类型(ClusterIP/NodePort/Load***) | ClusterIP |
spec.network.ingress.enabled | bool | 是否启用 Ingress | false |
spec.replicas | int | ManageIQ 实例副本数 | 1 |
spec.backup.enabled | bool | 是否启用自动备份 | false |
spec.backup.schedule | string | 备份定时任务(Cron 表达式) | "0 0 * * *"(每日凌晨 0 点) |
若启用 Ingress 且配置 hostname: manageiq.example.com,直接通过 [***] 访问。
获取服务地址:
bashkubectl get service my-manageiq -n manageiq-system
根据服务类型,通过 NodePort(节点IP:NodePort)或 Load***(EXTERNAL-IP)访问。
通过 Helm 升级:
bashhelm upgrade manageiq-operator manageiq-operator/manageiq-operator -n manageiq-system --version 1.1.0
修改 CR 中的 spec.image 字段至目标版本,Operator 会自动执行滚动升级:
bashkubectl patch manageiq my-manageiq -n manageiq-system --type merge -p '{"spec": {"image": "manageiq/manageiq:jansa-1"}}'
若升级失败,Operator 会自动回滚至前一版本。也可手动回滚 CR 配置:
bashkubectl apply -f manageiq-instance-rollback.yaml -n manageiq-system # 应用历史稳定版本的 CR 配置
bashkubectl delete manageiq my-manageiq -n manageiq-system
bashhelm uninstall manageiq-operator -n manageiq-system kubectl delete crd manageiqs.manageiq.manageiq.org
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429