OpenStack services

本节将详细描述OpenStack服务。

Compute service overview(计算服务概述)

使用OpenStack云计算计算主机和管理系统。OpenStack计算是一个“基础架构即服务”(IaaS)系统的重要组成部分。主模块是在Python中实现的。

OpenStack Compute及其组件包括以下领域:

nova-api service

接收并响应终端用户计算API调用。服务支持OpenStack计算API,Amazon EC2 API,一种超级管理员提供执行管理操作的Admin API。它执行一些政策和提升者大多数编制活动,如运行一个实例。

nova-api-metadata service

接受从实例元数据请求。 nova-api-metadata通常使用在与nova-network安装在多主机模式下运行。更多,详见Metadata service

nova-compute service

守护进程,它负责管理程序api创建和终止虚拟机实例。例如:

  • XenAPI for XenServer/XCP
  • libvirt for KVM or QEMU
  • VMwareAPI for VMware

处理是相当复杂的。基本上,这个守护进程从队列中接收行动并执行一系列的系统命令,如启动一个KVM实例和数据库中更新它的状态。

nova-scheduler service

从虚拟机实例的请求队列启动一个虚拟机以及确定哪个计算服务器主机运行这个虚拟机。

nova-conductor module

介导nova-compute服务和数据库之间的交互。它消除了直接访问云数据库由nova-compute服务。nova-conductor模块横向尺度。然而,不要将它部署在nova-compute服务节点上运行。

nova-cert module

nova-consoleauth daemon

nova-novncproxy daemon

nova-spicehtml5proxy daemon

nova-xvpvncproxy daemon

Storage concepts

OpenStack堆栈使用下列存储类型:

注意:1、您不能像传统硬盘使用 OpenStack Object Storage。 OpenStack Object Storage为了获得其他收益而放松了一些约束POSIX-style文件系统。你可以通过一个API使用HTTP访问的对象。后来你没有提供原子操作(即依靠最终一致性),您可以轻松地扩展存储系统,避免失败的中心点。

2、 OpenStack Image service是在openstack集群下用于管理的虚拟机映像,而不是存储虚拟机镜像。它提供了一个抽象不同的方法——一座桥到存储来存储,而不是存储本身。

3、OpenStack Object Storage 可以自己工作,对象存储(swift)产品可以单独使用的计算(nova)产品。

Object Storage service overview

OpenStack对象存储是一种多租户对象存储系统。它是高度可伸缩的,通过RESTful HTTP API可以管理大量的非结构化数据以低成本。

它包括以下组件:

Proxy servers (swift-proxy-server)

Account servers (swift-account-server)

Container servers (swift-container-server)

Object servers (swift-object-server)

Various periodic processes

WSGI middleware

swift client

swift-init

swift-recon

swift-ring-builder

Block Storage service overview

OpenStack Block Storage 将持久性存储添加到一个虚拟机。 Block Storage为管理卷提供了基础设施,与 OpenStack Compute 相互作用为实例提供卷。这个服务还支持管理卷快照,和卷类型。

Block Storage service由以下部分组成:

cinder-api

接受请求,并将请求送到cinder-volume

cinder-volume

直接与Block Storage和cinder-scheduler交互。还是通过消息队列。cinder-volume响应发送到块存储服务读写请求来维护状态。它可以与多种存储提供商通过驱动程序的体系结构。

cinder-scheduler daemon

选择最优存储提供节点上创建卷。

cinder-backup daemon

cinder-backup daemon提供任何类型的备份卷备份存储。

Networking service overview

它包括以下组件:

neutron-server

接受和API请求路由到适当的OpenStack网络插件的行动。

OpenStack Networking plug-ins and agents

插入和拔掉港口,创建网络或子网,并提供IP寻址。这些插件和代理根据不同供应商和技术用于特定的云。OpenStack网络附带插件和代理思科虚拟和物理开关,NEC OpenFlow产品,Open vSwitch,Linux桥接,VMware NSX等车型的底盘产品。

普通代理L3(第三层),DHCP(动态主机IP寻址),和一个插件的代理。

Messaging queue

所使用的大多数neutron-server OpenStack网络设施之间路由信息和各种代理。还可以作为数据库存储网络状态为特定的插件。

OpenStack网络主要与OpenStack计算为其提供网络和连接实例。

Dashboard overview

OpenStack仪表板是一个模块化的Django web应用程序提供了一个图形界面OpenStack服务。

仪表板通常部署在Apache mod_wsgi。您可以修改仪表板代码以使它适合不同的网站。

从网络体系结构的角度来看,这项服务必须访问客户和每个OpenStack的公共API服务。为其他服务使用管理员功能,它必须连接到管理API端点,它不应该由客户访问。

Identity service overview

OpenStack身份管理服务提供一个单点集成身份验证、授权和目录服务。

身份服务通常是第一个服务用户与之交互。一旦身份验证,最终用户可以使用自己的身份访问其他OpenStack服务。同样,其他OpenStack服务利用身份服务确保用户是他们说他们是谁,发现在其他服务中部署。服务还可以与一些外部集成用户身份管理系统(如LDAP)。

身份服务通常是第一个服务用户与之交互。一旦身份验证,最终用户可以使用自己的身份访问其他OpenStack服务。同样,其他OpenStack服务利用身份服务确保用户是他们说他们是谁,发现在其他服务中部署。服务还可以与一些外部集成用户身份管理系统(如LDAP)。用户和服务可以找到其他服务通过使用服务目录,这是由身份管理服务。顾名思义,一个服务目录是可用的服务的集合在一个OpenStack部署。每个服务可以有一个或多个端点,每个端点可以三种类型之一:管理,内部或公共场合。在生产环境中,不同的端点类型可能驻留在单独的网络接触到不同类型的用户,是为了安全起见。例如,公共API网络可能是可见的互联网用户可以管理自己的云。管理API可能局限于组织内的运营商网络管理云基础设施。内部网络API可能会限制包含OpenStack的主机服务。此外,OpenStack支持可伸缩性的多个区域。为简单起见,本指南使用的管理网络端点类型和默认RegionOne地区。在一起,区域、服务和端点标识服务包括服务目录中创建一个部署。每个OpenStack服务在您的部署需要服务条目存储在相应的端点标识服务。这一切都已完成后身份服务已经安装和配置。

身份服务包含这些组件:

Server

一个集中的服务器使用RESTful接口提供身份验证和授权服务。

Drivers

驱动程序或服务后端集成到集中式服务器。他们是用于访问存储库中的身份信息外部OpenStack,并且可能已经存在在OpenStack部署的基础设施(例如,SQL数据库或LDAP服务器)。

Modules

中间件模块OpenStack的地址空间中运行的组件是使用单位服务。这些模块拦截服务请求,提取用户凭证,并将它们发送到中央服务器进行授权。之间的集成中间件模块和OpenStack组件使用Python Web服务器网关接口。

openstack介绍(二)的更多相关文章

  1. OpenStack学习系列-----第一篇 OpenStack介绍

    刚开始接触OpenStack,被它所承诺的前景,以及现在业界对它的期望吸引(OpenStack被誉为21世纪的Linux开源社区,可以预见其的发展前景是何其广阔.).怎么说呢,我现在也暂时相信,Ope ...

  2. Lucene.Net 2.3.1开发介绍 —— 二、分词(六)

    原文:Lucene.Net 2.3.1开发介绍 -- 二.分词(六) Lucene.Net的上一个版本是2.1,而在2.3.1版本中才引入了Next(Token)方法重载,而ReusableStrin ...

  3. Lucene.Net 2.3.1开发介绍 —— 二、分词(五)

    原文:Lucene.Net 2.3.1开发介绍 -- 二.分词(五) 2.1.3 二元分词 上一节通过变换查询表达式满足了需求,但是在实际应用中,如果那样查询,会出现另外一个问题,因为,那样搜索,是只 ...

  4. Lucene.Net 2.3.1开发介绍 —— 二、分词(三)

    原文:Lucene.Net 2.3.1开发介绍 -- 二.分词(三) 1.3 分词器结构 1.3.1 分词器整体结构 从1.2节的分析,终于做到了管中窥豹,现在在Lucene.Net项目中添加一个类关 ...

  5. Lucene.Net 2.3.1开发介绍 —— 二、分词(四)

    原文:Lucene.Net 2.3.1开发介绍 -- 二.分词(四) 2.1.2 可以使用的内置分词 简单的分词方式并不能满足需求.前文说过Lucene.Net内置分词中StandardAnalyze ...

  6. Lucene.Net 2.3.1开发介绍 —— 二、分词(二)

    原文:Lucene.Net 2.3.1开发介绍 -- 二.分词(二) 1.2.分词的过程 1.2.1.分词器工作的过程 内置的分词器效果都不好,那怎么办?只能自己写了!在写之前当然是要先看看内置的分词 ...

  7. Lucene.Net 2.3.1开发介绍 —— 二、分词(一)

    原文:Lucene.Net 2.3.1开发介绍 -- 二.分词(一) Lucene.Net中,分词是核心库之一,当然,也可以将它独立出来.目前Lucene.Net的分词库很不完善,实际应用价值不高.唯 ...

  8. {Django基础十之Form和ModelForm组件}一 Form介绍 二 Form常用字段和插件 三 From所有内置字段 四 字段校验 五 Hook钩子方法 六 进阶补充 七 ModelForm

    Django基础十之Form和ModelForm组件 本节目录 一 Form介绍 二 Form常用字段和插件 三 From所有内置字段 四 字段校验 五 Hook钩子方法 六 进阶补充 七 Model ...

  9. MySQL之多表查询一 介绍 二 多表连接查询 三 符合条件连接查询 四 子查询 五 综合练习

    MySQL之多表查询 阅读目录 一 介绍 二 多表连接查询 三 符合条件连接查询 四 子查询 五 综合练习 一 介绍 本节主题 多表连接查询 复合条件连接查询 子查询 首先说一下,我们写项目一般都会建 ...

  10. MySQL行(记录)的详细操作一 介绍 二 插入数据INSERT 三 更新数据UPDATE 四 删除数据DELETE 五 查询数据SELECT 六 权限管理

    MySQL行(记录)的详细操作 阅读目录 一 介绍 二 插入数据INSERT 三 更新数据UPDATE 四 删除数据DELETE 五 查询数据SELECT 六 权限管理 一 介绍 MySQL数据操作: ...

随机推荐

  1. Windows 驱动入门(二)代码结构

    windows驱动程序基础.转载标明出处:http://blog.csdn.net/ikerpeng/article/details/38777641 windows驱动程序结构: 我想说的是wind ...

  2. java timer 指定某时间点执行

    package com.northeasttycoon.service; import java.util.Calendar;import java.util.Timer;import java.ut ...

  3. SVM怎样解决多分类问题

    从 SVM的那几张图能够看出来,SVM是一种典型的两类分类器.即它仅仅回答属于正类还是负类的问题.而现实中要解决的问题,往往是多类的问题(少部分例外,比如垃圾邮件过滤,就仅仅须要确定"是&q ...

  4. java中的clone方法

    Java中对象的创建 clone顾名思义就是复制, 在Java语言中, clone方法被对象调用,所以会复制对象.所谓的复制对象,首先要分配一个和源对象同样大小的空间,在这个空间中创建一个新的对象.那 ...

  5. node js 安装.node-gyp/8.9.4 权限 无法访问

    WARN EACCES user "root" does not have permission to access the dev dir "/root/.jenkin ...

  6. margin的相关属性及应用

    1.margin常见问题: ①IE6下双边距   (不推荐使用float+margin,可用padding替代) 详见<css浏览器兼容问题集锦>之4.IE6中margin双边距 ②IE6 ...

  7. poj 2336 Ferry Loading II ( 【贪心】 )

    Ferry Loading II Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 3704   Accepted: 1884 ...

  8. POJ 2348 Euclid Game (模拟题)

    Euclid's Game Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 7942   Accepted: 3227 Des ...

  9. Dubbo之消费者

    在写 dubbbo调用时候 <dubbo:reference  不能有空格! 项目结构: pom: <project xmlns="http://maven.apache.org ...

  10. 51nod 40分算法题

    1737:见前2篇随笔. 1677:题意:给定一个n节点树,一个整数k,n个节点任意选k个出来,对于每一种选择方案,ans累加上使这k个点联通的最小边数,输出ans%1e9+7. 一句话题解:考虑每一 ...