openstack 介绍

云计算

    云计算是一种计算模式,使资源如计算能力、存储、网络和软件抽象化并像服务一样以远程访问的方式在网络上提供,这些服务的计费模式类似公共事业。按需使用、配置简单、动态的和几乎无限的可扩展性是云计算的主要特征。一个使用云计算模式安装的基础机构通常称作云,以下是在云上可用服务的大类:

     ·基础架构即服务(laaS)

     ·平台即服务(PaaS)

     ·软件即服务(SaaS)

亚马孙网络服务(AWS)是laaS的主要参与者之一,AWS有两个很受欢迎的服务-弹性云计算(EC2)和简单存储服务(s3),可以通过web服务。

Open Stack

      OpenStack是一个开源软件项目的集合,企业/服务供应商可以用它来安装和运行自己的云计算和存储基础设施。Rackspace公司 和 美国宇航局是主要的最早的stack的贡献者,Rackspace公司贡献了自己的“云文件”平台(代码)作为OpenStack对象存储部分,而美国宇航局贡献了他们的“星云”平台(代码)作为计算部分。不到一年时间,OpenStack财团已经有超过100个成员,包括Canonical,戴尔,思杰等。OpenStack的服务能兼容亚马逊的EC2/S3 API,因此为AWS写的客户端在OpenStack也能很好的工作。

OpenStack有3个主要的服务成员

      计算基础架构(Nova)

      存储基础架构(Swift)

      镜像服务(Glance)

OpenStack 计算基础架构(Nova)

      Nova是OpenStack云计算架构控制器,支持OpenStack云内的实例的生命周期所需的所有活动由Nova处理。Nova作为管理平台管理着OpenStack云里的计算资源、网络、授权、和扩展需求。但是,Nova不能提供本身的虚拟化功能,相反,它使用libvirt的API来支持虚拟机管理程序交互。Nova 通过web服务接口开放他的所有功能并兼容亚马逊web服务的EC2接口。

功能和特性

     ·实例生命周期管理

     ·计算资源管理

     ·网络规划和授权

     ·基于API的支持

     ·异步通信最终一致

     ·管理未知:支持Xen,XenServer/XCP,KVM,UML,VMware vSphere 和Hyper-V

OpenStack计算的组成部分

Nova 云组织由以下主要组件组成:

     ·API 服务(nova-api)

     ·信息队列(rabbit-mq server)

     ·计算器(nova-compute)

     ·网络控制器(nova-nework)

     ·卷管理器(nova-volume)

     ·调度器(nova-scheduler)


API 服务(nova-api):提供了个一个云基础设施和外部世界交互的接口。API服务是外部世界管理设施的唯一的组件。管理通过web 服务调用EC2 API来完成,然后API服务,反过来通过消息队列和云基础设施的相关组件通信。作为替代的EC2 API,OpenStack也提供了一个原装的API叫“OpenStack API”。

消息队列(Rabbit MQ Server):OpenStack云控制器和其他nova组件通信像调度器、网络控制器、通过AMQP的卷控制器(高级信息队列协议)。Nova使用异步调用请求响应,一旦收到响应即获得回拨触发。自从使用了异步通信,没有用户的操作会长期处于等待状态。这是特别有用的,因为对API的许多动作调用有期待,如启动一个实例或上传镜像的时间消耗。

计算器(nova-compute):处理实例管理生命周期,他们通过消息队列获得生命周期管理的请求并开始操作,在一个典型的产品云部署中有不同的计算器。基于使用调度算法,一个实例可以部署在很多可用的计算器上。

网络控制器(nova-network):处理主机的网络配置,如:分配IP地址、为对象配置VLANs、实现安全组和计算节点的网络。

卷管理器(nova-volume):用于管理基于LVM的实例卷,卷管理器执行卷的相关操作如建立、删除、挂载卷到实例、从实例卸载卷。卷提供了一个通过实例使用永久存储的方式,作为主磁盘,非永久性的连接到一个实例,那么当卸载卷或者实例中断时它所做的任何更改都将丢失卷。当从实例卸载卷或者当一个挂载卷的实例结束了,他保存了之前挂载的实例存储在其上得数据。通过再次挂载到一样的或者是其他不一样的实例可以访问到这些数据。实例的生命周期积累的所有有价值的数据都要写入卷,因此可以访问以后,这通常适用于数据库服务器等的存储需求。

调度器(nova-scheduler):使得nova-API调用适合的openstack组件,他运行一个叫做nova-schedule的守护进程并且依赖于运行在其上的调度算法从可用资源池中收集计算机服务/网络服务/卷服务。调度器的判断基于各种因素,如负载、内存、可用区域的物理距离,CPU架构等,nova调度器实现了可拔插的体现结构

当前的nova-scheduler实现了一些基本的调度算法:

     ·偶然性:这个方式中,计算主机跨可用区域随机选择

     ·可用性区域:和偶然性类似,但是计算主机在一个指定的可用区域中随机选择

    ·简单性:在这个方式中,主机的负载至少要选择运行实例,负载信息可以从负载平衡器中获取

OpenStack 存储架构(Swift)

Swift为OpenStack提供了分布式的、最终一致的虚拟对象存储。他和亚马逊的web服务-简单存储服务(S3)类似,通过分布式的穿过节点,Swift有能力存储数十亿计的对象,Swift具有内置冗余、容错管理、存档、流媒体的功能。他是高度扩展的,不论大小(多个PB级别)和能力(对象的数量).

功能和特性

     ·存储巨大数量的数据对象

     ·存储巨大容量的对象

     ·数据冗余

     ·日志功能—和大数据集工作

     ·虚拟机和云应用的数据容器

     ·流媒体能力

     ·可靠的对象存储

     ·备份和日志

     ·高度的可扩展

Swift组件

     ·Swift 帐户

     ·Swift容器

     ·Swift对象

     ·Swift代理

     ·环

Swift代理服务器:消费者通过代理服务器使用SWIFT API迅速设置交互,代理服务器的把关,并接收来自世界请求。它查找合适的实体的位置并路由请求到他们。代理服务器还处理实体失效,通过重新路由请求到故障转移的实体。

Swift 对象服务器:对象服务器是一个blob存储,他的责任是处理存储、从本地存储中检索和删除对象。对象通常是在元数据的文件系统中存储的二进制文件包含了扩展的文件属性(xattr)。注意:xattr支持的文件系统包括ext3、ext4、XFS、Btrfs、JFS andReiserFS in linux。But it is known to work best underXFS、JFS、Reiser4、and ZFS。XFS是最好的选择。

Swift 容器服务器:容器服务器列出了在容器中的对象,清单存储为SQLite文件,容器服务器还跟踪像包含的对象数目和容器所占用的存储大小

Swift帐户服务器:帐户服务器使用容器服务器列出对象一样的方法列出容器清单

:环包含了存在Swift中的对象的物理地址的信息。它是虚拟表示实体的名称映射到其真实的物理位置,他类似于索引服务,使用各种进程查找和定位集群内实体机的真实物理地址。实体机如帐户、容器、对象都有自己独立的环。

 OpenStack 镜像服务(Glance)

OpenStack镜像服务查找和检索虚拟机的镜像系统,它可以被配置为使用以下3个存储后端的任何一个:

    ·OpenStack 对象存储到存储镜像

    ·S3存储直连

    ·S3存储结合对象存储成为中间级的S3访问

功能和特点(Glance)

     ·提供镜像服务

Openstack镜像服务的组件(Glance)

     ·Glance-control

     ·Glance-registry


 


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值