`
flyingsword945
  • 浏览: 24279 次
  • 性别: Icon_minigender_2
  • 来自: ...
文章分类
社区版块
存档分类
最新评论

openstack源码学习1

阅读更多

1. openstack的keystone,glance,nova源码结构都非常相似,使用wsgi协议,webob,paste,routes几个基于python的框架。     

WSGI   Web服务器 网关 接口(Python Web Server Gateway Interface,缩写为WSGI)是Python应用程序或框架和Web服务器之间的一种接口。

webob 是python基于WSGI request and response 的工具组件。

Routes 是采用Python实现的Rails的URL映射控制,Routes很容易创建漂亮和简洁的URL的RESTful。                Python Paste  - WSGI底层工具集. 包括多线程, SSL和 基于Cookies, sessions等的验证(authentication)库. 可以用Paste方便得搭建自己的Web框架。

 

安装的openstack系统中源码位置:

 可以利用find / -name api.py搜索,安装好的openstack源码位置在 /usr/lib/python2.6/site-pakages/

 

OpenStack   libvirt   hypervisor driver(CIM)?

 

2. 在openstack中非常重要的基本概念Server,Manager,Driver。

 

Openstack的Service分为2种: Service 和 WSGIService.

前者供内部调用,通过RPC(Remote Procedure Call)

后者对外部提供API,通过http

Manager统一对外的接口

Driver兼容不同的底层结构

 

Server顾名思义就是服务,openstack的各种应用都 是以服务的形式暴露出来,openstack中主要有两种服务一种是以linux中的服务守护进程方式存在,一种是WSGIService一种以WSGI 标准形式存在的web服务。在这里讨论的server就是第一种形式的服务。这个server的主要存在形式就是一个消息队列的守护进程,接受特定 topic的消息执行相应的命令,对外提供一个rpc接口,一个sever对应一个topic。

 

一个server要有什么样的具体功能,也就是可以对外提 供什么样的服务功能,是由其中的manager来决定,manager顾名思义就是管理者,主要提供管理功能,具体的操作是由manager中定义 driver决定的,一个driver可以看做是一个worker,在manager的管理协调下(manager可以调用其他相关模块功能,结合 driver)执行相关的工作,为外界提供相关服务应用。

分享到:
评论

相关推荐

    OpenStack源码

    OpenStack是一个开源的云计算平台,用于构建私有云和公共云服务。它的核心组件包括计算(Nova)、存储(Cinder)、网络...此外,参与社区的开发活动,阅读官方文档和相关博客,也是学习OpenStack源码的好方法。

    openstack其中四大组件源码

    通过深入学习这四大组件的源码,开发者不仅可以了解OpenStack的基本架构和工作原理,还能对云存储、计算和身份管理有更深入的理解。此外,源码分析对于定制化开发、性能优化以及故障排查都具有重要意义。对于希望...

    openstack nova源码分析

    然而,由于源码庞大且复杂,建议初学者结合官方文档、教程和社区资源进行学习。对于每一个关键组件和模块,都可以从高层次的接口设计到低层次的实现细节逐步深入,逐步掌握OpenStack Nova的核心技术。

    nova源码+无标注+OpenStack社区下载

    Nova是OpenStack项目的核心组件之一,负责计算服务的...通过对源码的深入学习,开发者可以更好地理解OpenStack的工作原理,从而定制和优化自己的云环境。此外,参与社区的开发和讨论,也是提升技能、贡献开源的好方式。

    openstack部分源码

    OpenStack 是一个开源的云计算平台,它提供了计算、存储、网络等基础设施服务,以及...通过学习这些客户端的源码,可以深入了解 OpenStack 的工作原理,同时为开发自定义工具或集成 OpenStack 功能到现有系统提供便利。

    源码安装openstack软件包

    源码安装虽然复杂,但好处是可以灵活定制和调试,适合学习和深入理解OpenStack的工作原理。在实际生产环境中,通常会选择使用打包好的OpenStack版本,如RDO(Red Hat OpenStack)或Ubuntu Cloud Archive,以简化部署...

    openstack 云计算源码

    OpenStack 的源码是其核心价值所在,因为它让开发者和运维人员能够深入理解其工作原理,自定义功能,并根据需要进行扩展。 在"nova-2011.2"这个文件中,Nova 是 OpenStack 的关键组件之一,它负责计算服务。Nova ...

    Openstack学习资料链接总结-这些链接都不收藏还怎么学ops

    源码分析方面,例如**刘冬**的博客(http://blog.csdn.net/column/details/liudong.html)提供了对OpenStack源码的解读,这对于开发者深入理解OpenStack的运行机制非常有帮助。 总之,学习OpenStack需要不断探索和...

    openstack实战演练与开发入门

    学习要求: 熟悉基本的linux命令 具备... 定制研发:在学习openstack源码级深度解析培训后,你能了解openstack源码的体系结构,并能根据需要进行定制开发,满足您在实际生产环境中OpenStack的各种疑问和不满足的功能。

    最全的Openstack学习资料-不下载会后悔的

    内容包含本人学习openstack一年左右的时间所积累的一些资料,包括openstack不同版本的测试,安装文档,学习资料,自动化脚本安装,部署,ceph集成,网络规划等等内容,希望能对大家有所帮助,最重要的是你要亲手搭建...

    OpenStack技术源码模块解读.docx

    阅读OpenStack源码时,推荐使用vim等代码编辑器,并进行适当的配置以支持代码导航和搜索。同时,熟悉Python的动态类型特性及如何在OpenStack环境中部署和调试服务是非常重要的。 5. 持续学习与社区参与 OpenStack...

    openstack云平台搭建指南

    1. **OpenStack核心组件** - **Nova**:负责计算资源的调度和服务,包括创建、销毁虚拟机(VM)实例。 - **Neutron**:提供网络服务,包括虚拟网络、路由器和端口的管理。 - **Swift**:对象存储服务,用于存储和...

    openstack自动化搭建脚本

    这次是基于devstack进⾏⾃动化部署,后续会通过解析这个部署脚本的源代码的形式,学习openstack的部署,同时⼀步步阅读 openstack其他服务的源码,⽐如keystone、nvoa等 ⾃动化部署原理: ⾃动执⾏安装脚本 将安装...

    OpenStack实战演练及开发入门完整全套培训

    定制研发:在学习openstack源码级深度解析培训后,你能了解openstack源码的体系结构,并能根据需要进行定制开发,满足您在实际生产环境中OpenStack的各种疑问和不满足的功能。 ------------------------课程内容---...

    OPENSTACK 计算 (Compute) - Nova源码

    尽管如此,对于学习和理解OpenStack Nova的早期设计和工作原理,这个版本的源码仍然具有参考价值。 在源码中,我们可以看到以下几个关键模块: - **compute**:包含nova-compute服务的代码,涉及虚拟机的创建、...

    OpenStack实战演练及开发入门完整全套培训__百度云视频链接

    定制研发:在学习openstack源码级深度解析培训后,你能了解openstack源码的体系结构,并能根据需要进行定制开发,满足您在实际生产环境中OpenStack的各种疑问和不满足的功能。 ------------------------课程内容---...

    openstack超级源码

    通过阅读和理解"openstack超级源码",开发者可以深入学习OpenStack Nova的工作原理,提高解决实际问题的能力,为OpenStack的优化和定制打下坚实基础。同时,这也对云平台的运维和管理有着极大的帮助,可以更好地理解...

    OpenStack中国行PPT(成都)

    由于其开放源码、灵活可定制的特点,许多企业和组织选择OpenStack来降低成本,提高运营效率,同时也推动了国内OpenStack技术社区的发展和人才培育。 在成都站的OpenStack中国行活动中,可能涵盖了OpenStack的最新...

    openstack_js-源码.rar

    通过研究`openstack_js-源码.zip`,开发者可以学习到如何设计和实现一个高效的云服务客户端库,理解OpenStack服务的调用流程,以及如何处理分布式系统的身份验证和错误管理。此外,还可以掌握如何利用JavaScript的...

    OpenStack代码贡献以及检视规范

    尽管这个文件名没有明确指出内容,但根据标签"源码"和"工具",我们可以推测它可能与OpenStack的开发实践和相关工具的使用有关。 总之,对OpenStack的代码贡献要求开发者熟悉Git和Gerrit的工作流,遵守代码风格和...

Global site tag (gtag.js) - Google Analytics