OpenStack基础认识
OpenStack既是一个社区,也是一个项目和一个开源软件,提供了一个部署云的操作平台或工具集。用OpenStack易于构建虚拟计算或存储服务的云,既可以为公有云、私有云,也可以为大云、小云提供可扩展、灵活的云计算。OpenStack是什么OpenStack是一个管理计算、存储和网络资源的数据中心云计算开放平台,通过一个仪表板,为管理员提供了所有的管理控制,同时通过Web界面为其用户提供资源。20
OpenStack
既是一个社区,也是一个项目和一个开源软件,提供了一个部署云的操作平台或工具集。用OpenStack易于构建虚拟计算或存储服务的云,既可以为公有云、私有云,也可以为大云、小云提供可扩展、灵活的云计算。
OpenStack是什么
OpenStack是一个管理计算、存储和网络资源的数据中心云计算开放平台,通过一个仪表板,为管理员提供了所有的管理控制,同时通过Web界面为其用户提供资源。2010年成立,基本上每六个月发布一个新版本。
基础架构云开源项目
作为基础设施即服务(IaaS)资源的通用前端
简化云的部署过程并为其带来良好的可扩展性
由若干组件协作完成
OpenStack的开放性
创造了框架标准和API
开源更易发现质量和安全问题
云时代的Linux
推动开放云平台和VMWare/亚马逊的竞争
计算资源管理:规划并管理大量虚拟机,按需提供计算资源
存储资源管理:为云服务或云应用提供所需的对象及块存储资源
网络资源管理:高自动化地管理下一代网络资源
OpenStack有三个主要的服务成员
OpenStack的主要服务
1.计算服务Nova
2.对象存储服务Swift
2.对象存储服务Swift
4.身份认证服务keystone
5.网络管理服务Quantum
6.存储管理服务Cinder
7.仪表盘Horizon
Nova是OpenStack云中的计算组织控制器
Nova处理OpenStack云中实例(instances)生命周期的所有活动。这样使得Nova成为一个负责管理计算资源、网络、认证、所需可扩展性的平台。
功能:
云计算系统的结构控制器,根据用户需求提供虚拟服务
配置虚拟机规格
管理虚拟机实例的整个生命周期
提供虚拟机管理功能(创建虚拟机、删除虚拟机、迁移虚拟机、创建虚拟机快照、虚拟机扩容等)
计算服务Nova-功能架构:
Nova 组件介绍
1.API Server(Nova-Api)
API Server对外提供一个与云基础设施交互的接口,也是外部可用于管理基础设施的唯一组件。
2.Message Queue(Rabbit MQ Server)
OpenStack节点之间通过消息队列使用AMQP(Advanced Message Queue Protocol)完成通信。
3.Compute Worker(Nova-Compute)
Compute Worker管理实例生命周期,通过Message Queue接收实例生命周期管理的请求,并承担操作工作。
4.Network Controller(Nova-Network)
Network Controller处理主机的网络配置,包括IP地址分配、为项目配置VLAN、实现安全组、配置计算节点网络。
5.Volume Workers(Nova-Volume)
Volume Workers用来管理基于LVM(Logical Volume Manager)的实例卷。如新建卷、删除卷等。
6.Scheduler(Nova-Scheduler)
调度器Scheduler把Nova-API调用映射为OpenStack组件。调度器作为一个Nova-Schedule守护进程运行,通过恰当的调度算法从可用资源池获得一个计算服务。
对象存储服务Swift
OpenStack开源云计算项目的子项目之一
可扩展的对象存储系统
Swift特性
1.高数据持久性
数据的可靠性,是指数据存储到系统中后,到某一天数据丢失的可能性。
2.对称系统架构
“对称”意味着Swift中各节点可以完全对等,能极大地降低系统维护成本。
3.无限可扩展性
一是数据存储容量无限可扩展,二是Swift性能(如QPS、吞吐量等)可线性提升。
4.无单点故障
没有一个角色是单点的,并且在架构和设计上保证无单点业务是有效的。
5.简单、可依赖
简单体现在实现易懂、架构优美、代码整洁;可依赖是指可以放心大胆地将Swift用于最核心的存储业务上
应用场景
网盘类产品的存储引擎
为Glance存储镜像文件
存储日志文件
数据备份仓库
Swift主要组件
1.代理服务Proxy Server
对外提供对象服务API,查找服务地址,转发用户请求,横向扩展实现均衡负载。
2.认证服务Authentication Server
验证用户身份信息,获得对象访问令牌,验证访问令牌的有效性,缓存下来直至过期时间。
3.缓存服务Cache Server
缓存服务可采用Memcached集群,使用一致性散列算法来分配缓存地址。
4.账户服务Account Server
账户元数据和统计信息被存储在一个SQLite数据库中。
5.容器服务Container Server
容器元数据和统计信息也存储在一个SQLite数据库中
6.对象服务Object Server
提供对象元数据和内容服务,以文件的形式存储在文件系统中,元数据作为文件属性来存储
7.复制服务Replicator
采用推式(Push)更新远程副本,确保被标记删除的对象从文件系统中移除。
8.更新服务Updater
任务将会被序列化到在本地文件系统中进行排队,更新后扫描队列并进行相应的更新处理。
镜像服务Glance
Glance的作用
Glance作为OpenStack的虚拟机的Image(镜像)服务,提供了一系列的REST API,用来管理、查询虚拟机的镜像,它支持多种后端存储介质
Glance的组成部分
API Server:
主要用来接受各种API调用请求,并提供相应的操作。
Registry Server:
用来和MySQL数据库进行交互,存储或者获取镜像的元数据。
Object Storage:
高可用的对象存储项目。
FileSystem:
存储虚拟机镜像的默认后端文件系统。
S3:
允许存储虚拟机镜像在Amazon S3服务中。
HTTP:
能通过HTTP在Internet上读取可用的虚拟机镜像。
认证服务Keystone
功能: 为OpenStack项目的其它子系统提供用户管理服务和服务目录,通过该目录查询和访问各种服务。
管理员:创建用户和租户 ,规定用户使用计算、存储、网络等云资源的权限。
用户: 访问云服务。
块存储Cinder
功能:
为运行的虚拟机实例提供持久的数据块存储服务
提供块设备连接到虚拟机实例的接口
提供创建卷、加载、卸载卷的控制功能
用户通过Dashboard管理他们自己需要的存储设备
快照管理
通过快照实现数据备份
通过对快照创建卷实现数据恢复
API: 解析所有传入的请求并将它们转发给消息队列。
Scheduler:调度程序,处理任务队列的任务,并根据预定策略选择合适的Volume Service节点来执行任务。
**Volume :**该服务运行在存储节点上,管理存储空间,通过消息队列直接在块存储设备或软件上与其他进程交互
网络服务Neutron
功能:
提供云计算的网络虚拟化技术,为OpenStack其他服务提供网络连接服务。
提供多租户环境下的虚拟网络模型以及 API,提供给每个租户独立的网络环境。
为用户提供接口,用户定义网络、子网、和路由器,之后启动的虚拟主机就可以连接到这个虚拟网络上。
管理IP地址池。
更多推荐
所有评论(0)