You are previewing OpenStack Networking Essentials.
O'Reilly logo
OpenStack Networking Essentials

Book Description

Build and manage networks in OpenStack using Neutron

About This Book

  • Deploy an all-in-one cloud based on OpenStack Liberty (2015.2) using RDO

  • Learn the fundamentals of the Neutron API including networks, subnets, and ports, and how to manage these resources in the cloud

  • Build simple virtual network infrastructures in the cloud

  • Who This Book Is For

    The book is for those who are new to OpenStack and Neutron who want to learn the cloud networking fundamentals and get started with OpenStack networking. Prior networking experience along with a virtual or physical server is recommended to follow along with the concepts demonstrated in the book.

    What You Will Learn

  • Install the latest Liberty (2015.2) release of OpenStack using RDO in VirtualBox

  • Discover the basics of the Neutron API, including networks, subnets, and ports

  • Interact with Neutron using the CLI and Horizon dashboard

  • Create networks and subnets that provide connectivity to instances

  • Implement software routers that connect networks and provide network address translation

  • Secure instances using Neutron's security group functionality

  • In Detail

    The OpenStack Networking API offers users the ability to create and manage both basic and complex network architectures that blend the virtual and physical network infrastructure.

    This book kicks off by describing various components of Openstack Neutron and installing Ubuntu OpenStack based on Canonical's process. Further on, you will use various methods to interface with Neutron to create and manage network resources. You will also get to grips with the relationship between ports, networks, and subnets through diagrams and explanations, and see how the logical components are implemented via plugins and agents.

    Moving forward, you will learn how virtual switches are implemented and how to build Neutron routers. You will also configure networks, subnets, and routers to provide connectivity to instances using simple examples. At the end, you will configure and manage security groups, and will observe how these rules translate to iptables rules on the host machines.

    By the end of the book, you will be able to build basic network architectures using Neutron networks and routers in no time.

    Style and approach

    An easy-to-follow guide that covers the networking features of OpenStack and the core Neutron API components providing a solid foundation to deploy networks and instances.

    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 If you purchased this book elsewhere, you can visit and register to have the code file.

    Table of Contents

    1. OpenStack Networking Essentials
      1. Table of Contents
      2. OpenStack Networking Essentials
      3. Credits
      4. About the Author
        1. eBooks, discount offers, and more
          1. Why subscribe?
      6. 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. Downloading the color images of this book
          3. Errata
          4. Piracy
          5. Questions
      7. 1. OpenStack Networking Components – an Overview
        1. Features of OpenStack Networking
          1. Switching
          2. Routing
          3. Advanced networking features
            1. Load balancing
            2. Firewalling
            3. Virtual private networks
        2. The OpenStack architecture
        3. A reference architecture
          1. Implementing the network
            1. Plugins and drivers
            2. Neutron agents
            3. The DHCP agent
            4. The metadata agent
            5. The network plugin agent
        4. Summary
      8. 2. Installing OpenStack Using RDO
        1. System requirements
        2. The initial network configuration
          1. Example networks
          2. Interface configuration
          3. Connect to the host
        3. Initial steps
          1. Permissions
          2. Install network utilities
          3. Set the hostname
          4. Install Network Time Protocol (NTP)
          5. Disable NetworkManager
          6. Upgrade the system
        4. Install RDO using Packstack
        5. Download RDO
          1. Configure the answer file
          2. Install RDO
          3. Verify connectivity to OpenStack
            1. Verify connectivity to the dashboard
        6. Additional installation tasks
          1. Create a security group rule
          2. Create a demo project and user
          3. Configure the keystone_demo file
          4. Upload an image to Glance
        7. Summary
      9. 3. Neutron API Basics
        1. Networks
          1. Network attributes
            1. Provider attributes
            2. Additional attributes
        2. Subnets
        3. Ports
        4. The Neutron workflow
          1. Booting an instance
            1. How the logical model is implemented
          2. Deleting an instance
        5. Summary
      10. 4. Interfacing with Neutron
        1. Using the Horizon dashboard
          1. Managing resources within a project
            1. Creating networks within a project
            2. Viewing the network topology
          2. Managing resources as an administrator
        2. Using the Neutron client
          1. Creating and listing networks
            1. Creating a network
          2. Creating a subnet
        3. Summary
      11. 5. Switching
        1. The basics of switching in OpenStack
          1. Using Linux bridges
          2. Using Open vSwitch
          3. Network types
          4. Local networks
          5. Flat networks
          6. VLAN networks
          7. VXLAN networks
          8. GRE networks
        2. A look at our environment
          1. Getting a closer look
        3. Summary
      12. 6. Routing
        1. The basics of routing in Neutron
          1. Network namespaces
          2. Connectivity through a router
            1. Outbound connectivity
            2. Inbound connectivity
        2. Types of routers
          1. Standalone routers
          2. Highly available routers
          3. Distributed virtual routers
        3. Managing routers in the dashboard
          1. Creating routers within a project
          2. Viewing the network topology
          3. Managing routers as an administrator
        4. Managing routers with the Neutron client
          1. Creating and listing routers
            1. Creating a router
          2. Adding an interface
          3. Listing router interfaces
        5. Examining the routers
        6. Summary
      13. 7. Building Networks and Routers
        1. Using provider networks
          1. Creating a provider network
          2. Booting an instance
          3. Accessing the instance
        2. Using a Neutron router
          1. External provider networks
            1. Attaching the router to an external provider network
          2. Booting an instance
          3. Testing connectivity
            1. Observing SNAT behavior
          4. Assigning a floating IP
            1. Testing connectivity via floating IP
          5. Multiple routers
          6. Advanced networking
        3. Summary
      14. 8. Security Group Fundamentals
        1. Security groups in OpenStack
          1. Using security groups
          2. The default security group
        2. Managing security groups
          1. Using CIDR to control traffic
          2. Applying security groups to instances and ports
            1. Working with security groups in the dashboard
              1. Creating a security group
              2. Managing security group rules
              3. Applying security groups to instances
            2. Caveats
        3. Port security
          1. Allowed address pairs
          2. Disabling port security
        4. Summary
      15. A. Configuring VirtualBox
        1. Configuring VirtualBox networking
          1. Configuring host-only networks
        2. Creating a virtual machine
        3. Configuring a virtual machine
        4. Installing the CentOS operating system
          1. Attaching the ISO to the virtual machine
          2. Starting the virtual machine
        5. Configuring virtual machine networking
          1. Accessing the virtual machine
          2. Configuring network interfaces
        6. Accessing a virtual machine over SSH
      16. Index