基于开源软件构建存储解决方案的思考

近来看了一些IBM的存储产品的资料,有一些收获。

依据存储软件和搭配硬件,IBM存储产品的组合,大致分类如下:

本文主要梳理基于开源软件搭配通用服务器硬件来构建存储系统的思路和工作任务清单,涉及角色如下:

  • 规划团队
  • 研发团队
  • 资料团队
  • 运维团队

下文讨论各团队的职责和交付件。

规划团队

依据业务场景,站在业务视角观察存储系统,依据业务的数据规模、增长模型等,评估并输出业务访问模型、存储的功能诉求、存储的性能模型等。

工作输入,如下:

  • 业务场景,比如:
    • 数据当前规模
    • 增长模型
    • 运算量
    • 运算的位置
  • 数据特征,比如:
    • 文件来源
    • 文件数量
    • 文件大小
    • 文件的时效性比如访问热度、数据存储时长
  • 业务团队,关注人的特征,比如:
    • 团队阵型
      • 运营团队
      • 运维团队
      • 开发团队
      • 测试团队
    • 人力模型,比如学历、年龄、经验
    • 技能模型
    • 工作习惯
    • 工作交付件
    • 工作模式
  • 业务预算
    • 来源
    • 规模
    • 评估方案

工作输出,如下:

  • 典型组网
    • 交换机
    • 网络
  • 产品组合方案
    • 软件
      • 开源软件
      • 操作系统发行版
      • 操作系统内核
    • 硬件
      • 服务器
      • CPU
      • 内存
      • 网卡
      • 网线
  • 功能规格
  • 性能规格
  • 验收方案

目前常见的开源存储软件,比如:

规划团队需要依据客户的诉求、业务场景、自身团队的特点等,综合考虑,配置不同的解决方案。

研发团队

研发团队承接开发和验证两个职能,相关的工作任务包括兼容性看护、交付能力构建、社区协同等。

兼容性看护

依据规划团队交付的典型组网和组合方案:

  • 本存储方案中软件和硬件的兼容性,输出各硬件、软件的配置参数模板和指导书。
  • 本存储方案中涉及到的系统软件的兼容性,系统软件包括操作系统、操作系统的内核、编译器等。
  • 本存储方案和上层业务之间的兼容性,输出验证结果和规避方案。
  • 本存储方案和周边存储系统的兼容性
    • 数据传输时使用的协议,比如NFS、CIFS、S3等兼容性。
    • 传输方案,包括可用性,可靠性等。
交付能力构建

依据规划团队交付的典型组网和组合方案:

  • 验证典型组网的可行性。
  • 基于典型组网,构建性能基线。
  • 性能指标,比如带宽、IOPS、时延、吞吐量、客户端的数量等。
  • 功能指标,比如用户存储可得容量、节点数量、盘数量等。
  • 其它指标,比如功耗、故障率、停机时间等。
  • 构建持续交付能力
    • 搭建流水线,从源码实施编译、构建、部署、升级、验证等。
    • 积累自动化用例,支撑方案快速迭代,提升交付效率。
  • 质量加固,比如:
    • 修复安全漏洞。
    • 更新依赖的开源软件,支撑选型和更新版本。
    • 修复、验证存储软件的问题。
与社区的协同

与客户的协同,获取客户的诉求,并及时做出反馈,提升客户的参与度和满意度。

与上层业务应用的协同,参与上层业务应用的技术交流,了解业界的变化、方案和痛点,及时做出变更和调整。

与开源软件社区的协同,积极反馈发现的问题,寻求社区的协助,同时量力而行,参与社区的各项工作。

资料团队

和研发团队紧密合作,依照交付规范,输出如下研资料,如下:

  • 技术规格清单
  • 业务评估模型
  • 典型应用场景
  • 典型组网规划和业务配置
  • 技术培训材料
  • 业务培训材料
  • 常见问题和案例

依照宣传规范,输出如下资料,如下:

  • 技术宣传材料
  • 规划指导书
  • 安装、升级、扩容、巡检指导书
  • 业务特性指南
  • 运维指南
    • 存储业务
    • 存储软件
    • 系统软件
    • 硬件,包括服务器、盘、交换机等

运维团队

运维团队主要的工作任务在于支撑下游客户更好的使用存储系统提供的服务,同时在工作中积累运维经验,固化为相应的流程和工具。

运维团队的工作对象,包含如下:

  • 存储业务
  • 存储软件
  • 系统软件
  • 硬件,包括服务器、盘、交换机等

运维团队建设能力时,可行的思路如下:

  • 参照开源软件的官方文档的推荐方案。
  • 基于客户的实践经验。
  • 参照友商的实践经验、成功故事。
  • 梳理团队自身的经验和教训。

运维团队建设的能力,比如:

参考资料

相关推荐
core5125 小时前
flink sink doris
大数据·mysql·flink·doris·存储·sink·过程正常
猫头虎1 天前
新纪天工 开物焕彩:重大科技成就发布会参会感
人工智能·开源·aigc·开放原子·开源软件·gpu算力·agi
运维小文2 天前
K8S中的PV、PVC介绍和使用
docker·云原生·容器·kubernetes·存储
鹏大师运维3 天前
聊聊开源的虚拟化平台--PVE
linux·开源·虚拟化·虚拟机·pve·存储·nfs
Amd7943 天前
PostgreSQL 的历史
postgresql·开源软件·计算机科学·软件开发·关系型数据库·数据库技术·数据库历史
Pocker_Spades_A5 天前
阿里云-通义灵码:在 PyCharm 中的强大助力(上)
阿里云·开源软件
Anna_Tong6 天前
探索 CI/CD 工具的力量
ci/cd·开源·jenkins·开源软件·devops
vvw&8 天前
如何在 Ubuntu 22.04 上安装 pgAdmin:一个 PostgreSQL 管理工具
linux·运维·服务器·ubuntu·postgresql·开源软件·pgadmin
donnie4w12 天前
tklog0.2.8—Rust高性能日志库
后端·性能优化·rust·开源软件
xinxin882212 天前
恢复删除的文件:6个免费Windows电脑数据恢复软件
人工智能·windows·智能手机·pdf·电脑·笔记本电脑·开源软件