Openstack的学习之路-起步

由于项目的需要,开始使用openstack,以前也看过,甚至把官网的材料翻译了一遍,然而效果甚微。本身不是计算机专业的,学习起来比较盲目,还好现在有人指导,方向明朗了,特此记下我的学习之路,希望能为你提供下参考。
我要做的最终结果是一个监听程序,首先,分为4大步走。
1.学习架构
2.安装openstack
3.看源码
4.编程

1.学习架构

Openstack的核心由三大部分构成:计算、网络、存储。而Openstack包含很多个组件,最主要是7个组件:Horizon、Nova、Glance、Keystone、Neutron、Cinder、Swift 每个组件在Openstack中充当什么角色以及各个组件是如何关联的呢,在我看来,虚拟机是中心,其他的组件相互协调,为虚拟机服务,请看下图:

openstack二次开发代码 openstack开发教程_计算机专业

Horizon是操作面板,其他组件的信息都可以通过操作面板进行或许和设置,跟我们的WINDOWS的界面很像。
Keystone是认证服务,其他所有组件的信息流动都要靠它来进行分析和决策。
1.1 计算服务
Nova虚拟机声明周期的管理,可以创建、管理虚拟机。
创建完虚拟机,得需要操作系统吧,这活儿就有Glance完成。
Glance提供镜像管理服务,相当于为虚拟机增加了操作系统。
所以,Nova和Glance有配合,并都直接与VM连接。
Ceilometer提供监控服务(可选),它就像有个漏斗,能把Openstack内部发生的所有的事件收集起来,然后为计费和监控以及其他程序提供数据支撑。
1.2 网络服务
Neutron提供网络服务,用于外部网络以及各组件之间的网络连接。
1.3 存储服务
Cinder块存储,可以理解为虚拟的磁盘,可实现挂载,基于文件系统的存储。
Swift对象存储,文件可以看成是对象,以块为基本单元,传输过程中不存在打包和解包的过程,因此会实现更高速率的传输。