认识openstack
第一:openstack是什么?
OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目。
Openstack是一个跟Eucalyptus,AWS(Amazon web Services)类似的IaaS框架
openstack最早由美国国家航空航天局NASA研发的Nova和Rackspace研发的swift组成。后来以apache许可证授权,旨在为公共及私有云平台建设。openstack主要用来为企业内部实现类似于Amazon EC2和S3的云基础架构服务(Iaas).每6个月更新一次,基本与ubuntu同步,命名是以A-Z作为首字母来的。
第二:openstack各组件介绍
核心项目有3个
1.控制台
英文:Dashboard(或叫做Horizon)
功能:web方式管理云平台,建云主机,分配网络,配安全组,加云盘
解释:在整个openstack应用体系中,horizon就是整个应用的入口。提供了一个模块化的、基于WEB的图形化界面服务门户。用户可以通过浏览器使用这个WEB图形化界面来访问、控制他们的计算、存储和网络资源
2.计算
计算服务:Nova
功能:负责响应虚拟机创建请求、调度、销毁云主机
解释:在整个openstack应用体系中,nova是整个应用的核心服务,虚拟机声明周期也是通过Nova实现的,nova通过api接受到并相应horizon的请求,并根据通过请求执行虚机调度服务,同时也是管理虚机的核心应用服务。
3.网络
网络服务:Neutron
功能:实现SDN(软件定义网络),提供一整套API,用户可以基于该API实现自己定义专属网络,不同厂商可以基于此API提供自己的产品实现
解释:在整个openstack应用体系中,Neutron是负责提供云计算环境下的虚拟网络功能。同时支持多种物理网络类型,支持linxu网桥,Hyper-v,节点间vpn,防火墙等。
存储项目2个
1.对象存储
对象存储:Swift
功能:REST风格的接口和扁平的数据组织结构。RESTFUL HTTP API来保存和访问任意非结构化数据,ring环的方式实现数据自动复制和高度可以扩展架构,保证数据的高度容错和可靠性
解释:a.swift为虚拟机童工存储镜像服务,并且可以对cinder做备份。
b.Swift 是基于一致性散列技术,通过计算可将对象均匀分布到虚拟空间的虚拟节点上,在增加或删除节点时可大大减少需移动的数据量;虚拟空间大小通常采用 2 的 n 次幂,便于进行高效的移位操作;然后通过独特的数据结构 Ring(环)再将虚拟节点映射到实际的物理存储设备上,完成寻址过程。
2.块存储
块存储:Cinder
功能:提供持久化块存储,即为云主机提供附加云盘。
解释:cinder为虚拟机通过额外的挂载磁盘,类比linxus可理解为mount挂载 ,nfs 存储;类比linux可理解为U盘
共享服务项目3个
1.认证服务
认证服务:Keystone
功能:为访问openstack各组件提供认证和授权功能,认证通过后,提供一个服务列表(存放你有权访问的服务),可以通过该列表访问各个组件。
解释:keystone是 OpenStack Identity Service 的项目名称,是一个负责身份管理与授权的组件。实现用户的身份认证,基于角色的权限管理,及openstack其他组件的访问地址和安全策略管理
2.镜像服务
服务名:镜像服务
项目名:Glance
功能:为云主机安装操作系统提供不同的镜像选择
解释:Glance理解为windows镜像,centos镜像,ubuntu镜像。。。
3.计费服务
计费服务:Ceilometer
功能:收集云平台资源使用数据,用来计费或者性能监控
解释:主要是监控系统及计费服务,但是提供的组件是完全不够用的,需要自己二次开发哦
高层服务项目1个
1.编排服务
编排服务:Heat
功能:自动化部署应用,自动化管理应用的整个生命周期.主要用于Paas
解释:Heat项目提供协作服务,允许我们可以自动地创建多个计算实例,逻辑网络,以及对其他的云服务的操作
第三:openstack架构逻辑图