openstack学习手册

上传人:第*** 文档编号:61701429 上传时间:2018-12-10 格式:PDF 页数:17 大小:1.13MB
返回 下载 相关 举报
openstack学习手册_第1页
第1页 / 共17页
openstack学习手册_第2页
第2页 / 共17页
openstack学习手册_第3页
第3页 / 共17页
openstack学习手册_第4页
第4页 / 共17页
openstack学习手册_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《openstack学习手册》由会员分享,可在线阅读,更多相关《openstack学习手册(17页珍藏版)》请在金锄头文库上搜索。

1、 OpenStack 学习手册 OpenStack 是一种免费的开源平台,帮助服务提供 商实现类似于亚马逊 EC2 和 S3 的基础设施服务。 OpenStack 当前有三个核心项目:计算(Nova),对象 存储(Swift),镜像管理(Glance)。每个项目可以独立 安装运行,该文档将帮助您快速学习 OpenStack。 皮丽华皮丽华 2012/5/3 目录目录 OpenStack 背景现状 2 OpenStack 是什么? 2 OpenStack 核心项目 2 OpenStack 版本信息 3 OpenStack 功能 . 3 OpenStack 架构 4 OpenStack 项目架构一

2、: Compute(Nova)的软件架构 . 4 Nova 组件的作用 . 5 Nova 的硬件架构 . 6 Nova 功能介绍 . 8 OpenStack 项目架构二: Swift 架构 . 8 Swift 功能 . 8 OpenStack 项目架构三 Glance 架构 . 9 Glace 组件架构 . 9 Glace 组件架构特性 . 9 OpenStack 功能 10 Openstack 创建 instance 的流程 . 10 OpenStack 在企业中的应用 13 新浪云计算加入开源云计算项目 OpenStack 14 展望未来:OpenStack 发力 . 15 OpenSta

3、ck 背景背景现状现状 OpenStack 是由 Rackspace Cloud 和 NASA(美国航天局)于 2010 年 7 月开始共同开发支持, 整合了 Rackspace 的 Cloud Files platform 和 NASA 的 Nebula platform 技术,目的是能为任何 一个组织创建和提供云计算服务。 目前,超过 150 家公司参与了这个项目,包括 Crtrix Systems, Dell, AMD, Intel, Cisco, HP 等。 OpenStack 最近发布了 Austin 产品,它是第一个开源的云计算平台,它是基于 Rackspace 的 云服务器加上云

4、服务,以及 NASA 的 Nebula 技术发布的。 似乎是作为对此的响应,Amazon 为新用户提供一年的AWS免费使用方式。 在OpenStack发布Austin之后, 微软也宣称Windows Server 2008 R2 Hyper-V 可以与 OpenStack 整合。 微软会为 C 提供架构和技术上的 指引,它会编写必要的代码,从而 OpenStack 能够在微软的虚拟平台上运行。 这些代码会 在 OpenStack.org 上提供。 OpenStack 是什么?是什么? OpenStack 核心项目核心项目 OpenStack 是一种免费的开源平台,帮助服务提供商实现类似于亚马逊

5、 EC2 和 S3 的基础设 施服务。OpenStack 当前有三个核心项目: 计算(Nova),对象存储(Swift),镜像管理(Glance)。 每个项目可以独立安装运行。 另外还有两个新增项目: 身份验证(Keystone)和仪表盘(Horizon)。 OpenStack 计算是一个云控制器,用来启动一个用户或一个组的虚拟实例,它也用于配置每 个实例或项目中包含多个实例为某个特定项目的联网。 OpenStack 对象存储是一个在具有内置冗余和容错的大容量系统中存储对象的系统。对象存 储有各种应用,如备份或存档数据,存储图形或视频(流媒体数据传输到用户的浏览器) , 储存二级或三级静态数据

6、, 发展与数据存储集成新的应用程序, 当预测存储容量困难时存储 数据,创造弹性和灵活的云存储 Web 应用程序。 OpenStack 镜像服务是一个查找和虚拟机图像检索系统。它可以配置三种方式:使用 OpenStack 对象存储来存储图像;使用亚马逊 S3 直接存储,或使用 S3 对象存储作为 S3 访问 中间存储。 OpenStack 版本信息版本信息 目前为止共有四个版本: 1. Austin 2. Bexar 3. Cactus 4. Diablo OpenStack 功能功能 OpenStack 能帮我们建立自己的 IaaS,提供类似 Amazon Web Service 的服务给用户

7、: 1、普通用户可以通过它注册云服务,查看运行和计费情况 2、开发和运维人员可以创建和存储他们应用的自定义镜像,并通过这些镜像启动、监控和 终止实例 3、平台的管理人员能够配置和操作网络,存储等基础架构 OpenStack 的优势是平台分模块化,由每个独立的组件组成,每个 nova 组件都可以单独安 装在独立的服务器上,各个组件之间不共享状态,各个组件之间通过消息队列(MQ)来进行 异步通讯。也可以通过选用合适组件来定制个性化服务,便于应用改进。使用 apache 协议 可以支持企业使用。 OpenStack 架构架构 OpenStack 项目架构项目架构一一: Compute(Nova)的软

8、件架构的软件架构 下图是 Nova 的软件架构,每个 nova-xxx 组件是由 python 代码编写的守护进程,每个进程 之间通过队列(Queue)和数据库(nova database)来交换信息,执行各种请求。而用户通 过 nova-api 暴露的 web service 来同其他组件进行交互。 Glance 是相对独立的基础架构, nova 通过 glance-api 来和它交互。 Nova 组件的作用组件的作用 nova-api 是 Nova 的中心。它为所有外部调用提供服务,除了提供 OpenStack 本身的 API 规 范外,他还提供了兼容 EC2 的部分 API,所以也可以用

9、 EC2 的管理工具对 nova 进行日常管 理。 nova-compute 负责对虚拟机实例进行创建、终止、迁移、Resize 的操作。工作原理可以简单 描述为:从队列中接收请求,通过相关的系统命令执行他们,再更新数据库的状态。 nova-volume 管理映射到虚拟机实例的卷的创建、附加和取消。 nova-network 从队列中接收网络任务, 然后执行任务控制虚拟机的网络, 比如创建桥接网络 或改变 iptables 的规则。 nova-scheduler 提供调度,来决定在哪台资源空闲的机器上启动新的虚拟机实例 Queue 为守护进程传递消息。只要支持 AMQP 协议的任何 Messa

10、ge Queue Sever 都可以,当 前官方推荐用 RabbitMQ。 SQL database 存储云基础架构中的各种数据。包括了虚拟机实例数据,网络数据等。 user dashboard是一个可选的项目。 它提供了一个web界面来给普通用户或者管理者来管理、 配置他们的计算资源。 Nova 的硬件架构的硬件架构 Nova 采用无共享、基于消息的架构,我们能安装每个 nova-xxx 组件在单独的服务器上,这 样可以根据不同目的进行不同的配置安装 单结点:一台服务器运行所有的 nova-xxx 组件,同时也驱动虚拟实例。这种配置只为尝试 Nova,或者为了开发目的进行安装。 单结点:一台

11、服务器运行所有的 nova-xxx 组件,同时也驱动虚拟实例。这种配置只为尝试 Nova,或者为了开发目的进行安装。 1 控制节点+N 个计算节点:一个控制结点运行除 nova-compute 外的所有 nova-services,然 后其他 compute 结点运行 nova-compute。所有的计算节点需要和控制节点进行镜像交互, 网络交互,控制节点是整个架构的瓶颈,这种配置主要用于概念证明或实验环境。 多节点:增加节点单独运行 nova-volume,同时在计算节点上运行 nova-network,并且根据 不同的网络硬件架构选择 DHCP 或者 VLan 模式,让控制网络和公共网络的

12、流量分离。 Nova 功能介绍功能介绍 用户通过访问 horizon(dashboard)请求资源, horizon 会调用 nova-api。 OpenStack 首先对用户 进行身份认证,这个功能通过 keystone 模块来完成。然后通过任务调度器(nova-scheduler) 确定在哪一个计算节点上创建新的虚拟机。所有的任务都会通过 MQ 来进行异步通讯。 云管理员用户也可以通过 Euca2ools 来管理和创建虚拟机,因为 OpenStack 支持 EC2 和 S3 接口。 OpenStack 项目架构二项目架构二: Swift 架构架构 OpenStack Object Stor

13、age(Swift)是 OpenStack 开源云计算项目的子项目之一。前身是 Rackspace Cloud Files 项目。OpenStack 对象存储是一个在具有内置冗余和容错的大容量系统 中存储对象的系统。对象存储有各种应用,如备份或存档数据,存储图形或视频,储存二级 或三级静态数据,发展与数据存储集成新的应用程序,当预测存储容量困难时存储数据,创 造弹性和灵活的云存储 Web 应用程序。 Swift 功能功能 Swift使用普通的服务器来构建冗余的、 可扩展的分布式对象存储集群, 存储容量可达PB级。 Swift 提供的服务与 AWS S3 相同,可以用以下用途: 1. 作为 Ia

14、aS 的存储服务 2. 与 OpenStack Compute 对接,为其存储镜像 3. 文档存储 4. 存储需要长期保存的数据,例如 log 5. 存储网站的图片,缩略图等 OpenStack 项目架构三项目架构三 Glance 架构架构 OpenStack 镜像服务提供 OpenStack Nova 虚拟机镜像的发现, 注册, 取得服务。 通过 Glance, 虚拟机镜像可以被存储到多种存储上,比如简单的文件存储或者对象存储(比如 OpenStack 中 swift 项目) 。 GlaceGlace 组件架构组件架构 Glance 目前提供的参考实现中 Registry Server 仅是

15、使用 Sql 数据库存 储 metadata。 前端通过 API Server 向多个 Client 提供服务。 可以使用多种后端存储。Glance 目前支持 S3,Swift,简单的文件存储及 只读的 HTTPS 存储。 后续也可能支持其他后端,如分布式存储系统(SheepDog 或 Ceph) GlaceGlace 组件架构组件架构特性特性 1.基于组件的架构 :便于快速增加新特性 2.高可用性:支持大负荷 3.容错性:独立的进程避免串行错误 4.开放标准: 对社区驱动的 API 提供参考实现 OpenStack 功能功能 1、 Dashboard 提供资源池管理功能,通过资源池的方式对物

16、理资源进行重新组织。 2、 提供基于命令行的虚拟机在线迁移功能,拟机生命周期管理,例如创建、启 动、休眠、唤醒、关闭、迁移、销毁虚拟机。 3、 将常用的运行环境保存为虚拟机模板,可以方便地创建一系列相同或者是相 似的运行环境,只能手动创建所需用户模板,类似 Eucalyptus。 4、 在计算资源允许的情况下提供高可用性、动态负载均衡、备份与恢复 5、 对所有的物理机和虚拟机进行监控,生成报表并在必要的情况下发出预警, 监控和报表功能据说可以采用外围组件实现。 Openstack 创建创建 instance 的流程的流程 1. 用户向 nova-api 发送请求 用户发送请求到 nova-api,这里有两种: a.通过 openstack api 从 server.pys controller.create(): Python 代码代码 1. self.helper.create_instance(req, body, pute_api.create) create_ins

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号