openstack学习
来源:互联网 发布:怎样制做淘宝原图 编辑:程序博客网 时间:2024/06/08 05:26
一、openstack的历史
由于工作的原因,有幸接触了openstack,之前对openstack也有所了解,但是没有深入的研究,最终也仅限于了解。之后将进行系统的openstack的学习,通过源码的方式进行学习,源码的阅读会对整个架构有深入的理解,在碰到问题时可以很好的进行解决和定位。
OpenStack是一个面向IaaS层的云管理平台开源项目,用于实现公有云和私有云的部署及管理。最开始Openstack只有两个组件,分别为提供计算服务的Nova项目以及提供对象存储服务的Swift,其中Nova不仅提供虚拟机服务,还包含了网络服务、块存储服务、镜像服务以及裸机管理服务。之后随着项目的不断发展,从Nova中拆分成多个独立的项目提供不同的服务,如nova-volume拆分为Cinder项目提供块存储服务,nova-image拆分为Glance项目,提供镜像存储服务,nova-network则是neutron的前身,裸机管理也从Nova中分离出来为Ironic项目。最开始容器服务也是由Nova提供支持的,作为Nova的driver之一来实现,而后迁移到Heat,到现在已经分离成独立的项目Magnum,后来Magnum主要提供容器编排服务,单纯的容器服务由Zun项目负责。最开始Openstack并没有认证,从E版开始才加入认证服务Keystone,至此Openstack 6个核心服务才终于聚齐了
- Keystone 认证服务。
- Glance 镜像服务。
- Nova 计算服务。
- Cinder 块存储服务。
- Neutorn 网络服务。
- Swift 对象存储服务。
二、openstack源码阅读
阅读openstack源码最重要的是了解整个项目的目录结构,以nova为例,nova中有许多的目录,每个目录的名字虽然是各个组件的名字,但是nova中的各个组件的功能却不都是在对应的目录中完成,例如,compute目录中并不一定是nova-compute节点上的操作,而主要是和compute相关(虚拟机操作相关)的功能实现。
在每个目录文件中基本都会有api.py、rpcapi.py和manager.py三个文件,这三个文件基本是每个目录中最重要的模块。
- api.py 通常是供其它组件调用的库。换句话说,该模块通常并不会由本模块调用。
- rpcapi.py 这个是RPC请求的封装,或者说是RPC实现的client端,该模块封装了RPC请求调用。
- manager.py 这个才是真正服务的功能实现,也是RPC的服务端,即处理RPC请求的入口,实现的方法通常和rpcapi实现的方法对应。
阅读全文
0 0
- openstack学习
- openstack学习
- openstack学习之白话Openstack
- openstack学习之白话Openstack
- openstack学习资源
- openstack学习文档
- openstack学习资料
- OpenStack学习资源
- 【Openstack】paste.deploy学习
- openstack学习资料
- OpenStack 学习笔记一
- OpenStack学习网站
- openstack 学习之glance
- OpenStack Neutron FWaaS 学习
- OpenStack Swift学习笔记
- OpenStack 学习资源
- OpenStack 之 keystone学习
- Ceph-Openstack学习笔记
- CCF 工资计算(Java)
- 实验吧-程序逻辑问题writeup
- 闭包
- Python 学习笔记(自用)(有C++基础)(连载)
- 游戏挂机小项目 每天100¥
- openstack学习
- Ajax实现分页二
- 数据库分区分表
- 开贴宣言
- 安装64位oracle用PLSQL Developer连接报错问题
- 公众号“今日作文素材”文章列表 (20170826-20170901)
- 面试5- se
- LeetCode Two Sum
- softmax介绍