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. javase-->多线程--线程池

    java的线程池理解 在面向对象编程中,对象创建和销毁是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源.在Java中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收. ...

  2. linux学习日记之鸟哥

    2016年10月11日星期二 df命令解释:用于显示磁盘分区上可以使用的磁盘空间.默认显示单位为KB,可以用该命令来获取硬盘被占用了多少空间,目前还剩多少空间等信息.用法:df 选项 参数例:df – ...

  3. centos7下操作防火墙

    引言 最近使用centos7系统比较频繁,在配置服务器的时候,总是遇到能够ping通服务器,但是就是没有办法访问80端口,这个时候我的直觉告诉我,肯定是防火墙的原因,但是使用iptables却怎么都找 ...

  4. pythony语法小练习

    i=[0,1] b=[2,3] print(dict([i,b]))#列表转换为字典 题目:有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析:可填在百位.十位 ...

  5. css3clock.js - 一个用CSS3与纯js实现的简单时钟

    前言 项目代码明细可以查看我Github上的源码:https://github.com/nelsonkuang/css3clock.js 实现思路 主要是用CSS3控制时针.分针和秒针旋转:时针每12 ...

  6. Web API返回JSON数据

    对Web API新手来说,不要忽略了ApiController 在web API中,方法的返回值如果是实体的话实际上是自动返回JSON数据的例如: 他的返回值就是这样的: { "Conten ...

  7. sprint3

    Sprint 3计划会议: 团队: 郭志豪:http://www.cnblogs.com/gzh13692021053/ 杨子健:http://www.cnblogs.com/yzj666/ 刘森松: ...

  8. STDIN(0), STDOUT(1), STDERR(2), 2 > &1

    当我们在 shell 中执行命令的时候,每个进程都和三个打开的文件相联系,并使用文件描述符(文件描述符是一个简单的整数,用以标明每一个被进程所打开的文件和socket.第一个打开的文件是0,第二个是1 ...

  9. GDB调试汇编堆栈

    GDB调试汇编堆栈 分析过程 C语言源代码 int g(int x) { return x+6; } int f(int x) { return g(x+1); } int main(void) { ...

  10. T-SQL Recipes之Dynamic PIVOT and UNPIVOT

    PIVOT PIVOT在行转列的时候经常用到,最便捷的方式就是通过示例来理解它的作用. 示例1 Query to Return Select Product Data from AdventureWo ...