Longhorn manager是管理Longhorn分布式块存储集群的核心组件,负责在Kubernetes环境中协调存储节点、卷生命周期管理及数据高可用,提供持久化存储解决方案。
收藏数: 4
下载次数: 108572014
类型:

longhornio/longhorn-managerLonghorn 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 部署。
bash# 添加 Longhorn Helm 仓库 helm repo add longhorn [***] helm repo update # 安装 Longhorn(含 manager、engine、ui 等组件) helm install longhorn longhorn/longhorn \ --namespace longhorn-system \ --create-namespace \ --version 1.5.1 # 指定版本(需与 K8s 版本兼容,详见官方文档)
bash# 部署 Longhorn 核心组件(含 manager) kubectl apply -f [***]
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 |
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
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 名称。bash# 修改 PVC 的 storage.requests 字段 kubectl patch pvc longhorn-pvc -p '{"spec":{"resources":{"requests":{"storage":"20Gi"}}}}'
bash# 添加仓库 helm repo add longhorn [***] 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: 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);您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 版本下载页面。






manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务