OpenStack Hacker

态度:开放、主动、沟通

影响力:能说、能写、能分享

四化:自动化、流程化、系统化、文档化


0级

掌握一些基本技能:python、c、linux、git、unittest、vim/emacs

python学习

书籍:

  • 《python参考手册》

  • 《python基础教程》

教程: codecademy

挑战: Python Challenge

文档: Python v2.7.3 documentation

高级: The Hitchhiker’s Guide to Python!

Linux环境学习

在线书籍: 鸟哥的Linux私房菜

Linux编程学习

书籍:

  • 《Unix环境高级编程》

  • 《UNIX系统编程》

Git学习

书籍:

  • 《版本控制之道》

在线书籍:

教程:

进阶:

最常用的git命令:

Unittest学习

教程: python unittest

VIM学习

教程: vim-adventures


1级

学习openstack的基本概念

使用openstack

使用devstack安装openstack开发测试环境

使用deb包安装openstack

使用源码安装openstack

了解openstack的配置

调试openstack

各种调试方法 * pdb

学习python的PEP8

学习python的基本库

  • SQLAlchemy

  • pyzmq

  • libvirt

  • pylint

  • nosetest

  • TODO

学习测试

  • unit test

  • function test

  • integration test

学习数据库

  • mysql

写blog


2级

学习python的库和用法

理解python中optparse.OptionParser类。

  • http://docs.python.org/library/optparse.html

理解collections.Mapping类。

  • http://docs.python.org/library/collections.html

分析浅拷贝,深拷贝

  • http://blog.csdn.net/winterttr/article/details/2590741

  • http://longmans1985.blog.163.com/blog/static/70605475200991603624942/

  • http://book.51cto.com/art/200806/77233.htm

LoggerAdapter类

  • http://docs.python.org/howto/logging-cookbook.html#context-info中。

介绍rabbitmq

  • http://blog.ftofficer.com/2010/03/translation-rabbitmq-python-rabbits-and-warrens/

  • http://kombu.readthedocs.org/en/latest/introduction.html#synopsis

Python Decorators入门

  • http://blog.csdn.net/beckel/article/details/3585352

Python @classmethod @staticmethod的区别。

五分钟理解元类(Metaclasses)

  • http://www.cnblogs.com/coderzh/archive/2008/12/07/1349735.html

nova中用到的python知识

  • http://canx.me/2011/12/%E4%B8%80%E4%BA%9Bpython/

python中类的总结

  • http://ipseek.blog.51cto.com/1041109/802243

with的总结

  • http://effbot.org/zone/python-with-statement.htm

Pool类

  • http://nullege.com/codes/search/eventlet.pools.Pool

paste模块

  • http://pythonpaste.org/

python魔术方法

  • http://pycoders-weekly-chinese.readthedocs.org/en/latest/issue6/a-guide-to-pythons-magic-methods.html

Routes模块

  • http://routes.readthedocs.org/en/latest/index.html

2.5版yield之学习心得

学习OpenStack HACKING.rst

在nova目录下的HACKING.rst文件

学习nova的架构

  • nova的架构分析:TODO(rongze)

学习nova的代码

学习nova的各种机制

学习nova的单元测试

  • 单元测试的原理: TODO(rongze)

  • nova单元测试架构: TODO(rongze)

学习CI

学习代码提交技能:git review、gerrit、launchpad。 TODO(rongze)

写blog,技术分享


3级

提交patch(自己的项目)

提交patch(openstack社区)

开发nova的扩展API

TODO(rongze)

  • 设计API

  • 编写nova/api

开发cinder的driver

学习开发driver:TODO(rongze)

写blog,技术分享


4级

Review别人的代码

TODO(rongze)

参加IRC meeting

参加邮件列表讨论

TODO(rongze)

跟踪openstack项目的发展

TODO(rongze)

写blog,技术分享


5级

OpenStack二次开发

熟悉openstack某个子项目,能够熟练进行二次开发:TODO(rongze)

OpenStack新项目

能够使用openstack的架构,开发新的项目:TODO(rongze)

写blog,技术分享


6级

TODO(rongze)


领域知识

虚拟化

网络

存储

对象存储

块存储

分布式存储

成为OpenStack工程师的更多相关文章

  1. OpenStack Juno 版本发布——支持Spark和NFV[转]

    作者:郑晨,OpenStack中国社区,转载请注明出处 美国时间2014年10月16日,OpenStack Juno版本正式发布,这是OpenStack开源云计算项目自2010年创立以来的第10个版本 ...

  2. 关于OpenStack的学习路线及相关资源汇总

    首先我们想学习openstack,那么openstack是什么?能干什么?涉及的初衷是什么?由什么来组成?刚接触openstack,说openstack不是一个软件,而是由多个组件进行组合,这是一个更 ...

  3. 写在最前面 - 每天5分钟玩转 OpenStack(1)

    <每天5分钟玩转 OpenStack>是一个 OpenStack 教程,这是第 1 篇. 这个教程有下面两个特点: 系统讲解 OpenStack 从架构到各个组件:从整体到细节逐一讨论 重 ...

  4. 探索 OpenStack 之(7):Neutron 深入探索之 Open vSwitch (OVS) + GRE 之 Neutron节点篇

    0. 测试环境 硬件环境:还是使用四节点OpenStack部署环境,参见 http://www.cnblogs.com/sammyliu/p/4190843.html OpenStack配置: ten ...

  5. 工具武装的前端开发工程师 Mac 软件清单

    Awesome Mac  这个仓库主要是收集非常好用的Mac应用程序.软件以及工具,主要面向开发者和设计师.有这个想法是因为我最近发了一篇较为火爆的涨粉儿微信公众号文章<工具武装的前端开发工程 ...

  6. 深入理解Openstack自动化部署

    前言 说实话,看到自己在博客园的排名感到惭愧,因为自己最近两年没有持续地在博客园上写技术博客了,有人私下问我是不是荒废了?翻翻15年和16年的博客,真的是少的可怜.一方面的确由于岗位的变化,导致了工作 ...

  7. Puppet Openstack Mitaka Design Summit小结

    Puppet Openstack Design Summit小结 经过Puppet Openstack社区的不断努力,Puppet Openstack社区目前提供的Official Modules已经 ...

  8. 如何向Openstack社区提交一个新项目

    前几天有个朋友问我:自己有一个idea不错的项目,也把基本的框架写好了,想贡献到Openstack社区,却不知道应该怎么做.正好之前我有过类似的经历,那么来分享一下我是如何向Openstack社区提交 ...

  9. 恒天云 3.0:打造基于OpenStack的私有云新模式

    摘自恒天云官网:http://www.hengtianyun.com/download-show-id-17.html 云计算在当今IT世界中已发展地如火如荼,越来越多的企业利用云计算改造传统的数据中 ...

随机推荐

  1. mysql 数据库连接超时的问题 autoReconnect=true

    最近在使用spring-jdbc数据库连接管理时,出现一个奇怪问题,当天部署运行没问题,第二天再试就报以下异常问题 org.springframework.dao.RecoverableDataAcc ...

  2. Python的方法解析顺序(MRO)

    mro即method resolution order,主要用于在多继承时判断调的属性的路径(来自于哪个类). http://blog.csdn.net/imzoer/article/details/ ...

  3. 技术杂记-改造具有监控功能的数据库连接池阿里Druid,支持simple-jndi,kettle

    kettle内置的jndi管理是simple-jndi,功能确实比较简单,我需要监控kettle性能,druid确实是很不错的选择,但没有提供对应的支持,我改进了druid源码,实现了simple-j ...

  4. PHP中计算时间段

    在php中 strtotime() 函数将任何英文文本的日期时间描述解析为 Unix 时间戳. 语法strtotime(time,now)  time函数为需要转化为时间戳的时间点  now为返回值的 ...

  5. tp框架之留言板练习

    登陆控制器与显示页面 <?php namespace Admin\Controller; use Think\Controller; class DengController extends C ...

  6. 与你相遇好幸运,制作自己的Yeoman Generator

    使用别人写好的生成器: npm install -g yonpm install -g generator-angularyo angular 如何自己制作符合自己心仪的生成器呢: https://g ...

  7. python中list作为全局变量无需global声明的原因

    发现一个问题. python中list变量作为全局变量时,在函数中可以直接修改. 而普通变量则需要先在函数中global声明,否则会报错. 例如: a = 1 def fun(): global a ...

  8. Javascript中数组的基本操作

    删除数组指定的某个元素 via首先可以给JS的数组对象定义一个函数,用于查找指定的元素在数组中的位置,即索引,代码为: Array.prototype.indexOf = function(val) ...

  9. Range Sum Query - Mutable

    https://leetcode.com/problems/range-sum-query-mutable/ 因为数组会变动,所以缓存机制受到了挑战...每次更新数组意味着缓存失效,这样一更新一查找的 ...

  10. 【leetcode】Valid Sudoku

    题目简述: Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules. The Sudoku board cou ...