设为首页 收藏本站
查看: 1166|回复: 0

[经验分享] OpenStack对象存储管理手册(1)关于OpenStack

[复制链接]

尚未签到

发表于 2015-4-12 07:07:08 | 显示全部楼层 |阅读模式
  本文翻译自openstack 官网内容:http://docs.openstack.org/grizzly/openstack-object-storage/admin/content/
  由于我只是关注于openstack对象存储的部分,所以与其他模块有关的东西我没写(或者说我比较懒),如果以后需要的话,可能会补充进来。
  翻译水平有限,如网友阅读过程中发现错误,欢迎批评指正。
  
1. 关于openstack
1.1 为什么需要云
  
  在当今的数据中心中,很多计算机在计算能力和网络带宽的利用率上都是低效的。比如说,项目需要很大的计算能力去完成一个计算,但是在计算完成后就不再需要这些计算能力了。你想要一个按需提供服务的云计算,它具有自动提供服务或终止服务的灵活性,基本不需要你的干预。“云计算”这个短语经常被图中云一样的形状来代表,它预示着与服务有关的责任从用户转移到了提供商。这些图中的云包括提供刚好可以用来完成工作的计算能力的责任。就像我们每天使用的电能一样,云计算为订购者或者用户提供一个共享的资源集合:网络、存储、应用或其他用来完成任务的服务。
  云计算引人注目的特性:
  l  按需自主提供服务:在很少的人为干预下提供服务和网络
  l  网络接入:在网络中任何计算能力都是可用的,很多不同的设备都允许通过标准的机制访问
  l  资源池:用户可以根据需要访问为其他客户服务的云资源
  l  弹性:云资源的提供是迅速的并且根据需要变化规模
  l  可计量的服务:就像是按时付费的设备一样,云可以优化资源利用,控制服务的等级和服务器的类型,比如存储或者程序处理
  根据用户需要的功能,云计算提供不同的服务模型。
  l  SaaS:软件即服务。在云环境中为用户提供使用软件的能力,比如基于web的电子邮件。
  l  PaaS:平台即服务。为用户提供部署应用的能力,这些应用通过云平台所支持的程序设计语言或者工具来部署
  l  IaaS:基础设计即服务。为用户提供基础设施比如计算机、网络连接、存储等,用户可以在这些基础设施上运行任何软件或操作系统。
  当你听到一些词条,比如公有云或私有云时,这些都涉及到云的部署模型。一个私有云为一个单独的组织结构服务,可以在内部部署也可以作为备用设备(on-premise or off-premise这句话不大理解)。公有云是公众或者一个大型产业集团可见的,大部分是云服务公司拥有的。NIST还定义了社区云,它被一些组织所共享,用来支持一个特殊的社区。
  还有混合云,混合云是公有云和私有云的混合模型,或者是包括虚拟和物理服务器的云计算的混合模型。
  人们用云计算做了些什么呢?云计算能满足我们进行大规模计算的需要,通过虚拟服务器的结合充分利用现存硬件,释放出旧硬件的潜力。人们还使用云计算进行协作,因为通过网络互连的计算机进行云计算具有高可用性。字符处理、数值运算、电子邮件交互等很多产业级的套件通过云计算也是可用的。云计算还提供了存储服务,避免了用户购买额外的硬盘,使用户能够在线存储大规模数据。
1.2 为什么需要openstack
  Openstack的使命:为不论大小的公有云和私有云提供可扩展的弹性的云存储。我们的使命的核心是一对基本的需求:云必须应用简单且可进行大规模的扩展。
  如果你刚刚接触openstack,那么毫无疑问你会有关于安装、部署和使用的问题,这些问题在一开始看上去的难以应对的,不过不要害怕,我们有帮助你解决问题的指南,因为这个项目是如此之新并且是持续变化的,你需要持续关注变化的信息,如果你在读一个几个月前的文档,你感觉文档中的内容不完全准确,可以通过发mailing list(https://launchpad.net/~openstack)或提出bug(https://bugs.launchpad.net/openstack-manuals/+filebug)的方式,以使我们能够及时更新或删除。
1.3 Openstack的组件
  现在openstack有七个核心组件:计算(compute)、对象存储(Objectstorage)、认证(Identity)、仪表板(Dashboard)、块存储(Block Storage)、网络(Network)和镜像服务(image service)。我们按顺序介绍他们。
  l  对象存储——Swift
  提供对象存储服务。允许你存储或检索文件(但是并不是像文件服务器一样挂载目录)。一些公司基于Swift提供商业存储服务,包括KT、Rackspace(Swift的发源地)和Internap。很多大公司还使用Swift存储他们内部的数据。
  l  镜像——Glance
  为虚拟磁盘镜像提供目录和资源库。这些磁盘镜像在Openstack计算中是最尝被使用到的,虽然这个服务技术上的可选的,但是任何云都需要它。
  l  计算——Nova
  按需提供虚拟服务器。Rackspace和HP基于Nova提供商业的计算服务,在Mercado Libre和NASA(Nova的发源地)被内部使用。
  l  仪表板——Horizon
  为所有Openstack服务提供一个基于web的模块化的用户界面。使用这个web图形用户界面,你可以在你的云上进行大部分的操作,比如运行一个实例,分配IP地址和设置访问控制权限等。
  l  认证——Keystone
  为所有Openstack服务提供认证和授权服务,还提供各种服务的服务目录
  l  网络——Quantum
  在其他Openstack服务管理的接口设备间提供“网络连接即服务”。允许用户创建自己的网络并且为它附加接口。Openstack网络有一个可插入式的结构来支持很多流行的网络供应商和技术。
  l  块存储——Cinder
  为客户虚拟机提供持久的块存储。
  在这些服务之外,还有一些被考虑将来整合到Openstack中。
1.4 概念结构
  Openstack项目整体的设计目标是完成一个可进行大规模扩展的云操作系统。为了达到这个目标,组成openstack的每一个服务都要和其他服务协同工作来提供一个完成的IaaS。我们使用每一个服务所提供的API来进行整合,这些API允许每个服务使用另外的服务,还允许一个实施者关闭任何服务。对于云的终端用户来说,这些API都是一样的。
  从概念上讲,各个服务之间的关系如下:
DSC0000.jpg
  
  l  仪表板(“Horizon”)为其他的openstack服务提供一个web前端
  l  计算(“Nova”)存储和检索细腻磁盘(“images”)并且和镜像服务(“Glance”)中的元数据相关联
  l  网络(“Quantum”)为计算服务提供虚拟网络
  l  块存储(“Cinder”)为计算服务提供存储卷
  l  镜像服务(“Glance”)可以在对象存储(“Swift”)中存储虚拟磁盘文件
  l  所有的服务都通过认证服务(“Keystone”)进行认证。
1.5 逻辑结构
  下图给出了openstack主要模块的一些细节,这些细节不是详尽的,目的是描述一下管理员需要知道的方面来更好地理解如何设计部署、安装和配置这个平台。
  模块根据他们所属的功能组织起来,并根据他们的类型进行分类。
  这些类型包括:
  l  守护进程:以守护进程运行,在linux平台上,通常作为一个服务来安装
  l  脚本:当一些事件发生时,通过外部模块来运行的脚本
  l  客户端:一个访问服务所绑定的python的客户端
  l  CLI:一个提交命令的命令行解释器
  就像你可以想象的一样,逻辑结构比概念结构复杂得多。像任何面向服务的结构一样,结构图在试图解释所有服务交互的关联时迅速变得混乱。下面的结构图解释了一个基于openstack云的最普通的架构。
DSC0001.jpg
  
  1.5.1 仪表板(Dashboard)
  Horizon是一个模块化的Djangoweb应用,为终端用户提供了openstack服务的管理接口。
  就像大部分web应用一样,结构比较简单:
  l  Horizon通过Apache的mod_wsgi部署。代码本身分为具有大部分逻辑的可重用的python模块和界面呈现。
  l  一个数据库。依赖于其他服务的数据,本身的数据很少
  从网络架构的观点来看,这个服务需要能被用户访问并且能够和每个服务的公有API交互。如果你想使用管理功能,需要连接到他们的Admin API终端(endpoint)(这个不是一般用户可以访问的)
  
  1.5.2 计算(Compute)
  Nova是openstack中最复杂,分布性最强的组件。大量的进行合作来将用户API的请求递交到运行的虚拟机上,主要的模块是使用python执行的,下面的list以功能性划分:
  API
  l  Nova-api
  接受并响应终端用户的计算功能API请求。它支持openstack 计算服务API、亚马逊 EC2 API和一个特殊的Admin API(为有优先级的用户执行管理操作而设置)。它还初始化大部分的分配活动(比如运行一个实例)并强制执行一些策略
  l  Nova-api-metadata
  从实例接收元数据请求,一般只在安装了nova-network的多主机环境下运行。
  计算核心(computing core)
  l  Nova-compute
  l  Nova-schedule
  l  Nove-conductor
  虚拟机的网络(networking for VMs)
  l  Nova-network
  l  Nova-dhcpbridge
  控制台接口(Console interface)
  l  Nova-consoleauth
  l  Nova-novncproxy
  l  Nova-console
  l  Nova-xvpnvncproxy
  l  Nova-cert
  镜像管理(EC2方案)
  l  Nova-objectstore
  l  Euca2ools
  命令行解释器/接口
  
  1.5.3对象存储(object store)
  Swift的结构非常分布化,以防止任何单节点故障以及增强水平扩展性。它包括如下组件:
  l  代理服务器(swift-proxy-server)
  通过openstack 对象API或原始的HTTP请求来接收外面传来的请求。它接收上传的文件、对元数据的修改或者容器的创建。另外,它还对web浏览器提供文件或容器的列表。代理服务器利用可选的缓存(比如memcache)来提升性能
  l  账户服务器
  管理对象存储服务定义的账户
  l  容器服务器
  管理对象存储服务的一个容器映射
  l  对象服务器
  管理存储节点的实际对象
  l  还有一些周期性的进程针对大数据存储来执行housekeeping任务。这其中最重要的就是副本服务,用来保证一致性和可用性。其他周期性的进行包括审计、更新等。
  身份认证是通过可配置的WSGI中间件执行的。(WSGI:服务器网关接口)
  
  1.5.4镜像存储(image store)
  1.5.5身份认证(identity)
  1.5.6网络(Network)
  1.5.7块存储(Block Storage)
1.6 存储概念
  存储涉及到openstack的很多部分,不同的类型会给我们带来一些困扰,甚至是一些有经验的云工程师。
DSC0002.jpg
  
  l  Openstack对象存储的使用方法并不像传统的硬盘。对象存储放宽POSIX类型文件系统的限制,对它的访问时基于API的(API使用http)。你不用提供原子操作,依赖于最终一致性,可以轻松扩展一个存储系统,避免中心节点的失效。
  l  Openstack镜像服务用来管理openstack集群的虚拟机镜像,并不是存储它们。它提供了一个对不同存储方法的抽象。
  l  Openstack对象存储功能可以独立执行,swift产品能够独立于nova产品而使用。
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-56125-1-1.html 上篇帖子: 四大主流云平台对比--CloudStack, Eucalyptus, vCloud Director和OpenStack。 下篇帖子: 再次祝贺OpenStack私有云搭建成功
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表