目录
一、了解OpenStack项目
1.1 什么是OpenStack?
•OpenStack是一系列开源软件项目的组合。
•OpenStack是目前非常流行的开源云操作系统
•OpenStack是基础设施资源的系统管理平台。
•OpenStack对数据中心的计算、存储和网络资源进行统一管理。
•OpenStack作为虚拟机、裸金属服务器和容器等的云基础架构和基础设施平台。
1.2 OpenStack示意图

1.3 OpenStack项目及其组成

1.4 核心项目
•仪表板(Dashboard)——Horizon
•计算服务(Compute Service)——Nova
•网络(Networking)——Neutron
•对象存储(Object Storage)——Swift
•块存储(Block Storage)——Cinder
•身份服务(Identity Service)——Keystone
•镜像(Image Service)——Glance
二、理解OpenStack架构
OpenStack 云平台服务的提供主要是依靠 Nova、Glance、Cinder 和 Neutron 四个核心模块完成的, 四个辅助模块Horizen 、Ceilometer 、Keystone、Swift 提供的访问、监控、权限和对象存储功能。
服务进程之间的通讯通过消息队列来实现(目前rabbitmq是默认的实现技术,兼容多个OpenStack的版本)
2.1 OpenStack的概念架构图

全局组件:keystone提供身份验证,ceilometer提供全局计量服务,horizon提供一个web管理界面,与openstack底层交互
核心组件:都是为虚拟机提供服务,需要neutron网络支持,glance镜像支持,swift&cinder存储支持,nova统一申请调用,最后提供给虚拟机做统一支持
外部组件:sahara&heat大数据用的,分别是数据编排和数据分析;ironic裸金属服务,trove数据库管理服务包含了sql数据库和nosql数据库
2.2 OpenStack逻辑架构图

OpenStack包括若干个称为OpenStack服务的独立组件。所有服务均可通过一个服务的独立组件。所有服务均可通过一个公共身份服务进行身份验证。除了那些需要管理权限的命令,每个服务之间均可通要管理权限的命令,每个服务之间均可通过公共API进行交互。
每个OpenStack服务又由若干组件组成。包含多个进程。所有服务至少有一个API进程,用于侦听API请求,对这些请求进行预处理,并将它们传送到该服务的其他组件。除了认证服务,实际工作都是由具体的进程完成的。
至于一个服务进程之间的通信,则通过AMQP。
消息代理,服务的状态存储在数据库中。
2.3 Openstack组件之间的通信机制
基于AMQP——每个项目内部各个组件之间的通信。
基于SQL——各个项目内部的通信。
基于HTTP——通过各项目的API建立的通信。
通过Native API实现通信——OpenStack各组件和第三方软硬件之间的通信。
2.4 Openstack物理部署架构
openstack是分布式系统,必须从逻辑架构映射到具体的物理架构。将各个项目和组件以一定的方式安装到实际的服务器(节点)上,部署到实际的存储设备上,并通过网络将它们连接起来,就形成了openstack的物理部署架构。
openstack的部署方式:
单节点部署:所有的服务和组件都放在一个物理节点上,通常用于开发、学习、测试、验证。
多节点部署;所有的服务和组件分别再不同的物理节点上
下面对多节点部署作介绍

控制节点:管理openstack架构,又称为管理架构
网络节点:负责各节点之间的通信和交互
计算节点:承载实例负责具体需求的处理,主要负责虚拟机实例运行,为用户创建并运行虚拟机实例,并为虚拟机实例分配网络
存储节点:提供存储服务
网络节点(Neutron)的网络类型
提供者网络(Provider networks)
自服务网络(Self-service networks)

本文深入探讨OpenStack项目,解释其作为开源云操作系统的角色,以及其核心服务,如Nova、Neutron、Swift和Keystone。OpenStack架构通过组件如Horizon、Ceilometer和Swift提供访问、监控和存储功能。文章还详细介绍了OpenStack组件间的通信机制,包括AMQP、SQL和HTTP协议,并讨论了物理部署架构,涵盖单节点和多节点部署,特别是多节点部署中的控制节点、网络节点、计算节点和存储节点的功能。
6850

被折叠的 条评论
为什么被折叠?



