1. Longhorn是什么?
Longhorn 是一个基于Kubernetes环境,轻量级的、可信赖的、功能强大的分布式块存储系统。
Longhorn是一个免费的开源软件。它最初由Rancher实验室研发,现在被列为云原生计算基金会(CNCF)的孵化项目。
Longhorn采用容器和微服务技术实现了分布式块存储。Longhorn为每个块设备卷创建一个专门的存储控制器,并且对多个节点上存储副本中的卷进行实时复制。
Longhorn支持下列架构:
2. Longhorn有哪些功能?
- Longhorn的卷可以作为Kubernetes集群中分布式有状态应用的存储。
- 可以将块存储划分为Longhorn卷,以便在有或没有云提供商的情况下使用Kubernetes卷。
- 可以跨节点和数据中心复制块存储,从而提高可用性。
- 可以在外部存储上存储备份数据,例如:NFS或AWS S3。
- 可以创建跨群集灾难恢复卷,以便从备用的Kubernetes集群的备份中快速恢复来自主Kubernetes群集的数据。
- 可以为卷设置计划,对卷定期生成快照,并把快照备份到NFS或者兼容S3的备用存储中。
- 支持从备份中恢复卷。
- 支持不中断卷服务的情况下进行升级。
3. 运行Longhorn的前提
- 一个正常运行的Kubernetes集群
- 集群每个节点已经安装下列软件包,并正常启动
- open-iscsi(iscsid服务)
- nfs-utils或nfs-common
4. 如何安装?
kubectl apply -f https://raw.githubusercontent.com/longhorn/longhorn/v1.2.3/deploy/longhorn.yaml
等待namespace: longhorn-system下的pods都正常启动即安装成功。
5. 如何管理Longhorn?
Longhorn提供了图形页面进行节点和卷的管理,你可以在页面中可视化地创建PV和PVC。