O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

OpenStack Bootcamp

Book Description

A focused and systematic introduction to OpenStack, the largest open source cloud platform, using practical examples and hands-on problems.

About This Book

  • Explore all the new features of OpenStack's Mikata, Ocata, and Newton releases and get up to speed with OpenStack in no time
  • Learn something new each day to successfully build a private cloud platform
  • A fast-paced guide filled with best practices that will help you manage your virtual private cloud efficiently

Who This Book Is For

This book is for those who are already familiar with OpenStack’s supporting technologies. It’s ideal for cloud system engineers, system administrators, and technical architects who are moving from a virtualized environment to a cloud environment. Prior knowledge of cloud computing platforms and virtualization would be beneficial. If you are a system or cloud engineer, this is your go-to book!

What You Will Learn

  • Understand the functions and features of each core component of OpenStack and a real-world comparison
  • Develop an understanding of the components of IaaS and PaaS clouds built with OpenStack
  • Get a high-level understanding of architectural design in OpenStack
  • Discover how you can use OpenStack Horizon with all of the OpenStack core components
  • Understand network traffic flow with Neutron
  • Build an OpenStack private cloud from scratch
  • Get hands-on training with the OpenStack command line, administration, and deployment

In Detail

OpenStack is developed by a thriving community of individual developers around the globe and is backed by most of the leading players in the cloud space today. OpenStack is a free and open source software platform for cloud computing, mostly deployed as an infrastructure-as-a-service (IaaS).

This book begins with the design principles of OpenStack and the available OpenStack distributions. You’ll start by getting a fundamental understanding of the core concepts and then move on to a comparison of OpenStack components with real-life examples. Then, we’ll show you the typical architecture of OpenStack clouds, how to configure each OpenStack component, and debugging techniques.

Later, we focus on the latest releases of OpenStack: Mikata, Newton, and Ocata. You’ll be introduced to identity, image, networking, and the compute service. You’ll also get a complete understanding of how to install, configure, and administrate your entire virtual private cloud. You will also be provided with hands-on exercises to unleash the power of each component in OpenStack. Finally, you’ll see an overview of all the optional projects available under the Openstack umbrella.

Style and approach

This fast-paced book delivers comprehensive hands-on training, so you can jump straight into the practical exercises along with in-depth coverage of OpenStack technologies. It also provides hands-on exercises, analysis of real-world cloud use cases and operation scenarios, covering design, customization and optimization.

Downloading the example code for this book. You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the code file.

Table of Contents

  1. Title Page
  2. Copyright
    1. OpenStack Bootcamp
  3. Credits
  4. About the Author
  5. Acknowledgments
  6. About the Reviewer
  7. www.PacktPub.com
    1. Why subscribe?
  8. Customer Feedback
  9. Preface
    1. What this book covers
    2. What you need for this book
    3. Who this book is for
    4. Conventions
    5. Reader feedback
    6. Customer support
      1. Downloading the example code
      2. Errata
      3. Piracy
      4. Questions
  10. Day 1 - Build Your Camp
    1. Design principles for OpenStack
    2. OpenStack distributions
    3. Vanilla OpenStack
    4. DevStack installation
      1. Prepare your virtual machine
      2. Let's DevStack
    5. OpenStack community and getting help
    6. Summary
  11. Day 2 - Know Your Battalion
    1. Core components of OpenStack
      1. KeyStone (identity service)
      2. Nova (computing service)
      3. Glance (image service)
      4. Neutron (networking service)
      5. OpenStack service interaction layout
    2. Optional components
      1. Cinder (block storage service)
      2. Swift (object storage service)
    3. Summary
  12. Day 3 - Field Sketch
    1. OpenStack - logical architecture
      1. Compute service - Nova
        1. nova-api service
        2. nova-api-metadata service
        3. nova-compute service
        4. nova-scheduler service
        5. nova-conductor module
        6. nova-consoleauth daemon
        7. nova-cert module
        8. The queue (AMQP message broker)
        9. Database
      2. Image service - Glance
        1. glance-api service
        2. glance-registry service
      3. Identity service - KeyStone
        1. Server (keystone-all)
        2. Drivers (optional)
      4. Networking service - neutron
        1. Neutron server
        2. plugin agent (neutron-*-agent)
        3. DHCP agent (neutron-dhcp-agent)
        4. L3 agent (neutron-l3-agent)
      5. Block storage service - Cinder
        1. cinder-api service
        2. cinder-scheduler daemon
        3. cinder-volume Service
        4. cinder-backup daemon
      6. Object storage - Swift
        1. Proxy servers (swift-proxy-server)
        2. Account servers (swift-account-server)
        3. Container servers (swift-container-server)
        4. Object servers (swift-object-server)
        5. Telemetry service - ceilometer
        6. ceilometer-agent-compute
        7. ceilometer-agent-central
        8. ceilometer-agent-notification
        9. ceilometer-collector
      7. Orchestration service - Heat
        1. heat-api component
        2. heat-api-cfn component
        3. heat-engine
      8. OpenStack - conceptual architecture
    2. Designing your deployment
    3. Typical production design
    4. Summary
  13. Day 4 - How Stuff Works
    1. Idle state of OpenStack services
      1. Step 1 - user login - Horizon
      2. Step 2 - validating AUTH data
      3. Step 3 - sending an API request to the Nova API
      4. Step 4 - validating the API token
      5. Step 5 - processing the API request
      6. Step 6 - publishing the provisioning request
      7. Step 7 - picking up the provisioning request
      8. Step 8 - schedule provisioning
      9. Step 9 - starting the VM provisioning
      10. Step 10 - starting VM rendering via the hypervisor
      11. Step 11 - requesting the base image for VM rendering
      12. Step 12 - configuring the network for an instance
      13. Step 13 - VM in running state
    2. Summary
  14. Day 5 - Networking Strategy
    1. Networking basics
    2. OpenStack networking
      1. Legacy nova-network to OpenStack neutron
      2. OpenStack Neutron
    3. Network types
      1. Provider networks
      2. Self-service networks
      3. Types of network isolation and overlay technologies
      4. Why VxLAN?
    4. Neutron offerings
      1. Network topology
      2. Networks and subnets
      3. Routers
      4. Security groups
      5. Extended services
        1. VPNaaS
        2. LBaaS
        3. FWaaS
      6. Floating IP
    5. Network traffic flow
      1. North-south network traffic
      2. East-west network traffic
        1. How does a VM get an IP?
    6. Summary
  15. Day 6 - Field Training Exercise
    1. Understanding the OpenStack lab environment
      1. Exploring lab through the command line
      2. Exploring lab through the Horizon dashboard
        1. OpenStack Horizon - Project tab
          1. The Compute tab
          2. The Network tab
        2. OpenStack Horizon - the Admin tab
          1. The System tab
    2. Compute Service - Horizon
      1. Launching a new instance using Horizon
        1. Mandatory fields
      2. Connecting to the instance using the VNC console
      3. Tracking usage for instances
      4. Managing an instance
    3. Compute service - CLI
      1. OpenStack CLI clients (OSC)
      2. Launching an instance using OpenStack CLI
      3. Connecting to the instance using SSH
      4. Terminating the created instance
    4. Image service (Glance)
      1. Adding an image using Horizon
      2. Adding an image using Glance CLI
      3. Launching an instance from the new image
    5. Block storage (Cinder)
      1. Managing Cinder volume using Horizon
      2. Attaching Cinder volume to the virtual machine
      3. Detaching Cinder volume from the virtual machine
    6. Identity (KeyStone)
      1. Adding projects and users
    7. Networking service (neutron)
      1. Creating a network using Horizon
      2. Verifying the network connectivity
      3. Configuring routing for external networks
    8. Add-on exercises
      1. Making existing Glance images public
      2. Sharing networks between projects
      3. Creating new flavors
      4. Transferring Cinder volume between projects
    9. Summary
  16. Day 7 - Collective Training
    1. Administrative tasks
    2. Project specific tasks
    3. Extended activities
      1. Activity 1
      2. Activity 2
      3. Activity 3
    4. Summary
  17. Day 8 - Build Your OpenStack
    1. System requirements
      1. Preparing your virtual machine
      2. Before we begin
        1. User permissions
        2. Configuring network interfaces
          1. Step 1 - configuring the first network interface with static IP address
          2. Step 2 - configuring the second interface as the provider interface
          3. Step 3 - setting the hostnames
          4. Step 4 - verifing network connectivity
        3. Configuring the Network Time Protocol
        4. Configuring the OpenStack repository
        5. Upgrading the system
      3. OpenStack installation
        1. Configuring the database server
          1. Step 1 - creating file
          2. Step 2 - finalizing the database installation
          3. Step 3 - creating database for OpenStack services
        2. Configuring the message queue
        3. Configuring the memcached server
        4. Configuring the identity service (KeyStone)
          1. Step 1 - installing and configure components
          2. Step 2 - configuring the Apache HTTP server
          3. Step 3 - setting environment variables
          4. Step 4 - defining projects in KeyStone
          5. Step 5 - defining users and map role in KeyStone
          6. Step 6 - verifying KeyStone operation
          7. Step 7 - creating OpenRC environment file
        5. Configuring the image service (Glance)
          1. Step 1 - defining the Glance service and API endpoints in KeyStone
          2. Step 2 - installing and configuring the Glance components
          3. Step 3 - verifying the Glance operation
        6. Configuring the Compute service (Nova)
          1. Step 1 - defining the Nova service and API endpoints in KeyStone
          2. Step 2 - installing and configuring the Nova components
        7. Installing and configuring a compute node (nova-compute)
        8. Configuring the networking service (neutron)
          1. Step 1 - defining the neutron service and API endpoints in KeyStone
          2. Step 2 - configuring the self-service networks
          3. Step 3 - configuring the Modular Layer 2 (ML2) plugin
          4. Step 4 - Configuring the Linux bridge agent
          5. Step 5 - configuring the layer-3, DHCP agent, and metadata agent
          6. Step 6 - configuring the Nova service to use the neutron service
        9. Installing and configuring a compute node (neutron)
        10. Installing the OpenStack dashboard
      4. Adding compute node to the OpenStack cluster
    2. Summary
  18. Day 9 - Repairing OpenStack
    1. Structured troubleshooting approaches
      1. Level 1 - Service status check
      2. Level 2 - Authentication response
      3. Level 3 - CLI debug mode
      4. Level 4 - Service log check
    2. The KeyStone service
      1. Checking the KeyStone service
      2. Checking the KeyStone client
      3. The CLI debug mode
    3. The Glance service
      1. The Glance log files
    4. The Nova service
      1. The Nova log files
    5. The Neutron service
      1. Neutron log files
    6. Database issues
    7. Getting help from OpenStack community
    8. Summary
  19. Day 10 - Side Arms of OpenStack
    1. Bells and whistles of OpenStack
    2. OpenStack Umbrella
      1. Ironic
      2. Manila
      3. Designate
      4. Trove
      5. Sahara
      6. Barbican
      7. Zaqar
      8. Aodh
      9. Congress
      10. Mistral
      11. Murano
      12. Magnum
      13. Zun
      14. Panko
      15. Vitrage
      16. Watcher
    3. Summary