




免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
OpenStack 里的三种存储 发表于 2013 03 29 10 01 6129 次阅读 来源 Eric 或雪菲个人博客 1 条评论 作者 Eric 或雪菲 OpenStack 存储 摘要 摘要 Openstack 通过两年多发展 变得越来越庞大 这也是为了满足更多不同的需求 体现出开源项目灵活快速的特性 Openstack 作为一个开放的系统 最主要是可以随时选 择新的硬件供应商 当然也可以替换软件技术服务的提供商 不用动应用 这是开源本身 的优势 OpenStack 其实有三个与存储相关的组件 这三个组件被人熟知的程度和组件本身出现时 间的早晚是相符的 按熟悉程度排列如下 Swift 提供提供对对象存象存储储 Object Storage 在概念上类似于 Amazon S3 服务 不过 swift 具有很强的扩展性 冗余和持久性 也兼容 S3 API Glance 提供虚机提供虚机镜镜像 像 Image 存 存储储和管理和管理 包括了很多与 Amazon AMI catalog 相 似的功能 Glance 的后台数据从最初的实践来看是存放在 Swift 的 Cinder 提供提供块块存存储储 Block Storage 类似于 Amazon 的 EBS 块存储服务 目前 仅给虚机挂载使用 Amazon 一直是 OpenStack 设计之初的假象对手和挑战对象 所以基本上关键的功能模 块都有对应项目 除了上面提到的三个组件 对于 AWS 中的重要的 EC2 服务 OpenStack 中是 Nova 来对应 并且保持和 EC2 API 的兼容性 有不同的方法可以实现 三个组件中 Glance 主要是虚机镜像的管理 所以相对简单 Swift 作为对象存储已经很 成熟 连 CloudStack 也支持它 Cinder 是比较新出现的块存储 设计理念不错 并且和 商业存储有结合的机会 所以厂商比较积极 Swift 关于 Swift 的架构和部署讨论 除了官方网站 网上也有很多文章 这里就不重复 也可以 参考我之前在 OpenStack 中国行活动中上海站演讲的 PPT 从开发上看 最近也没有太 大的结构性调整 所以我想主要说说比较适用的应用领域好了 从我所了解的实际案例来看 Swift 出现的领域有 4 个 应该还有更多 希望大家看到实 际用例能够指教 1 网盘 Swift 的对称分布式架构和多 proxy 多节点的设计导致它从基因里就适合于多用户大并发的 应用模式 最典型的应用莫过于类似 Dropbox 的网盘应用 Dropbox 去年底已经突破一亿 用户数 对于这种规模的访问 良好的架构设计是能够支撑的根本原因 Swift 的对称架构使得数据节点从逻辑上看处于同级别 每台节点上同时都具有数据和相关 的元数据 并且元数据的核心数据结构使用的是哈希环 一致性哈希算法对于节点的增减 都只需重定位环空间中的一小部分数据 具有较好的容错性和可扩展性 另外数据是无状态 的 每个数据在磁盘上都是完整的存储 这几点综合起来保证了存储的本身的良好的扩展 性 另外和应用的结合上 Swift 是说 HTTP 协议这种语言的 这使得应用和存储的交互变得简 单 不需要考虑底层基础构架的细节 应用软件不需要进行任何的修改就可以让系统整体 扩展到非常大的程度 2 IaaS 公有云 Swift 在设计中的线性扩展 高并发和多租户支持等特性 使得它也非常适合做为 IaaS 的 选择 公有云规模较大 更多的遇到大量虚机并发启动这种情况 所以对于虚机镜像的后 台存储具体来说 实际上的挑战在于大数据 超过 G 的并发读性能 Swift 在 OpenStack 中一开始就是作为镜像库的后台存储 经过 RACKSpace 上千台机器的部署规 模下的数年实践 Swift 已经被证明是一个成熟的选择 另外如果基于 IaaS 要提供上层的 SaaS 服务 多租户是一个不可避免的问题 Swift 的架 构设计本身就是支持多租户的 这样对接起来更方便 3 备份归档 RackSpace 的主营业务就是数据的备份归档 所以 Swift 在这个领域也是久经考验 同时 他们还延展出一种新业务 热归档 由于长尾效应 数据可能被调用的时间窗越来越长 热归档能够保证应用归档数据能够在分钟级别重新获取 和传统磁带机归档方案中的数小 时而言 是一个很大的进步 4 移动互联网和 CDN 移动互联网和手机游戏等产生大量的用户数据 数据量不是很大但是用户数很多 这也是 Swift 能够处理的领域 至于加上 CDN 如果使用 Swift 云存储就可以直接响应移动设备 不需要专门的服务器 去响应这个 HTTP 的请求 也不需要在数据传输中再经过移动设备上的文件系统 直接是 用 HTTP 协议上传云端 如果把经常被平台访问的数据缓存起来 利用一定的优化机制 数据可以从不同的地点分发到你的用户那里 这样就能提高访问的速度 我最近看到 Swift 的开发社区有人在讨论视频网站应用和 Swift 的结合 窃以为是值得关注的方向 Glance Glance 比较简单 是一个虚机镜像的存储 向前端 nova 或者是安装了 Glance client 的 其他虚拟管理平台 提供镜像服务 包括存储 查询和检索 这个模块本身不存储大量的 数据 需要挂载后台存储 Swift S3 来存放实际的镜像数据 Glance 主要包括下面几个部分 l API service glance api 主要是用来接受 Nova 的各种 api 调用请求 将请求放入 RBMQ 交由后台处理 l Glacne registry 用来和 MySQL 数据库进行交互 存储或者获取镜像的元数据 注意 刚才在 Swift 中提到 Swift 在自己的 Storage Server 中是不保存元数据的 这儿的元数据 是指保存在 MySQL 数据库中的关于镜像的一些信息 这个元数据是属于 Glance 的 l Image store 后台存储接口 通过它获取镜像 后台挂载的默认存储是 Swift 但同时 也支持 Amazon S3 等其他的镜像 Glance 从某种角度上看起来有点像虚拟存储 也提供 API 可以实现比较完整的镜像管理 功能 所以理论上其他云平台也可以使用它 Glance 比较简单 又限于云内部 所以没啥可以多展开讨论的 不如看看新出来的块存储 组件 Cinder 目前我对 Cinder 基本的看法是总体的设计不错 细节和功能还有很多需要 完善的地方 离一个成熟的产品还有点距离 Cinder OpenStack 到 F 版本有比较大的改变 其中之一就是将之前在 Nova 中的部分持久性块存 储功能 Nova Volume 分离了出来 独立为新的组件 Cinder 它通过整合后端多种存储 用 API 接口为外界提供块存储服务 主要核心是对卷的管理 允许对卷 卷的类型 卷的 快照进行处理 Cinder 包含以下三个主要组成部分 API service Cinder api 是主要服务接口 负责接受和处理外界的 API 请求 并将 请求放入 RabbitMQ 队列 交由后端执行 Cinder 目前提供 Volume API V2 Scheduler service 处理任务队列的任务 并根据预定策略选择合适的 Volume Service 节点来执行任务 目前版本的 cinder 仅仅提供了一个 Simple Scheduler 该调度 器选择卷数量最少的一个活跃节点来创建卷 Volume service 该服务运行在存储节点上 管理存储空间 塔处理 cinder 数据库 的维护状态的读写请求 通过消息队列和直接在块存储设备或软件上与其他进程交互 每 个存储节点都有一个 Volume Service 若干个这样的存储节点联合起来可以构成一个存储 资源池 Cinder 通过添加不同厂商的指定 drivers 来为了支持不同类型和型号的存储 目前能支持 的商业存储设备有 EMC 和 IBM 的几款 也能通过 LVM 支持本地存储和 NFS 协议支持 NAS 存储 所以 Netapp 的 NAS 应该也没问题 好像华为也在努力中 我前段时间还在 Cinder 的 blueprints 看到 IBM 的 GPFS 分布式文件系统 在以后的版本应该会添加进来 到目前为止 Cinder 主要和 Openstack 的 Nova 内部交互 为之提供虚机实例所需要的 卷 Attach 上去 但是理论上也可以单独向外界提供块存储 部署上 可以把三个服务部署在一台服务器 也可以独立部署到不同物理节点 现在 Cinder 还是不够成熟 有几个明显的问题还没很好解决 一是支持的商业存储还不够 多 而且还不支持 FC SAN 另外单点故障隐患没解决 内部的 schedule 调度算法也太简 单 另外由于它把各种存储整合进来又加了一层 管理倒是有办法了 但是效率肯定是有 影响 性能肯定有损耗 但这也是没办法的事了 Openstack 通过两年多发展 变得越来越庞大 目前光存储就出现了三种 对象存储 镜 像存储和块存储 这也是为了满足更多不同的需求 体现出开源项目灵活快速的特性 总 的说来 当选择一套存储系统的时候 如果考虑到将来会被多个应用所共同使用 应该视 为长期的决策 Openstack 作为一个开放的系统 最主要是解决软硬件供应商锁定的问题 可以随时选择新的硬件供应商 将新的硬件和已有的硬件组成混合的集群 统一管理 当 然也可以替换软件技术服务的提
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- project考试试题及答案
- 电缆厂检验知识培训课件
- 电煤知识培训内容摘要模板课件
- 本科线性代数考试题目及答案
- 高热惊厥科普课件
- Nicomol-Standard-生命科学试剂-MCE
- Acedapsone-d8-生命科学试剂-MCE
- MEDI-8852-生命科学试剂-MCE
- 保险学第七版考试题库及答案
- 专升本考试题目及答案
- 2025至2030中国PCIE行业项目调研及市场前景预测评估报告
- 2025广东深圳市光明区统计局招聘(选聘)专干4人笔试参考题库附答案解析
- 2025年人防工程试题及答案
- 安全烹饪知识培训内容课件
- 中小学校长在2025秋季开学第一次全体教师大会上讲话:人心决定温度人格决定高度人品决定厚度
- 2025年cnc初级技工考试题及答案
- 露天煤矿无人驾驶技术应用发展报告
- 复变函数与积分变换全套课件
- GB∕T 708-2019冷轧钢板和钢带的尺寸、外形、重量及允许偏差
- 压力容器检验师培训压力容器检验测试技术课件
- 高一新生入学家长会课件(PPT 23页)
评论
0/150
提交评论