swift和cinder_存储组件Swift和Cinder

swift和cinder

本文介绍了OpenStack存储组件,这些组件可为其他OpenStack项目提供持久存储。

如有关OpenStack计算的文章所述,计算是计算工作负载的核心。 在某些情况下,可能只需要一个计算实例,但是经常需要在实例的整个生命周期中都持续存在的持久存储。 或者可能需要在运行的服务之间共享大量数据。

实际上,在某些情况下,在OpenStack环境之外运行的应用程序取决于复制的,可伸缩的和可靠的存储,而OpenStack存储符合这些规范。 但是在评估替代方案之前,重要的是要认识到OpenStack和许多其他云服务具有两种根本不同的存储服务:

  • OpenStack Swift是对象存储的示例,其概念与Amazon Simple Storage Service类似。
  • 相反,OpenStack Cinder代表块存储,类似于Amazon Elastic Block Store。

块存储(煤渣)

Cinder是OpenStack块存储的项目名称; 它向来宾虚拟机(VM)提供持久性块存储。 对于可扩展文件系统,最佳性能以及与企业存储服务以及需要访问原始块级存储的应用程序的集成,块存储通常是必需的。

该系统可以公开和连接设备,随后管理服务器的创建,连接和脱离。 应用程序编程接口(API)还可简化快照管理,从而可以备份块存储的卷。

对象库(Swift)

Swift是两种产品中较成熟的一种:自OpenStack诞生以来,它一直是核心项目。 Swift充当可访问API的分布式存储平台,可以直接集成到应用程序中,或用于存储VM映像,备份和档案以及较小的文件(例如照片和电子邮件)。

对象存储有两个主要概念-对象和容器。

对象是主存储实体。 它包括内容和与存储在OpenStack对象存储系统中的文件关联的任何可选元数据。 数据以未压缩和未加密的格式保存,并且由对象的名称,其容器以及键值对形式的任何元数据组成。 对象分布在整个数据中心的多个磁盘上,因此Swift可以确保数据复制和完整性。 分布式操作可以利用低成本的商品硬件,同时增强可伸缩性,冗余性和耐用性。

容器类似于Windows®文件夹,因为它是一组文件的存储盒。 容器不能嵌套,但是租户可以创建无限数量的容器。 对象必须存储在一个容器中,因此您必须至少有一个容器才能使用对象存储。

与传统的文件服务器不同,Swift分布在多个系统中。 它自动存储每个对象的冗余副本,以最大程度地提高可用性和可伸缩性。 对象版本控制为防止意外丢失或覆盖数据提供了额外的保护。

迅捷架构

Swift架构包含三个组件-服务器,进程和环。

伺服器

Swift架构是分布式的,可防止出现任何单点故障以及水平扩展。 它包括以下四个服务器:

  • 代理服务器
  • 对象服务器
  • 容器服务器
  • 帐号服务器

代理服务器为OpenStack对象存储体系结构的其余部分提供了统一的接口。 它接受创建容器,上传文件或修改元数据的请求,还可以提供容器列表或当前存储的文件。 收到请求后,它将确定帐户,容器或对象在环中的位置,并将请求转发到相关服务器。

对象服务器是一个简单的服务器,可以上载

你可能感兴趣的:(分布式,大数据,数据库,python,linux)