云计算|OpenStack|Swift道术
2018-07-23 05:29:16来源:中国云计算网 阅读 ()
OpenStack Object Storage Service(Swift)架构之道,应用之术,纯干货分享。
一、术语定义
CAP理论:由Eric Brewer提出,Consistency(一致性),Availability(高可用),Partition Tolerance(分区容忍性),一个存储系统最多同时满足其中2条,CA、CP、AP。
二、架构之道
2.1架构原理:
swift-proxy-server:提供REST API,根据User请求,在Ring中查找目标位置,将请求转发给account、container或object服务。无状态服务,可以A/A水平扩展。
authentication-server:User身份认证,可以与Keystone结合使用,具体做法是通过在/etc/swift/proxy-server.conf中添加filter:authtoken和filter:keystoneauth。
swift-account-server:存储account的metadata信息和container列表。
swift-container-server:存储container的metadate信息和object列表。
swift-object-server:存储object的metadata和data信息。
swift-account/container/object-replicator:检测本地副本和远程副本是否一致,若不一致,则更新远程副本。周期任务。
swift-account/container/object-auditor:检查account、container、object的完整性,若发现错误,则复制远程副本覆盖本地损坏副本。周期任务。
swift-container/object-updater:当副本未及时更新时,自动进行更新。周期任务。
swift-account-reaper:删除被标记为删除的账户,及其拥有的容器和对象。
2.2 数据模型:
Swift采用三层数据模型:一个account(租户)可以创建多个container(容器),一个container可以包含多个object(对象)。
2.3 Ring环:
Swift建立了account ring、container ring和object ring,通过ring环实现accountcontainerobject到目标地址映射,具体做法是:通过一致性Hash计算出accountcontainerobject的Hash值,向右移除m位,形成2^(32-m)个虚拟节点,[0, 2^m-1]映射到虚拟节点P0,[2^m, 2^(m+1)-1]映射到虚拟节点P1,依次类推,[2^(32-m), 2^32-1]映射到虚拟节点P2^(32-m),计算出虚拟节点Pi后,找到device位置,再从device中找到data。
2.4 最终一致性:由于CAP原理限制,Swift选择了AP,而没有选择C,实现了高可用和分区容忍,没有实现强一致性,而是通过Replicator、Updater、Auditor实现最终一致性。
三、应用之术
作为对象存储系统的固有特性,Swift不适合对实时性要求高的场景,适合静态非结构化数据场景,例如:虚拟机image、图片、邮件、归档、备份等数据。在一些落地方案中,Swift可以作为Glance的存储后端,存储image数据。当然,Swift可以独立于OpenStack而独立存在,已经应用到很多生产环境。
四、学习之路
大咖之路:懂业务、懂原理、懂研发、懂运维、懂贡献
本源之路:OpenStack官网
[1] https://launchpad.net/
[2] https://www.openstack.org/
[3] https://docs.openstack.org/
[4] https://ask.openstack.org/
[5] https://review.openstack.org/
[6] https://github.com/openstack/
[7] http://stackalytics.com/
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 中国云计算市场保持高速增长 2021-04-23
- 云计算的总体拥有成本怎样算出来 2020-01-09
- 中国联通发力5G+云计算,发布沃云云计算战略 2019-12-23
- 滴滴携NVIDIA合作共推自动驾驶和云计算领域发展 2019-12-19
- 2020年预测:云计算将发生什么 2019-12-16
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash