Training Guides Trunk

Embed Size (px)

DESCRIPTION

OpenStack

Citation preview

  • 5/22/2018 Training Guides Trunk

    1/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    i

    OpenStack Training Guides, OpenStack Foundation

    Havana, 2013.2 (2013-09-09)Copyright 2010-2013 OpenStack Foundation Some rights reserved.

    Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the

    License. You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an

    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the

    specific language governing permissions and limitations under the License.

    Except where otherwise noted, this document is licensed under

    Creative Commons Attribution ShareAlike 3.0 License.

    http://creativecommons.org/licenses/by-sa/3.0/legalcode

    OpenStack Compute offers open source software for cloud administration and management for any organization. This

    guide describes how to install, manage, and understand the software that runs OpenStack Compute.

    http://creativecommons.org/licenses/by-sa/3.0/legalcodehttp://creativecommons.org/licenses/by-sa/3.0/legalcodehttp://creativecommons.org/licenses/by-sa/3.0/legalcodehttp://creativecommons.org/licenses/by-sa/3.0/legalcodehttp://creativecommons.org/licenses/by-sa/3.0/legalcodehttp://www.apache.org/licenses/LICENSE-2.0
  • 5/22/2018 Training Guides Trunk

    2/74

  • 5/22/2018 Training Guides Trunk

    3/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    3

    Table of Contents

    Start Here ..................................................................................................................................................... i

    1. OpenStack Training Guides Are Under Construction ...................... ............... .............. ............... ....... 1Associate Training Guide ............... .............. ............... .............. ............... ............... .............. ............... ......... i

    1. OpenStack Associate, What Does This Book Intend to Teach ................... .............. ............... ............ 1

    2. OpenStack Associate, Getting Started .............................................................................................. 3

    3. OpenStack Associate, General Material To Learn ....................... ............... .............. ............... .......... 5

    Installation of OpenStack from Trunk .......................................................................................... 5

    4. OpenStack Associate, Assessment ......... ............... ............................................................................ 7

    Operator Training Guide .............................................................................................................................. i

    1. OpenStack Operator, What Does This Book Intend to Teach ............................................................ 1

    2. OpenStack Operator, Getting Started .............................................................................................. 3

    3. OpenStack Operator, General Material To Learn ............... .............. ............... ............... .............. .... 5

    Editing Code .......................................................... ..................................................................... 5

    4. OpenStack Operator, Assessment .................................................................................................. 13

    Developer Training Guide ............................................................................................................................. i

    1. OpenStack Developer, What Does This Book Intend to Teach .......................................................... 1

    2. OpenStack Developer, Getting Started ............................................................................................ 3

    3. OpenStack Developer, General Material To Learn ..... ....................................................................... 5

    4. OpenStack Developer,Assessment ................................................................................................... 7

    Architect Training Guide ............................................................................................................................... i

    1. OpenStack Architect, What Does This Book Intend to Teach ............... .............. ............... .............. .. 12. OpenStack Architect, Getting Started ... ..... ..... .... ..... ..... ..... ..... ..... .... ..... ..... ..... ................................. 3

    3. OpenStack Architect, General Material To Learn .............................................................................. 5

    4. OpenStack Architect, Assessment . ..... ..... ..... ..... .... ........................................................................... 7

  • 5/22/2018 Training Guides Trunk

    4/74

  • 5/22/2018 Training Guides Trunk

    5/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    i

    Start Here

  • 5/22/2018 Training Guides Trunk

    6/74

  • 5/22/2018 Training Guides Trunk

    7/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    iii

    Table of Contents

    1. OpenStack Training Guides Are Under Construction .......................... ............... .............. ............... .......... 1

  • 5/22/2018 Training Guides Trunk

    8/74

  • 5/22/2018 Training Guides Trunk

    9/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    1

    1. OpenStack Training Guides Are Under

    ConstructionWe need your help! This is a community driven project to provide the user group community access to

    OpenStack training materials. We cannot make this work without your help.

    There are few ways to get involved. The easiest way is to use the training guides. Look at the end of each

    section and you will see the Submit a Bug link. When you find something that can be improved or fixed,

    submit a bug by clicking on the link.

    If you want to get involved with the effort around OpenStack community training, read on, here are the

    options:

    Attending a user group using the training materials. The OpenStack community training started at the

    SFBay OpenStack User Group. More information this user group and others using the training guides on the

    OpenStack User Groups page.

    Teach / Lead a user group using the training materials. Awesome! Your experience will not only give

    you more experience with OpenStack, but you will help some people find new jobs. We have put all the

    information about How To Run An OpenStack Hackathonhere.

    Helping to create the training pages.

    We are currently working on creating the Associate Training Guide. It is the first of four training guides.

    We are using the Basic Install Guide docsas the source for most of the material. The basic idea is we link

    as much of the material from existing documentation so we reuse and improve the existing docs. The

    topics in the Associate Training Guide are in a bunch of KanBan story board cards. Each card in the story

    board represents something that an Associate trainee needs to learn. But first things first, you need to

    get some basic tools and accounts installed and configured before you can really start.

    http://docs.openstack.org/grizzly/openstack-compute/install/apt/content/http://docs.openstack.org/grizzly/openstack-compute/install/apt/content/https://wiki.openstack.org/wiki/OpenStackUserGroups/HowTo#Running_a_Hackathonhttps://wiki.openstack.org/wiki/OpenStackUserGroups
  • 5/22/2018 Training Guides Trunk

    10/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    2

    Getting Accounts and Tools:We can't do this without operators and developers using and creating the

    content. Anyone can contribute content. You will need the tools to get started. Go to the Getting Tools

    and Accountspage.

    Pick a Card:Once you have your tools ready to go, you can assign some work to yourself. Go to theTraining Trello/KanBan storyboardand assign a card / user story from the Sprint Backlog to yourself. If

    you don't have a Trello account, no problem, just create one. Email [email protected] and you will

    have access.

    Create the Content:Each card / user story from the KanBan story board will be a separate chunk of

    content you will add to the openstack-manuals repository openstack-training sub-project. I created

    a template file to explain the xi:include syntax. The user-story-includes-template.xmlfile is in the

    openstack-manuals/openstack-training/directory. I also assigned one of the cards Install Ubuntu 12.04

    LTSto myself. I moved it from the Sprint board to the Doing board. I then created a branch using Git.

    You will need to create branch in order to create new material. If youdon't know whata branch is, no

    problem. Go to the Creating a Branchpage. Once my branch was created, I then opened my XML editor

    Oxygen and opened the set file st-training-guides.xml. The XML structure follows the hierarchy Set -

    > Book -> Chapter -> Section. The st-training-guides.xmlfile holds the set level. Notice the set file uses

    xi:include statements to include the books. We want to open the associate book. Open the associate

    book and you will see the chapter include statements. These are the chapters that make up the Associate

    Training Guide book. I wanted to add my new content from my assigned card Install Ubuntu 12.04 LTSto

    the bk001-ch003-asssociate-general.xmlfile. Look at the file to see my example. Once I finished adding

    and editing, I needed to merge the new content. Review Creating a Branchagain for instructions on how

    to completethe branch merge. Thats it!

    Note

    Here are more details on commiting changes to OpenStack fixing a documentation bug, Gerrit

    Workflow, Documentation HowToand , Git Documentation

    http://docs.openstack.org/trunk/openstack-training/content/operator-create-branch.htmlhttps://trello.com/c/n274jOdP/9-as-a-trainee-i-need-to-be-able-to-understand-how-to-install-ubuntu-12-04-or-13-04-in-later-versionshttp://docs.openstack.org/trunk/openstack-training/content/operator-create-branch.htmlhttp://docs.openstack.org/trunk/openstack-training/content/operator-create-branch.htmlhttps://trello.com/c/n274jOdP/9-as-a-trainee-i-need-to-be-able-to-understand-how-to-install-ubuntu-12-04-or-13-04-in-later-versionshttp://git-scm.com/dochttps://wiki.openstack.org/wiki/Documentation/HowTohttps://wiki.openstack.org/wiki/Gerrit_Workflowhttps://wiki.openstack.org/wiki/Gerrit_Workflowhttp://docs.openstack.org/trunk/openstack-training/content/operator-fix-documentation-bug.htmlhttp://docs.openstack.org/trunk/openstack-training/content/operator-create-branch.htmlhttps://trello.com/c/n274jOdP/9-as-a-trainee-i-need-to-be-able-to-understand-how-to-install-ubuntu-12-04-or-13-04-in-later-versionshttp://docs.openstack.org/trunk/openstack-training/content/operator-create-branch.htmlhttps://trello.com/c/n274jOdP/9-as-a-trainee-i-need-to-be-able-to-understand-how-to-install-ubuntu-12-04-or-13-04-in-later-versionshttps://trello.com/c/n274jOdP/9-as-a-trainee-i-need-to-be-able-to-understand-how-to-install-ubuntu-12-04-or-13-04-in-later-versionshttps://trello.com/board/openstack-training/51d6e5fee37248fd5b003de9http://docs.openstack.org/trunk/openstack-training/content/getting-tools-and-accounts.htmlhttp://docs.openstack.org/trunk/openstack-training/content/getting-tools-and-accounts.html
  • 5/22/2018 Training Guides Trunk

    11/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    3

    More details on the OpenStack Training project.

    1. OpenStack Training Wiki(describes the project in detail)

    2. OpenStack Training blueprint(this is the key project page)

    3. Bi-Weekly SFBay Hackathon meetup page(we discuss project details with all team members)

    4. Bi-Weekly SFBay Hackathon Etherpad(meetup notes)

    5. Core Training Weekly Meeting Agenda(we review project action items here)

    6. Training Trello/KanBan storyboard(we develop high level project action items here)

    Submit a bug. Enter the summary as "Training, " with a few words. Be descriptive as possible in the description

    field. Open the tag pull-down and enter training-manuals.

    https://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebughttps://trello.com/board/openstack-training/51d6e5fee37248fd5b003de9https://wiki.openstack.org/wiki/Meetings/training-manualshttps://etherpad.openstack.org/sfbay-openstackhttp://www.meetup.com/openstack/https://blueprints.launchpad.net/openstack-manuals/+spec/training-manualshttps://wiki.openstack.org/wiki/Training-manuals
  • 5/22/2018 Training Guides Trunk

    12/74

  • 5/22/2018 Training Guides Trunk

    13/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    i

    Associate Training Guide

  • 5/22/2018 Training Guides Trunk

    14/74

  • 5/22/2018 Training Guides Trunk

    15/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    iii

    Table of Contents

    1. OpenStack Associate, What Does This Book Intend to Teach ......................... .............. ............... ............. 1

    2. OpenStack Associate, Getting Started ...................................................................................................... 33. OpenStack Associate, General Material To Learn ......................... ............... .............. ............... .............. .. 5

    Installation of OpenStack from Trunk .................................................................................................. 5

    4. OpenStack Associate, Assessment ............. ............... .............. ............... ............... .............. ............... ....... 7

  • 5/22/2018 Training Guides Trunk

    16/74

  • 5/22/2018 Training Guides Trunk

    17/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    v

    List of Tables

    4.1. Assessment Question 1 ............. ............... .............. ............... ............... .............. ............... .............. ...... 7

    4.2. Assessment Question 2 ............. ............... .............. ............... ............... .............. ............... .............. ...... 7

  • 5/22/2018 Training Guides Trunk

    18/74

  • 5/22/2018 Training Guides Trunk

    19/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    1

    1. OpenStack Associate, What Does This Book

    Intend to Teach1. training would take 1 month self paced, (2) 2 week periods with a user group meeting, or 16 hours

    instructor led. Some time set aside for distro specific training.

    2. basic knowledge of core OpenStack components (Compute, Block, Network, Dashboard)

    3. create an instance

    4. understand conf and log files

    5. understand basics of APIs and framework architecture

    6. understand shared components

    7. work off a single node openstack implementation

    8. get on IRC, mailing lists

    9. able to deploy applications to OpenStack clouds

    10.able to leverage basic functions including pools IPs and multiple disks

    11.able to deploy multi-tier applications to OpenStack clouds

    12.advanced knowledge of OpenStack components including new and incubated projects

    13.able to create complicated network topologies

    14.able to leverage advanced application topologies

  • 5/22/2018 Training Guides Trunk

    20/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    2

    15.able to operate and manage projects and elements via Horizon, and some CLI

    Submit a bug. Enter the summary as "Training, " with a few words. Be descriptive as possible in the description

    field. Open the tag pull-down and enter training-manuals.

    https://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebug
  • 5/22/2018 Training Guides Trunk

    21/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    3

    2. OpenStack Associate, Getting Started1. Knowledge and skills

    2. Materials and equipment

    Submit a bug. Enter the summary as "Training, " with a few words. Be descriptive as possible in the description

    field. Open the tag pull-down and enter training-manuals.

    https://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebug
  • 5/22/2018 Training Guides Trunk

    22/74

  • 5/22/2018 Training Guides Trunk

    23/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    5

    3. OpenStack Associate, General Material To

    Learn

    Installation of OpenStack from Trunk .......................................................................................................... 5

    User Stories are referenced here

    Installation of OpenStack from Trunk

    You will have a working version of OpenStack after this step is completed.

    Submit a bug. Enter the summary as "Training, " with a few words. Be descriptive as possible in the description

    field. Open the tag pull-down and enter training-manuals.

    https://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebug
  • 5/22/2018 Training Guides Trunk

    24/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    6

    Remote content not available

    image source

    https://docs.google.com/drawings/d/1J2LZSxmc06xKyxMgPjv5fC0blV7qK6956-AeTmFOZD4/edit?

    usp=sharing

    https://docs.google.com/drawings/d/1J2LZSxmc06xKyxMgPjv5fC0blV7qK6956-AeTmFOZD4/edit?usp=sharinghttps://docs.google.com/drawings/d/1J2LZSxmc06xKyxMgPjv5fC0blV7qK6956-AeTmFOZD4/edit?usp=sharing
  • 5/22/2018 Training Guides Trunk

    25/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    7

    4. OpenStack Associate, Assessment

    Table 4.1. Assessment Question 1

    Task

    Configure a ....

    Table 4.2. Assessment Question 2

    Task

    Configure a ....

    Submit a bug. Enter the summary as "Training, " with a few words. Be descriptive as possible in the description

    field. Open the tag pull-down and enter training-manuals.

    https://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebug
  • 5/22/2018 Training Guides Trunk

    26/74

  • 5/22/2018 Training Guides Trunk

    27/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    i

    Operator Training Guide

  • 5/22/2018 Training Guides Trunk

    28/74

  • 5/22/2018 Training Guides Trunk

    29/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    iii

    Table of Contents

    1. OpenStack Operator, What Does This Book Intend to Teach .............. .............. ............... .............. ........... 1

    2. OpenStack Operator, Getting Started ...................................................................................................... 33. OpenStack Operator, General Material To Learn ................... ............... .............. ............... .............. ........ 5

    Editing Code ............... .............. ............... .............. ............... .............. ............... .............. ............... .... 5

    4. OpenStack Operator, Assessment ............... ............... .............. ............... .............. ............... .............. .... 13

  • 5/22/2018 Training Guides Trunk

    30/74

    O St k T i i G id S t b 9 2013 H 2013 2

  • 5/22/2018 Training Guides Trunk

    31/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    v

    List of Tables

    4.1. Assessment Question 1 .............. .............. ............... .............. ............... .............. ............... .............. .... 13

    4.2. Assessment Question 2 .............. .............. ............... .............. ............... .............. ............... .............. .... 13

  • 5/22/2018 Training Guides Trunk

    32/74

    OpenStack Training Guides September 9 2013 Havana 2013 2

  • 5/22/2018 Training Guides Trunk

    33/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    1

    1. OpenStack Operator, What Does This Book

    Intend to Teach1. training would take 2.5 months self paced, (5) 2 week periods with a user group meeting, or 40 hours

    instructor led with 40 hours of self paced lab time. Some time set aside for distro specific training.

    2. able to fix bugs

    3. able to commit documentation patches

    4. deep understanding of nova and glance

    5. deep understanding of one other core project: swift, neutron, olso, or cinder

    6. trace workflow using zipkin

    7. work off a three node openstack implementation, create a vagrant/chef configuration

    8. based on http://workstuff.tumblr.com/post/50911984233/some-tips-on-getting-started-with-vagrant-and-

    chef

    9. understanding of core components interaction through APIs

    10.deep understanding of core conf and log files

    11.puppet/chef understanding

    12.git basics, create scenarios from http://git-scm.com/book/en/Git-Basics

    13.reference Nova API referencehttp://docs.openstack.org/api/openstack-compute/2/content/

    OpenStack Training Guides September 9 2013 Havana 2013 2

    http://docs.openstack.org/api/openstack-compute/2/content/http://docs.openstack.org/api/openstack-compute/2/content/http://git-scm.com/book/en/Git-Basicshttp://workstuff.tumblr.com/post/50911984233/some-tips-on-getting-started-with-vagrant-and-chefhttp://workstuff.tumblr.com/post/50911984233/some-tips-on-getting-started-with-vagrant-and-chef
  • 5/22/2018 Training Guides Trunk

    34/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    2

    14.Glance API referencehttp://docs.openstack.org/api/openstack-image-service/1.0/content/

    15.5-10 scenarios to diagnose, hands on

    Submit a bug. Enter the summary as "Training, " with a few words. Be descriptive as possible in the description

    field. Open the tag pull-down and enter training-manuals.

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    https://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebughttp://docs.openstack.org/api/openstack-image-service/1.0/content/
  • 5/22/2018 Training Guides Trunk

    35/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    3

    2. OpenStack Operator, Getting Started1. Knowledge and skills

    2. Materials and equipment

    Submit a bug. Enter the summary as "Training, " with a few words. Be descriptive as possible in the description

    field. Open the tag pull-down and enter training-manuals.

    https://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebug
  • 5/22/2018 Training Guides Trunk

    36/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

  • 5/22/2018 Training Guides Trunk

    37/74

    5

    3. OpenStack Operator, General Material To

    Learn

    Editing Code ............. .............. ............... .............. ............... .............. ............... .............. ............... .............. 5

    User Stories are referenced here

    Editing Code

    Get Tools and Accounts

    Note

    Create a GitHub account at github.com.

    1. Download and install Git from http://git-scm.com/downloads

    2. Create your local repository directory

    $mkdir /Users/yourusername/code/

    3. Install SourceTree

    a. http://www.sourcetreeapp.com/download/

    b. Ignore the Atlassian Bitbucket and Stack setup

    c. Add your GitHub username and password

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    http://www.sourcetreeapp.com/download/http://git-scm.com/downloadshttp://github.com/
  • 5/22/2018 Training Guides Trunk

    38/74

    6

    d. Set your local repository location

    4. Install an XML editor

    You can download a 30 day trial of Oxygen. The floating licenses donated by OxygenXML have all

    been handed out.http://www.oxygenxml.com/download_oxygenxml_editor.html

    You can use emacs or vi editors.

    Here are some great resources on DocBook and Emacs' NXML mode:

    http://paul.frields.org/2011/02/09/xml-editing-with-emacs/

    https://fedoraproject.org/wiki/How_to_use_Emacs_for_XML_editing

    http://infohost.nmt.edu/tcc/help/pubs/nxml/

    If you prefer vi, there are ways to make DocBook editing easier:

    https://fedoraproject.org/wiki/Editing_DocBook_with_Vi

    5. Install Maven

    a. $mkdir /usr/local/apache-maven

    b. The latest stable binary fromhttp://maven.apache.org/download.cgiinto/usr/local/apache-maven

    c. Set your maven user profile settings

    export M2_HOME=/usr/local/apache-maven/apache-maven-3.0.5

    export M2=$M2_HOME/bin

    export PATH=$M2:$PATH

    export MAVEN_OPTS='-Xms256m -XX:MaxPermSize=1024m -Xmx1024m'

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    http://maven.apache.org/download.cgihttps://fedoraproject.org/wiki/Editing_DocBook_with_Vihttps://fedoraproject.org/wiki/How_to_use_Emacs_for_XML_editinghttp://paul.frields.org/2011/02/09/xml-editing-with-emacs/http://paul.frields.org/2011/02/09/xml-editing-with-emacs/http://paul.frields.org/2011/02/09/xml-editing-with-emacs/http://maven.apache.org/download.cgihttps://fedoraproject.org/wiki/Editing_DocBook_with_Vihttp://infohost.nmt.edu/tcc/help/pubs/nxml/https://fedoraproject.org/wiki/How_to_use_Emacs_for_XML_editinghttp://paul.frields.org/2011/02/09/xml-editing-with-emacs/http://www.oxygenxml.com/download_oxygenxml_editor.html
  • 5/22/2018 Training Guides Trunk

    39/74

    7

    d. verify maven is setup with

    $mvn --install

    6. Create a Launchpad account: Visit https://login.launchpad.net/+new_accountAfter you create this

    account, the follow-up page is slightly confusing. It doesn't tell you that you are done. (It gives you theopportunity to change your -password, but you do not have to.)

    7. Add at least one SSH key to your account profile. To do this, follow the instructions on https://

    help.launchpad.net/YourAccount/CreatingAnSSHKeyPair".

    8. Join The OpenStack Foundation: Visit https://www.openstack.org/join. Among other privileges, this

    also allows you to vote in elections and run for elected positions within The OpenStack Project. When

    signing up for the Foundation Membership, make sure to give the same E-mail address you'll use for code

    contributions, since the Primary Email Address in you Foundation Profile will need to match the Preferred

    Email you set later in your Gerrit contact information.

    9. the CLA: Every developer and contributor needs to sign the Individual Contributor License agreement.

    Visit https:// review.openstack.org/and click the Sign In link at the top-right corner of the page. Log in

    with your Launchpad ID. You can preview the text of the Individual CLA.

    10. Add your SSH keys to your GitHub account profile (same one as used in Launchpad, they must match).

    When you copy and paste the SSH key, include the ssh-rsa algorithm and computer identifier. If this is

    your first time setting up git and Github, be sure to run these steps in a Terminal window:

    $git config --global user.name "Firstname Lastname"

    $ git config --global user.email "[email protected]"

    11. Install git-review. If pip is not already installed, use "sudo easy_install pip" to install it on a Mac or Ubuntu

    $sudo pip installgit-review

    12. Change to the directory

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    https://www.openstack.org/joinhttps://www.openstack.org/joinhttps://help.launchpad.net/YourAccount/CreatingAnSSHKeyPairhttps://review.openstack.org/https://www.openstack.org/joinhttps://help.launchpad.net/YourAccount/CreatingAnSSHKeyPairhttps://help.launchpad.net/YourAccount/CreatingAnSSHKeyPairhttps://login.launchpad.net/+new_account
  • 5/22/2018 Training Guides Trunk

    40/74

    8

    $cd /Users/yourusername/code

    13. Clone the openstack-manuals repository with

    $git clone http://github.com/openstack/openstack-manuals.git

    14. Change directory to the pulled repository

    $cd openstack-manuals

    15. Enter your Launchpad account information after testing for ssh key setup with

    $git review -s

    Fix a Documentation Bug

    1. Note: For this example, we are going to assume bug 1188522 and change 33713

    2. Bring uphttps://bugs.launchpad.net/openstack-manuals

    3. Select a bug that is unassigned and that you can fix. Syntax errors are the best ones to start off with.

    4. Using oXygen, open the /Users//code/openstack-manuals/doc/src/docbkx/openstack-

    compute-admin/bk_compute_adminguide.xml master page for this example. It links together the rest

    of the material. Find the page with the bug. Open the page that is referenced in the bug description by

    selecting the content in the author view. Verify you have the correct page by visually inspecting the html

    page and the xml page.

    5. In the shell,

    $cd /Users//code/openstack-manuals/doc/src/docbkx/openstack-compute-admin/

    6. Verify that you are on master with

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    https://bugs.launchpad.net/openstack-manuals
  • 5/22/2018 Training Guides Trunk

    41/74

    9

    $git checkout master

    7. Create your working branch off master with

    $git checkout -b bug/1188522

    8. Verify that you have the branch open through SourceTree

    9. Correct the bug through oXygen. Toggle back and forth through the different views at the bottom of the

    editor.

    10. Once the bug is fixed, verify that the documentation can be built without errors by running

    $mvn clean generate-sources

    11. Verify that the HTML page reflects your changes properly. You can open the file from the command line

    by using the "open" command

    $open target/docbkx/webhelp/local/openstack-training/index.html

    12. Add the changes

    $git add .

    13. Commit the changes

    $git commit -a -m "Removed reference to volume scheduler in the computer scheduler

    config and admin pages, bug 1188522"

    14. Submit the bug fix to Gerrit

    $git review

    15. Track the Gerrit review process athttps://review.openstack.org/#/c/33713. Follow and respond inline to

    the Code Review requests and comments.

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    https://review.openstack.org/#/c/33713https://review.openstack.org/#/c/33713
  • 5/22/2018 Training Guides Trunk

    42/74

    10

    16. Your change will be tested, track the Jenkins testing process at https://jenkins.openstack.org

    17. If your change is rejected, complete the following steps:

    a. Respond to the inline comments if any

    b. Update the status to work in progress

    c. Checkout the patch from the Gerrit change review

    $git review -d 33713

    d. Follow the recommended tweaks to the files

    e. Rerun

    $mvn clean generate-sources

    f. add your additional changes to the change log

    $git commit -a --amend

    g. Final commit

    $git review

    h. Update the Jenkins status to change completed

    18. Follow the jenkins build progress at https://jenkins.openstack.org/view/Openstack-manuals/. Note if the

    build process fails, the online documentation will not reflect your bug fix.

    Submit a Documentation Bug Fix

    1. Bring uphttps://bugs.launchpad.net/openstack-manuals/+filebug

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    https://bugs.launchpad.net/openstack-manuals/+filebug
  • 5/22/2018 Training Guides Trunk

    43/74

    11

    2. Give your bug a descriptive name

    3. verify if asked that it is not a duplicate

    4. Add some more detail into the description field

    5. Once submitted, select the assigned to pane and select assign to me

    6. Follow the instructions for fixing a bug in the Fix a Documentation Bug section.

    Create a Branch

    Note

    This section is using the submission of this training material as the example

    1. Create a bp/training-manuals branch

    $ git checkout -b bp/training-manuals

    2. From the openstack-manuals repository, use the template user-story-includes-template.xmlas the

    starting point for your user story. bk001-ch003-associate-general.xmlhas at least one other included user

    story that you can use for additional help.

    3. Include the user story xml file into the bk001-ch003-associate-general.xmlfile. Follow the syntax of the

    existing xi:include statements.

    4. When your editing is completed. Double check Oxygen doesn't have any errors you are not expecting.

    5. Run maven locally to verify the build will run without errors

    $ mvn clean generate-sources

    6. Add your changes into git

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

  • 5/22/2018 Training Guides Trunk

    44/74

    12

    $ git add .

    7. Commit the changes with good syntax. After entering the commit command, VI syntax applies. Use "i" to

    insert and Esc to break out. ":wq" to write and quit.

    git commit -a

    my very short summary

    my more details go here. few sentences would be nice.

    blueprint training-manuals

    8. Submit your patch for review

    $ git review

    9. Once last step. Go to the review page listed after your submitted your review and add the training coreteam as reviewers; Sean Roberts and Colin McNamara.

    10. More details on branching can be found here under Gerrit Workflowand the Git docs

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    http://git-scm.com/dochttps://wiki.openstack.org/wiki/Gerrit_Workflow
  • 5/22/2018 Training Guides Trunk

    45/74

    13

    4. OpenStack Operator, Assessment

    Table 4.1. Assessment Question 1

    Task

    Configure a ....

    Table 4.2. Assessment Question 2

    Task

    Configure a ....

    Submit a bug. Enter the summary as "Training, " with a few words. Be descriptive as possible in the description

    field. Open the tag pull-down and enter training-manuals.

    https://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebug
  • 5/22/2018 Training Guides Trunk

    46/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

  • 5/22/2018 Training Guides Trunk

    47/74

    i

    Developer Training Guide

  • 5/22/2018 Training Guides Trunk

    48/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

  • 5/22/2018 Training Guides Trunk

    49/74

    iii

    Table of Contents

    1. OpenStack Developer, What Does This Book Intend to Teach ..................... ............... .............. ............... . 1

    2. OpenStack Developer, Getting Started ......................... .............. ............... .............. ............... .............. ... 3

    3. OpenStack Developer, General Material To Learn .................................................................................... 54. OpenStack Developer, Assessment ........................................................................................................... 7

  • 5/22/2018 Training Guides Trunk

    50/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

  • 5/22/2018 Training Guides Trunk

    51/74

    v

    List of Tables

    4.1. Assessment Question 1 ............. ............... .............. ............... ............... .............. ............... .............. ...... 7

    4.2. Assessment Question 2 ............. ............... .............. ............... ............... .............. ............... .............. ...... 7

  • 5/22/2018 Training Guides Trunk

    52/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

  • 5/22/2018 Training Guides Trunk

    53/74

    1

    1. OpenStack Developer, What Does This Book

    Intend to Teach1. build on concepts from Operator training

    2. combine how to contribute and working with CI guides into a developers guide

    3. training would take 2.5 months self paced, (5) 2 week periods with a user group meeting, or 40 hours

    instructor led with 40 hours of self paced lab time. Some time set aside for distro specific training.

    4. include ideas fromhttp://redmine.upstream-university.org/projects/slides/repository/revisions/master/

    show/traininghttp://www.slideshare.net/eyepv6/open-stack-summitsurvivingyourfirstcheckinhttp://

    www.slideshare.net/delapsley1/opensack-quantum-devstack-tutorialhttp://www.slideshare.net/

    khinnu4u/developing-withdevstack

    5. deep understanding of APIs

    6. commit python patches

    7. karma greater thanX

    Submit a bug. Enter the summary as "Training, " with a few words. Be descriptive as possible in the description

    field. Open the tag pull-down and entertraining-manuals.

    https://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebughttp://www.slideshare.net/khinnu4u/developing-withdevstackhttp://redmine.upstream-university.org/projects/slides/repository/revisions/master/show/traininghttp://www.slideshare.net/eyepv6/open-stack-summitsurvivingyourfirstcheckinhttp://redmine.upstream-university.org/projects/slides/repository/revisions/master/show/traininghttps://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebughttp://www.slideshare.net/khinnu4u/developing-withdevstackhttp://www.slideshare.net/khinnu4u/developing-withdevstackhttp://www.slideshare.net/delapsley1/opensack-quantum-devstack-tutorialhttp://www.slideshare.net/delapsley1/opensack-quantum-devstack-tutorialhttp://www.slideshare.net/eyepv6/open-stack-summitsurvivingyourfirstcheckinhttp://redmine.upstream-university.org/projects/slides/repository/revisions/master/show/traininghttp://redmine.upstream-university.org/projects/slides/repository/revisions/master/show/training
  • 5/22/2018 Training Guides Trunk

    54/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

  • 5/22/2018 Training Guides Trunk

    55/74

    3

    2. OpenStack Developer, Getting Started1. Knowledge and skills

    2. Materials and equipment

    Submit a bug. Enter the summary as "Training, " with a few words. Be descriptive as possible in the description

    field. Open the tag pull-down and enter training-manuals.

    https://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebug
  • 5/22/2018 Training Guides Trunk

    56/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

  • 5/22/2018 Training Guides Trunk

    57/74

    5

    3. OpenStack Developer, General Material To

    LearnUser Stories are referenced here

  • 5/22/2018 Training Guides Trunk

    58/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    4 O S k D l A

  • 5/22/2018 Training Guides Trunk

    59/74

    7

    4. OpenStack Developer, Assessment

    Table 4.1. Assessment Question 1

    Task

    Configure a ....

    Table 4.2. Assessment Question 2

    Task

    Configure a ....

    Submit a bug. Enter the summary as "Training, " with a few words. Be descriptive as possible in the description

    field. Open the tag pull-down and enter training-manuals.

    https://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebug
  • 5/22/2018 Training Guides Trunk

    60/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    Architect Training Guide

  • 5/22/2018 Training Guides Trunk

    61/74

    i

    Architect Training Guide

  • 5/22/2018 Training Guides Trunk

    62/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    Table of Contents

  • 5/22/2018 Training Guides Trunk

    63/74

    iii

    Table of Contents

    1. OpenStack Architect, What Does This Book Intend to Teach .............. .............. ............... .............. ........... 1

    2. OpenStack Architect, Getting Started ............. ............... ............... .............. ............... .............. ............... . 3

    3. OpenStack Architect, General Material To Learn ...................................................................................... 54. OpenStack Architect, Assessment ............... .............. ............... .............. ............... ............... .............. ...... 7

  • 5/22/2018 Training Guides Trunk

    64/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    List of Tables

  • 5/22/2018 Training Guides Trunk

    65/74

    v

    List of Tables

    4.1. Assessment Question 1 ............. ............... .............. ............... ............... .............. ............... .............. ...... 7

    4.2. Assessment Question 2 ............. ............... .............. ............... ............... .............. ............... .............. ...... 7

  • 5/22/2018 Training Guides Trunk

    66/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    1 OpenStack Architect What Does This Book

  • 5/22/2018 Training Guides Trunk

    67/74

    1

    1. OpenStack Architect, What Does This Book

    Intend to Teach1. Combination of Operator and Developer training

    2. training would take 6 months or (12) 2 week periods with a user group meeting. 240 hours of self paced

    lab time.

    3. Meant to be very hard to complete. Public contribution must be a considerable part of the work

    completed.

    4. code contribution

    5. CI infrastructure time in

    6. implementation builds

    7. contributions to answer

    8. speaking at user groups

    9. summit session submissions should all count towards karma/contribution

    10.use TripleO for build/ops environment. include https://github.com/tripleo/incubator/blob/master/

    devtest.md

    11.karma greater than Y

    12.Passing DevOps training would make the person desirable as an employee.

    13.Passing DevOps training would make the person desirable as a core contributor to any project

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    Submit a bug. Enter the summary as "Training, " with a few words. Be descriptive as possible in the description

    field Open the tag pull down and enter training manuals

    https://github.com/tripleo/incubator/blob/master/devtest.mdhttps://github.com/tripleo/incubator/blob/master/devtest.mdhttps://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebug
  • 5/22/2018 Training Guides Trunk

    68/74

    2

    field. Open the tag pull-down and enter training-manuals.

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    2. OpenStack Architect, Getting Started

    https://blueprints.launchpad.net/openstack-manuals/+filebug
  • 5/22/2018 Training Guides Trunk

    69/74

    3

    2. OpenStack Architect, Getting Started1. Knowledge and skills

    2. Materials and equipment

    Submit a bug. Enter the summary as "Training, " with a few words. Be descriptive as possible in the description

    field. Open the tag pull-down and enter training-manuals.

    https://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebug
  • 5/22/2018 Training Guides Trunk

    70/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    3. OpenStack Architect, General Material To

  • 5/22/2018 Training Guides Trunk

    71/74

    5

    3 Ope Stac c tect, Ge e a ate a o

    LearnUser Stories are referenced here

  • 5/22/2018 Training Guides Trunk

    72/74

    OpenStack Training Guides September 9, 2013 Havana, 2013.2

    4. OpenStack Architect, Assessment

  • 5/22/2018 Training Guides Trunk

    73/74

    7

    p

    Table 4.1. Assessment Question 1

    TaskConfigure a ....

    Table 4.2. Assessment Question 2

    Task

    Configure a ....

    Submit a bug. Enter the summary as "Training, " with a few words. Be descriptive as possible in the description

    field. Open the tag pull-down and enter training-manuals.

    https://blueprints.launchpad.net/openstack-manuals/+filebughttps://blueprints.launchpad.net/openstack-manuals/+filebug
  • 5/22/2018 Training Guides Trunk

    74/74