有勇气的牛排博客

OpenSteatk课程学习文档_200002

有勇气的牛排 214 大数据项目 2023-05-09 00:11:31

说明

项目编号:200002

总字数:256659

文档目录

OpenStack 学习文档 OpenStack 学习文档 1 1 OpenStack、云计算简介 4 1.1 什么是云计算 4 1.2 什么是云存储 5 1.3 OpenStack架构 6 1.3.1 OpenStack发展与现状 6 1.2.2 OpenStack优势 7 2 OpenStack 各个组件和功能概括 7 2.1 OpenStack 概念架构 8 2.1 核心项目组成 9 3 OpenStack 主要逻辑模块 9 3.1 Keystone (身份验证服务) 组件 9 3.1.1 Keystone作用 9 3.1.2 概念 9 3.1.3 工作原理 10 3.1.4 keystone在各个组件中的作用 11 3.1.5 访问流程 12 3.1.6 用户(user) 13 3.1.7 Credentials 13 3.1.8 Authentication 14 3.1.9 Token 14 3.1.10 Role 14 3.1.11 Project 14 3.2 Glance组件 (镜像服务) 15 3.2.1 作用 15 3.2.2 镜像状态 15 3.2.3 磁盘格式 16 3.2.4 容器格式 17 3.2.5 架构 19 3.2.6 工作流程 19 3.3 Nova 组件 20 3.3.1概念架构 20 3.3.2部署架构特点: 20 3.3.4 Nova处理过程 21 3.3.5 请求一个虚拟机实例过程 22 3.3.6 Nova组件设计思想 22 3.3.7 组件详解 24 3.4 Neutron 组件 26 3.4.1 概述 26 3.4.2 功能 27 3.4.3 核心架构 28 3.4.5 组件详解 29 3.5 Horizon 组件 32 3.5.1 Django介绍 32 3.5.2 Horizon简述 33 3.5.3 Horizon架构 34 3.6 Cinder (块存储) 组件 35 3.6.1 作用 35 3.6.2 Block Storage 35 3.6.3 Block Storage Service 36 3.6.4 核心架构 36 3.6.5 核心组件 37 3.6.6 工作流程 40 3.7 Swift组件 40 3.7.1 背景介绍 40 3.7.2 原理 41 3.7.3 特性 44 3.7.4 核心架构 45 3.7.5 组件详解 45 3.8 Heat 组件 46 3.8.1 什么Heat 46 3.8.2 为什么需要Heat 47 3.8.3 概念 47 3.8.4 工作流程 48 3.9 Trove 组件 49 3.9.1 DBaaS介绍 49 3.9.2 Trove简介 50 3.9.2 Trove架构 50 3.9.3 Trove优势 51 3.9.4 Trove重要功能 51 3.9.5 Trove小结 52 3.10 Ironic 组件 52 3.10.1 什么是 OpenStack ironic? 52 3.10.2 Ironic存在的意义 52 3.10.3 Ironic主要关键技术 52 3.11 Sahara 54 3.11.1 Sahara简介 54 3.11.2 Sahara 特点 55 3.11.3 Sahara工作流程 56 3.11.4 Sahara架构 57 3.12 Ceilometer 58 3.12.1 Ceilometer背景 58 3.12.2 Ceilometer组件 58 3.12.3 Ceilometer 的数据处理 59 3.12.4 Ceilometer总体架构 60 3.12.5 Ceilometer 特点 60 4 OpenStack 相关服务介绍 60 4.1数据库MySql 60 4.1.1 什么是MySql 60 4.1.2 为什么选用MySQL 61 4.2消息队列服务——RabbitMQ 62 4.2.1 AMQP协议 62 4.2.2 RabbitMQ在Openstack应用 64 4.2.3 什么是AMPQ,什么是RabbitMQ,二者是什么关系? 66 4.2.4 OpenStack为什么要用AMPQ,RabbitMQ和AMPQ又是什么关系? 66 4.3 分布式内存对象缓存 Memcached 66 4.3.1 Memcached 架构介绍 66 4.3.2 Memcached 特点 67 4.3.3 Memcached存储方式 67

部分内容

1 OpenStack、云计算简介

云计算从功能上可以分为两类:云计算,主要是提供虚拟主机服务;云存储,主要是提供海量数据存储服务。
云计算从应用场景上可以分为两种:公有云,面向社会个人或企业提供云服务;私有云,面向企业内部部门或员工提供云服务。
1.1 什么是云计算
每天打开电视、拧开水龙头,有没有想过这些资源使用起来为什么这么方便?不需要亲自去建一个发电站、自来水厂,电和水想用就用,不用的时候就关掉了,也不会出现浪费。这些资源都是按需收费的,用多少,付多少的费用。这些资源的产生、输送和维护都有专门的王作人员来操作,使用者并不需要过多地担心,真是太方便了!
如果把计算机、网络、磁盘存储这种IT基础设施与水电等资源做比较的话,IT基础设施还远未达到像水电资源那样的高效利用。就当下而言,无论是个人还是企业,都是自己准备这些基础设施,空置率相当高,并没有得到有效地利用。产生这种情况的主要原因是由于IT基础设施在流通性上并不如水电那样便利。
科技在飞速发展,网络带宽、硬件计算能力都在不断提升。这些硬件技术的发展,为IT基础设施的流通创造了关键的条件。那么当IT基础设施具备流通性的时候,就有企业开始考虑转向IT基础设施提供商的角色。其实发电站与自来水厂的产生,也是需要解决流通性这个关键的问题(铺设管道与线路成为可能)。任何商品的产生,也是首先要解决流通的问题。如果物品不能流通,进而无法交换,那么也就具备不了商品价值。
首先设想一下,有那么一个IT基础设施提供商,愿意提供个人和企业所需要的IT基础设施(按需收费与使用)。这些IT基础设施,如CPU、存储、硬件维护、硬件更新都有人来维护,不需要个人和企业参与。这是多么方便的一件事情!如果IT基础设施能够像水电一样流通、按需收费,便是狭义上的云计算。如果把IT资源从基础设施扩展至软件服务、网络应用、数据存储,就引申出了广义的云计算。这也就意味着IT资源能够通过网络交付及使用了。
云计算技术上的实现,需要虚拟化、并行计算、效用计算、网络存储和负载均衡等旧有的技术。虽然去计算是旧有技术的整合,却能够带来生活、生产方式以及商业模式的变化,因此云计算的实现总是引人瞩目。
1.2 什么是云存储
云计算将IT资源变得像水电资源一样易于管理与流通。但是云计算系统却面临另外一个大问题:存储。这好比,自来水厂需要大容量的存储设备来处理从水源抽取的水(保存起来以供净化)。云计算系统除了修建数据中心存放物理设备之外,还需要存储大规模的数据。这些数据来源有多种可能:用户数据、系统运行所需数据以及互联网数据(比如搜索引擎抓取的数据)。
采用何种方式存储与管理这些大规模的数据,就成了云计算系统需要考虑的问题。因此,云计算系统中需要实现以存储为目标的子系统即云存储系统。
云存储的概念应该是被云计算所包含,平时所提及的云计算包含了云存储。之所以云存储需要单独提出来,则是因为云存储在整个去计算系统中,是一个比较完整的子系统。与云计算的其他模块相比,比较独立。甚至云存储可以从云计算系统中脱离出来,只是单纯地面向用户提供存储服务(如Dropbox,微盘、网盘等等)。由于云存储的特殊性,云存储经常被单独讨论。
那么云存储要实现怎么样的目标呢?由于去的真正含义是将IT资源变得像水电一样流通使用。那么云存储的目标就是将存储资源变得像水电一样方便人们使用。
云存储在设计的时候,为了达成这样的目标,将云存储系统分为4层。
(1)硬件层:硬件层是云存储最底层、最基础的部分。硬件层包括了网络光纤、iSCSI设备、SSD硬盘或者其他多种多样的存储设备。有时候,这些设备并不集中于某一地,而是通过网络联接在一起。
(2)管理层: 管理层是最核心的部分。管理层主要是通过分布式文件系统、网络通信来实现,进而保证硬件设备协同工作、管理层保证了系统的可靠性、持久性和稳定性,进而向用户提供有效的存储服务。
(3)API层:只是有了管理层还远远不够,还需要提供网络访问的API。有了这些API,就可以为各式各样的应用提供服务,比如视频点播、网盘和 Dropbox等等。
(4)客户端;一个完整的云存储系统还需要有方便易用的客户端。简洁的UI和人性化的设计都是客户端应该考虑的重点

image.png

qq:1809296387


留言

专栏
文章
加入群聊