Mayastor Disk Pool Kubernetes Operator是一个专为Mayastor存储系统设计的Kubernetes操作器(Operator)。它基于Kubernetes自定义资源定义(CRD)和控制器模式,实现磁盘池(Disk Pool)的自动化创建、配置、扩展与生命周期管理,简化存储资源在Kubernetes集群中的部署和运维,为容器化应用提供稳定高效的持久化存储基础。
自动化磁盘池管理
通过DiskPool CRD实现存储资源的声明式定义,自动完成磁盘池的创建、删除、扩容及状态同步,减少手动操作成本。
Kubernetes原生集成
深度对接Kubernetes API,支持通过kubectl等原生工具进行配置和监控,符合Kubernetes运维习惯。
动态存储资源调配
根据集群应用需求,动态调整磁盘池容量,支持在线添加/移除物理或虚拟磁盘设备,灵活应对存储负载变化。
状态监控与自愈能力
实时监控磁盘池健康状态(容量、IO性能、设备故障等),自动触发故障恢复机制,保障存储服务连续性。
多介质兼容性
支持物理磁盘(HDD/SSD/NVMe)、虚拟磁盘(如iSCSI卷)等多种存储介质,适配不同性能需求的应用场景。
Mayastor存储部署基础
在Kubernetes集群中部署Mayastor分布式存储系统时,作为底层存储资源管理的核心组件,负责磁盘资源抽象与池化。
容器化应用持久化存储
为数据库(如MySQL、PostgreSQL)、消息队列(如Kafka、RabbitMQ)等需要持久化数据的应用提供稳定的存储资源池。
大规模集群存储管理
在包含多节点、多存储设备的Kubernetes集群中,实现存储资源的统一管理和高效利用。
混合存储环境适配
适用于同时包含高性能介质(如NVMe)和大容量介质(如HDD)的集群,支持分层存储策略配置。
环境要求
mayastor-control-plane、mayastor-agent)lsblk等工具确认设备路径,如/dev/sdb)依赖组件
cert-manager(用于Webhook证书管理,可选)kube-state-metrics(用于存储监控数据采集,可选)1. 部署DiskPool CRD
bashkubectl apply -f https://raw.githubusercontent.com/openebs/mayastor/main/deploy/crds/mayastor.datastore.io_diskpools.yaml
2. 部署Operator控制器
bash# 部署命名空间(若未创建) kubectl create namespace mayastor --dry-run=client -o yaml | kubectl apply -f - # 部署Operator kubectl apply -f https://raw.githubusercontent.com/openebs/mayastor/main/deploy/operator/diskpool-operator.yaml
DiskPool CRD 定义
通过创建DiskPool资源对象声明存储池配置,示例如下:
yamlapiVersion: mayastor.datastore.io/v1alpha1 kind: DiskPool metadata: name: fast-diskpool # 磁盘池名称 namespace: mayastor # 需与Operator同命名空间 spec: node: k8s-worker-01 # 目标节点名称(需存在于集群中) disks: # 节点上的可用磁盘设备列表 - /dev/nvme0n1 # NVMe设备(高性能场景) - /dev/sdc # SSD设备 storageClass: mayastor-fast # 关联的StorageClass名称(可选,用于动态PVC创建) replicas: 2 # 数据副本数(默认3,根据集群规模调整)
Operator 环境变量配置
部署Operator时可通过环境变量调整行为,关键参数如下:
| 环境变量名 | 描述 | 默认值 |
|---|---|---|
WATCH_NAMESPACE | 监控的命名空间(为空则监控所有命名空间) | "" |
LOG_LEVEL | 日志级别(debug/info/warn/error) | "info" |
RECONCILIATION_PERIOD | 状态同步周期(秒) | 30 |
MAX_RETRY_ATTEMPTS | 故障恢复最大重试次数 | 5 |
1. 验证磁盘池状态
bashkubectl get diskpools -n mayastor
预期输出示例:
NAME NODE STATUS DISKS CAPACITY USED fast-diskpool k8s-worker-01 Ready [/dev/nvme0n1, /dev/sdc] 1.5Ti 200Gi
2. 查看磁盘池详情
bashkubectl describe diskpool fast-diskpool -n mayastor
3. 磁盘池扩容
通过编辑DiskPool资源添加新磁盘:
bashkubectl edit diskpool fast-diskpool -n mayastor
在spec.disks中添加新设备路径(如/dev/sdd),Operator将自动完成扩容。
4. 删除磁盘池
bashkubectl delete diskpool fast-diskpool -n mayastor
注意:删除前需确保磁盘池内无关联PVC,避免数据丢失。
查看Operator日志:
bashkubectl logs -n mayastor deployment/mayastor-diskpool-operator -f
检查DiskPool事件:
bashkubectl get events -n mayastor --field-selector involvedObject.kind=DiskPool,involvedObject.name=fast-diskpool
常见问题:
privileged权限您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。


探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务