Book Image

Mastering OpenStack - Second Edition

By : Omar Khedher, Chandan Dutta
Book Image

Mastering OpenStack - Second Edition

By: Omar Khedher, Chandan Dutta

Overview of this book

In this second edition, you will get to grips with the latest features of OpenStack. Starting with an overview of the OpenStack architecture, you'll see how to adopt the DevOps style of automation while deploying and operating in an OpenStack environment. We'll show you how to create your own OpenStack private cloud. Then you'll learn about various hypervisors and container technology supported by OpenStack. You'll get an understanding about the segregation of compute nodes based on reliability and availability needs. We'll cover various storage types in OpenStack and advanced networking aspects such as SDN and NFV. Next, you'll understand the OpenStack infrastructure from a cloud user point of view. Moving on, you'll develop troubleshooting skills, and get a comprehensive understanding of services such as high availability and failover in OpenStack. Finally, you will gain experience of running a centralized logging server and monitoring OpenStack services. The book will show you how to carry out performance tuning based on OpenStack service logs. You will be able to master OpenStack benchmarking and performance tuning. By the end of the book, you'll be ready to take steps to deploy and manage an OpenStack cloud with the latest open source technologies.
Table of Contents (13 chapters)

What you need for this book

This book assumes a moderate level of the Linux operating system and cloud computing concepts. While this edition has been enhanced with richer content based on the latest updates in OpenStack, being familiar with the OpenStack ecosystem is very important. A basic knowledge and understanding of the network jargon, system management tools, and architecture design patters is required. Unlike the first edition, this book uses Ansible as the main system management tool for the OpenStack infrastructure management. It uses the OpenStack-Ansible official project, which is available in github https://github.com/openstack/openstack-ansible. Thus, a good understanding of the YAML syntax is a big plus.

Feel free to use any tool for the test environment such as Oracle’s VirtualBox, Vagrant, or VMware workstation. The lab setup can run OpenStack-Ansible using All-In-One build(OSA) found in the OpenStack-Ansible github repository. The book recommends installing the OpenStack environment on physical hardware to accomplish a production ready environment. Thus, a physical network infrastructure should be in place. On the other hand, running OpenStack in a virtual environment for testing purposes is possible if virtual network configuration is properly configured.

In this book, the following software list is required:

  • Operating System: CentOS 7 or Ubuntu 14.04
  • OpenStack – Mitaka or later release
  • VirtualBox 4.5 or newer
  • Vagrant 1.7 or newer
  • Ansible server 2.2 or newer

As you run the OpenStack installation in a development environment, the following minimum hardware resources are required:

  • A host machine with CPU hardware virtualization support
  • 8 CPU cores
  • 12 GB RAM
  • 60 GB free disk space
  • Two network interface cards

Internet connectivity is required to download the necessary packages for OpenStack and other tools. Additionally, refer to the http://docs.openstack.org guide for detailed instructions on installing the latest versions of OpenStack or to update the package that no longer exists in the older versions.