Your SlideShare is downloading. ×
0
So lets beginNo bug is a minor bug & a patch is a patch.           Even if its one line FIX
Agenda● History● Components of OpenStack● Contributing to project as Developer● Q/A
In the beginning...
http://www.openstack.org
Now ..
Over 100+ othersWhom I cannot accomodate in my previous slide
Also   VC have pumped in over > 80M USD          Startups & EcoSystemDeveloped by more than 330 contributors who     imple...
Release CycleJune 2010 OpenStack FormedAustin 21 October 2010Bexar 3 February 2011Cactus 15 April 2011Diablo 22 September ...
Some stats Ohloh ..
Some stats Ohloh..
Some stats Ohloh..
And ..On 4 April 2013
Grizzly is coming out.
ComponentsCompute (Nova)  provides virtual servers upon demand.Object Store (Swift)  allows you to store or retrieve files...
ComponentsDashboard (Horizon)    provides a modular web­based user interface    for all the OpenStack services. Identity (...
Landed in FolsomNetwork (Quantum)   provides "network connectivity as a service"   between interface devices managed by   ...
Incubated ProjectsCeilometer metering project. it providesmetering, it is not a billing project.Heat provides a REST API t...
Comparison Against AWS     Nova is conceptually similar to EC2.      Swift is conceptually similar to S3.Glance provides m...
Components little deeper
Nova (OpenStack Compute)    ReST based API    Highly-modular framework    Horizontally and massively scalable    Hardw...
Nova components              Scheduler node                               Compute node   API node                    Rabbi...
Swift (OpenStack Object Storage)    Object storage    ReSTful interface    Objects in containers in accounts    No obj...
Swift main components                              Object server               Proxy server   Swift API                  C...
Glance (OpenStack Imageservice)    Disk images and associated metadata    Discover, register and retrieve    Multiple d...
Glance architecture                                                      Swift   glance     CLI tool                      ...
Keystone (OpenStack Identity)    Unified tenants / accounts for all    services          Swift     Glance                ...
“Horizon” (OpenStack Web UI)    Django module to build web UIs                                       Quantum             ...
Did I Miss Something?
U See this boy!!
Bake bake bake ..
Development cycle            Design, blueprint creation            Design Summit, 3 days to discuss and            brainst...
Journey of a feature                Write          Code    Pre-merge Postmerge   Milestone    Final    Design             ...
Lets bring back this boy.
He saw a bug in the CodeLine 55 and 57 were duplicate lines.
STEP 1(A). Sign the CLA, Every developer needs to sign theIndividual Contributor License agreement.(B) Create a Launchpad ...
2. The Environment Setup                  Bug was in Tempest● Get the source code of tempest project from the github  repo...
STEP 3: Getting the Codegit clone git://github.com/openstack/tempest.git
STEP 4: Fix the Bug●   Enter in to tempest directory and let git­review    tool to configure your project. Make sure your ...
●   Remove the duplicate line and save it.●   Now commit your change with a    commit message. You can read more    about ...
After you submit a changeAny Openstack developer may propose orcomment on a change (including voting +1/0/­1on it). Openst...
Few linksGerrit Workflowhttp://wiki.openstack.org/GerritWorkflowGerrit, Jenkins, and GitHubhttp://wiki.openstack.org/Gerri...
http://devstack.org/
OpenStack is... you, us  http://launchpad.net/openstack  http://wiki.openstack.org  http://planet.openstack.org Twitter  @...
Special Thanks...Thierry Carrez, Syed Armani,Ken Pepple Tony Dk &Razique
Introduction and hacking OpenStack,  Pycon India
Introduction and hacking OpenStack,  Pycon India
Introduction and hacking OpenStack,  Pycon India
Introduction and hacking OpenStack,  Pycon India
Introduction and hacking OpenStack,  Pycon India
Introduction and hacking OpenStack,  Pycon India
Introduction and hacking OpenStack,  Pycon India
Introduction and hacking OpenStack,  Pycon India
Introduction and hacking OpenStack,  Pycon India
Introduction and hacking OpenStack,  Pycon India
Introduction and hacking OpenStack,  Pycon India
Introduction and hacking OpenStack,  Pycon India
Upcoming SlideShare
Loading in...5
×

Introduction and hacking OpenStack, Pycon India

2,137

Published on

Slide provides information about overall OpenStack components and ends with how to contribute to OpenStack as a Developer

Published in: Technology
1 Comment
5 Likes
Statistics
Notes
No Downloads
Views
Total Views
2,137
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
86
Comments
1
Likes
5
Embeds 0
No embeds

No notes for slide

Transcript of "Introduction and hacking OpenStack, Pycon India"

  1. 1. So lets beginNo bug is a minor bug & a patch is a patch. Even if its one line FIX
  2. 2. Agenda● History● Components of OpenStack● Contributing to project as Developer● Q/A
  3. 3. In the beginning...
  4. 4. http://www.openstack.org
  5. 5. Now ..
  6. 6. Over 100+ othersWhom I cannot accomodate in my previous slide
  7. 7. Also VC have pumped in over > 80M USD Startups & EcoSystemDeveloped by more than 330 contributors who implemented 185 different features In current stable release name “Folsom”
  8. 8. Release CycleJune 2010 OpenStack FormedAustin 21 October 2010Bexar 3 February 2011Cactus 15 April 2011Diablo 22 September 2011Essex 5 April 2012Folsom 27 September 2012
  9. 9. Some stats Ohloh ..
  10. 10. Some stats Ohloh..
  11. 11. Some stats Ohloh..
  12. 12. And ..On 4 April 2013
  13. 13. Grizzly is coming out.
  14. 14. ComponentsCompute (Nova) provides virtual servers upon demand.Object Store (Swift) allows you to store or retrieve filesImage (Glance) provides a catalog and repository for virtual disk images.
  15. 15. ComponentsDashboard (Horizon) provides a modular web­based user interface for all the OpenStack services. Identity (Keystone) provides authentication and authorization for all the OpenStack services.
  16. 16. Landed in FolsomNetwork (Quantum) provides "network connectivity as a service" between interface devices managed by other OpenStack services (most likely Nova).Block Storage ( Cinder) provides persistent block storage to guest VMs.
  17. 17. Incubated ProjectsCeilometer metering project. it providesmetering, it is not a billing project.Heat provides a REST API to orchestratemultiple cloud applications implementingstandards such as AWS CloudFormation.
  18. 18. Comparison Against AWS Nova is conceptually similar to EC2. Swift is conceptually similar to S3.Glance provides many of the same features as Amazons AMI catalog.Cinder provides block services similar to EBS.
  19. 19. Components little deeper
  20. 20. Nova (OpenStack Compute)  ReST based API  Highly-modular framework  Horizontally and massively scalable  Hardware agnostic  Hypervisor agnostic
  21. 21. Nova components Scheduler node Compute node API node RabbitMQ Object server Database Datastore
  22. 22. Swift (OpenStack Object Storage)  Object storage  ReSTful interface  Objects in containers in accounts  No object size limit  3+ replication factor in separate  Stable and deployed in production
  23. 23. Swift main components Object server Proxy server Swift API Container server Account server
  24. 24. Glance (OpenStack Imageservice)  Disk images and associated metadata  Discover, register and retrieve  Multiple disk formats : raw, VHD, vmdk, vdi, qcow2, aki, ari, ami  Multiple container formats : ovf, bare, aki, ari, ami
  25. 25. Glance architecture Swift glance CLI tool S3 glance-api glance.client Glance API HTTP Python library Local FS Images ... ... Registry API glance-registry ... SQL Metadata
  26. 26. Keystone (OpenStack Identity) Unified tenants / accounts for all services Swift Glance keystone-manage Session API Keystone Admin API NovaAPI servers ... SQL LDAP
  27. 27. “Horizon” (OpenStack Web UI)  Django module to build web UIs Quantum Cinder Swift Glance Nova API servers
  28. 28. Did I Miss Something?
  29. 29. U See this boy!!
  30. 30. Bake bake bake ..
  31. 31. Development cycle Design, blueprint creation Design Summit, 3 days to discuss and brainstorm PTLs define cycle targets 6 months Feature milestones every 4 weeks Last feature milestone, no more features allowed Release branch is cut, next cycle starts Final release
  32. 32. Journey of a feature Write Code Pre-merge Postmerge Milestone Final Design code review tests tests Release Release feature branchtrunk
  33. 33. Lets bring back this boy.
  34. 34. He saw a bug in the CodeLine 55 and 57 were duplicate lines.
  35. 35. STEP 1(A). Sign the CLA, Every developer needs to sign theIndividual Contributor License agreement.(B) Create a Launchpad Account(https://launchpad.net/) if you dont have one.Its a must.(C). Add yourself to the contributors wiki(D). Request membership in the openstack­clagroup on Launchpad. Membership in this group isrequired in order to submit code changes.
  36. 36. 2. The Environment Setup Bug was in Tempest● Get the source code of tempest project from the github repo.● Install git on your local machine. Ex: On ubuntu just type sudo apt­get install git­core● Configure Your user name and password: git config ­­global user.name "Firstname Lastname" git config ­­global user.email "your_email@youremail.com"● Install git­review tool On ubuntu: sudo apt­get install git­review On other unix like systems: pip install git­review
  37. 37. STEP 3: Getting the Codegit clone git://github.com/openstack/tempest.git
  38. 38. STEP 4: Fix the Bug● Enter in to tempest directory and let git­review tool to configure your project. Make sure your gerrit/launchpad user name is the same as the current running user. $ cd tempest $ git review ­s● Get the latest upstream changes: $ git remote update $ git checkout master $ git pull origin master $ git checkout ­b duplicate_line_in_base.py●
  39. 39. ● Remove the duplicate line and save it.● Now commit your change with a commit message. You can read more about commit messages on s http ://wiki.openstack.org/GitCommitMessage . $git commit ­am “Removed the duplicate line from base.py.”● Finally send the code for review. $ git review
  40. 40. After you submit a changeAny Openstack developer may propose orcomment on a change (including voting +1/0/­1on it). Openstack projects have a policyrequiring two positive reviews from corereviewers.When a review has two +2 reviews and one ofthe core team believes it is ready to be merged.Jenkins will run tests on the change, and if theypass, it will be merged.
  41. 41. Few linksGerrit Workflowhttp://wiki.openstack.org/GerritWorkflowGerrit, Jenkins, and GitHubhttp://wiki.openstack.org/GerritJenkinsGithubHow To Contributehttp://wiki.openstack.org/HowToContribute
  42. 42. http://devstack.org/
  43. 43. OpenStack is... you, us http://launchpad.net/openstack http://wiki.openstack.org http://planet.openstack.org Twitter @OpenStack @OpenStackIndia
  44. 44. Special Thanks...Thierry Carrez, Syed Armani,Ken Pepple Tony Dk &Razique
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×