
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Longhorn Manager 是 Longhorn(开源分布式块存储系统)的核心管理组件,负责协调 Longhorn 集群中的存储卷、副本、节点及备份等资源,确保分布式存储服务的稳定运行。其主要用途包括:
open-iscsi initiator(用于块设备挂载);open-iscsi(如 Ubuntu: apt install open-iscsi,CentOS: yum install iscsi-initiator-utils);node-role.kubernetes.io/storage=longhorn),便于调度;Longhorn Manager 需配合其他组件(如 longhorn-engine、longhorn-instance-manager)部署,推荐通过 Helm 或官方 YAML 部署。
方法 1:使用 Helm 部署(推荐)
bash# 添加 Longhorn Helm 仓库 helm repo add longhorn https://charts.longhorn.io helm repo update # 安装 Longhorn(含 manager、engine、ui 等组件) helm install longhorn longhorn/longhorn \ --namespace longhorn-system \ --create-namespace \ --version 1.5.1 # 指定版本(需与 K8s 版本兼容,详见官方文档)
方法 2:使用 kubectl 部署
bash# 部署 Longhorn 核心组件(含 manager) kubectl apply -f https://raw.githubusercontent.com/longhorn/longhorn/v1.5.1/deploy/longhorn.yaml
Longhorn Manager 配置通过环境变量或 Helm Values 定义,以下为主要参数说明:
| 参数名 | 环境变量对应 | 说明 | 默认值 |
|---|---|---|---|
defaultReplicaCount | DEFAULT_REPLICA_COUNT | 新建卷的默认副本数(建议 3,需 ≥1) | 3 |
backupTarget | BACKUP_TARGET | 备份目标 URL(格式:s3://bucket@region/path 或 nfs://<ip>/path) | 空(需手动配置) |
backupTargetCredentialSecret | BACKUP_TARGET_CREDENTIAL_SECRET | 备份目标认证 Secret 名称(存储访问密钥等) | 空 |
logLevel | LOG_LEVEL | 日志级别(debug/info/warn/error) | info |
storageMinimalAvailablePercentage | STORAGE_MINIMAL_AVAILABLE_PERCENTAGE | 节点磁盘可用空间阈值(低于此值拒绝调度新副本) | 10(%) |
csiAttacherImage | CSI_ATTACHER_IMAGE | CSI Attacher 镜像地址(Longhorn 依赖组件) | longhornio/csi-attacher:v4.2.0 |
1. 创建存储卷(通过 Kubernetes PVC)
yaml# pvc-example.yaml apiVersion: v1 kind: PersistentVolumeClaim metadata: name: longhorn-pvc spec: accessModes: - ReadWriteOnce # Longhorn 支持 ReadWriteOnce、ReadWriteMany(需配置) storageClassName: longhorn # 需确保存在名为 longhorn 的 StorageClass resources: requests: storage: 10Gi # 卷大小
应用配置:kubectl apply -f pvc-example.yaml
2. 配置备份目标(通过 Longhorn UI)
kubectl get svc -n longhorn-system longhorn-frontend 查看);Backup Target(如 s3://my-backup-bucket@us-east-1/longhorn-backup);access-key 和 secret-key),并在 UI 中指定 Secret 名称。3. 扩容存储卷
bash# 修改 PVC 的 storage.requests 字段 kubectl patch pvc longhorn-pvc -p '{"spec":{"resources":{"requests":{"storage":"20Gi"}}}}'
bash# 添加仓库 helm repo add longhorn https://charts.longhorn.io helm repo update # 创建自定义 values.yaml cat > values.yaml << EOF defaultReplicaCount: 2 # 副本数设为 2(适用于小规模集群) backupTarget: "nfs://192.168.1.100/backup/longhorn" # NFS 备份目标 storageMinimalAvailablePercentage: 15 # 磁盘可用空间阈值 15% ingress: enabled: true # 启用 Ingress 访问 Longhorn UI hosts: - host: longhorn.example.com paths: ["/"] EOF # 安装/升级 Longhorn helm install longhorn longhorn/longhorn \ --namespace longhorn-system \ --create-namespace \ --version 1.5.1 \ -f values.yaml
注意:生产环境需部署在 Kubernetes 集群,以下为单机模拟示例。
yaml# docker-compose.yml version: '3' services: longhorn-manager: image: docker.xuanyuan.run/longhorn/longhorn-manager:v1.5.1 privileged: true # 需特权模式访问主机设备 network_mode: host # 主机网络(模拟节点通信) environment: - POD_NAMESPACE=longhorn-system - NODE_NAME=test-node - DEFAULT_REPLICA_COUNT=1 - LOG_LEVEL=debug volumes: - /var/run/docker.sock:/var/run/docker.sock - /dev:/dev - /var/lib/longhorn:/var/lib/longhorn - /etc/iscsi:/etc/iscsi
启动:docker-compose up -d
/tmp)存储数据,建议使用持久化磁盘(如 /dev/sdb);您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务