
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
k8s.gcr.io/sig-storage/local-volume-provisioner 与 registry.k8s.io/sig-storage/local-volume-provisioner 是 Kubernetes SIG Storage 提供的官方本地卷供应器镜像,用于在 Kubernetes 集群中动态创建和管理本地存储卷。该镜像实现了本地存储的动态供应能力,解决了静态本地卷(Static Local Volume)管理复杂、需要手动创建 PV 的问题,简化了本地存储在 Kubernetes 集群中的配置和使用流程。
/dev/sdb)作为存储后端,自动格式化并挂载磁盘。Delete 或 Retain)。通常通过 Kubernetes DaemonSet 在集群节点上部署,确保每个节点(或指定节点)运行 provisioner 实例。以下是部署的关键步骤:
1. 准备存储后端
在节点上创建基础存储目录(如 /mnt/local-storage),或确保有未格式化的磁盘可供发现。
2. 创建 ConfigMap
配置存储后端信息(以目录型存储为例):
yamlapiVersion: v1 kind: ConfigMap metadata: name: local-volume-provisioner-config namespace: kube-system data: storageClassMap: | local-storage: # StorageClass 名称 hostDir: /mnt/local-storage # 节点上的基础目录 mountDir: /mnt/local-storage # 挂载目录(通常与 hostDir 相同) volumeMode: Filesystem # 卷模式(Filesystem 或 Block) fsType: ext4 # 文件系统类型
3. 部署 DaemonSet
yamlapiVersion: apps/v1 kind: DaemonSet metadata: name: local-volume-provisioner namespace: kube-system spec: selector: matchLabels: app: local-volume-provisioner template: metadata: labels: app: local-volume-provisioner spec: serviceAccountName: local-storage-admin containers: - name: local-volume-provisioner image: registry.k8s.io/sig-storage/local-volume-provisioner:v2.5.0 # 使用最新稳定版 imagePullPolicy: Always volumeMounts: - mountPath: /etc/provisioner/config name: provisioner-config - mountPath: /mnt/local-storage # 挂载节点存储目录 name: local-storage env: - name: NODE_NAME valueFrom: fieldRef: fieldPath: spec.nodeName volumes: - name: provisioner-config configMap: name: local-volume-provisioner-config - name: local-storage hostPath: path: /mnt/local-storage # 对应节点上的存储目录
4. 创建 StorageClass
yamlapiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: local-storage provisioner: kubernetes.io/local-volume # provisioner 标识 volumeBindingMode: WaitForFirstConsumer # 延迟绑定,直到 Pod 调度后再绑定 PV reclaimPolicy: Delete # 卷回收策略(Delete 或 Retain)
5. 创建 PVC 使用本地卷
yamlapiVersion: v1 kind: PersistentVolumeClaim metadata: name: local-pvc spec: accessModes: - ReadWriteOnce storageClassName: local-storage # 关联上述 StorageClass resources: requests: storage: 10Gi
ConfigMap 配置项
| 参数 | 说明 | 示例值 |
|---|---|---|
storageClassMap | StorageClass 与存储后端的映射配置 | local-storage: {...} |
hostDir | 节点上的基础存储目录 | /mnt/local-storage |
mountDir | provisioner 挂载的目录 | /mnt/local-storage |
volumeMode | 卷模式(Filesystem 或 Block) | Filesystem |
fsType | 文件系统类型(如 ext4、xfs) | ext4 |
blockCleanerCommand | 清理块设备的命令(仅 Block 模式) | ["dd", "if=/dev/zero", "of=%v", "bs=1M", "count=100", "conv=fsync"] |
环境变量
| 环境变量 | 说明 | 示例值 |
|---|---|---|
NODE_NAME | 当前节点名称(通过 fieldRef 获取) | node-1 |
PROVISIONER_NAME | provisioner 名称(需与 StorageClass 匹配) | kubernetes.io/local-volume |
reclaimPolicy: Delete 会清理存储后端数据,Retain 则保留数据需手动清理。k8s.gcr.io/sig-storage/local-volume-provisionerregistry.k8s.io/sig-storage/local-volume-provisioner建议使用指定版本标签(如 v2.5.0)而非 latest,确保部署稳定性。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务