成为OpenStack工程师
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
使用curl管理openstack
使用devstack安装openstack开发测试环境
使用deb包安装openstack
使用源码安装openstack
了解openstack的配置
我们自己的教程:TODO
调试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的架构源码分析:TODO(rongze)
学习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工程师的更多相关文章
- OpenStack Juno 版本发布——支持Spark和NFV[转]
作者:郑晨,OpenStack中国社区,转载请注明出处 美国时间2014年10月16日,OpenStack Juno版本正式发布,这是OpenStack开源云计算项目自2010年创立以来的第10个版本 ...
- 关于OpenStack的学习路线及相关资源汇总
首先我们想学习openstack,那么openstack是什么?能干什么?涉及的初衷是什么?由什么来组成?刚接触openstack,说openstack不是一个软件,而是由多个组件进行组合,这是一个更 ...
- 写在最前面 - 每天5分钟玩转 OpenStack(1)
<每天5分钟玩转 OpenStack>是一个 OpenStack 教程,这是第 1 篇. 这个教程有下面两个特点: 系统讲解 OpenStack 从架构到各个组件:从整体到细节逐一讨论 重 ...
- 探索 OpenStack 之(7):Neutron 深入探索之 Open vSwitch (OVS) + GRE 之 Neutron节点篇
0. 测试环境 硬件环境:还是使用四节点OpenStack部署环境,参见 http://www.cnblogs.com/sammyliu/p/4190843.html OpenStack配置: ten ...
- 工具武装的前端开发工程师 Mac 软件清单
Awesome Mac 这个仓库主要是收集非常好用的Mac应用程序.软件以及工具,主要面向开发者和设计师.有这个想法是因为我最近发了一篇较为火爆的涨粉儿微信公众号文章<工具武装的前端开发工程 ...
- 深入理解Openstack自动化部署
前言 说实话,看到自己在博客园的排名感到惭愧,因为自己最近两年没有持续地在博客园上写技术博客了,有人私下问我是不是荒废了?翻翻15年和16年的博客,真的是少的可怜.一方面的确由于岗位的变化,导致了工作 ...
- Puppet Openstack Mitaka Design Summit小结
Puppet Openstack Design Summit小结 经过Puppet Openstack社区的不断努力,Puppet Openstack社区目前提供的Official Modules已经 ...
- 如何向Openstack社区提交一个新项目
前几天有个朋友问我:自己有一个idea不错的项目,也把基本的框架写好了,想贡献到Openstack社区,却不知道应该怎么做.正好之前我有过类似的经历,那么来分享一下我是如何向Openstack社区提交 ...
- 恒天云 3.0:打造基于OpenStack的私有云新模式
摘自恒天云官网:http://www.hengtianyun.com/download-show-id-17.html 云计算在当今IT世界中已发展地如火如荼,越来越多的企业利用云计算改造传统的数据中 ...
随机推荐
- javase-->多线程--线程池
java的线程池理解 在面向对象编程中,对象创建和销毁是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源.在Java中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收. ...
- linux学习日记之鸟哥
2016年10月11日星期二 df命令解释:用于显示磁盘分区上可以使用的磁盘空间.默认显示单位为KB,可以用该命令来获取硬盘被占用了多少空间,目前还剩多少空间等信息.用法:df 选项 参数例:df – ...
- centos7下操作防火墙
引言 最近使用centos7系统比较频繁,在配置服务器的时候,总是遇到能够ping通服务器,但是就是没有办法访问80端口,这个时候我的直觉告诉我,肯定是防火墙的原因,但是使用iptables却怎么都找 ...
- pythony语法小练习
i=[0,1] b=[2,3] print(dict([i,b]))#列表转换为字典 题目:有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析:可填在百位.十位 ...
- css3clock.js - 一个用CSS3与纯js实现的简单时钟
前言 项目代码明细可以查看我Github上的源码:https://github.com/nelsonkuang/css3clock.js 实现思路 主要是用CSS3控制时针.分针和秒针旋转:时针每12 ...
- Web API返回JSON数据
对Web API新手来说,不要忽略了ApiController 在web API中,方法的返回值如果是实体的话实际上是自动返回JSON数据的例如: 他的返回值就是这样的: { "Conten ...
- sprint3
Sprint 3计划会议: 团队: 郭志豪:http://www.cnblogs.com/gzh13692021053/ 杨子健:http://www.cnblogs.com/yzj666/ 刘森松: ...
- STDIN(0), STDOUT(1), STDERR(2), 2 > &1
当我们在 shell 中执行命令的时候,每个进程都和三个打开的文件相联系,并使用文件描述符(文件描述符是一个简单的整数,用以标明每一个被进程所打开的文件和socket.第一个打开的文件是0,第二个是1 ...
- GDB调试汇编堆栈
GDB调试汇编堆栈 分析过程 C语言源代码 int g(int x) { return x+6; } int f(int x) { return g(x+1); } int main(void) { ...
- T-SQL Recipes之Dynamic PIVOT and UNPIVOT
PIVOT PIVOT在行转列的时候经常用到,最便捷的方式就是通过示例来理解它的作用. 示例1 Query to Return Select Product Data from AdventureWo ...