Book Image

Extending OpenStack

By : Omar Khedher
Book Image

Extending OpenStack

By: Omar Khedher

Overview of this book

OpenStack is a very popular cloud computing platform that has enabled several organizations during the last few years to successfully implement their Infrastructure as a Service (IaaS) platforms. This book will guide you through new features of the latest OpenStack releases and how to bring them into production straightaway in an agile way. It starts by showing you how to expand your current OpenStack setup and how to approach your next OpenStack Data Center generation deployment. You will discover how to extend your storage and network capacity and also take advantage of containerization technology such as Docker and Kubernetes in OpenStack. Additionally, you'll explore the power of big data as a Service terminology implemented in OpenStack by integrating the Sahara project. This book will teach you how to build Hadoop clusters and launch jobs in a very simple way. Then you'll automate and deploy applications on top of OpenStack. You will discover how to write your own plugin in the Murano project. The final part of the book will go through best practices for security such as identity, access management, and authentication exposed by Keystone in OpenStack. By the end of this book, you will be ready to extend and customize your private cloud based on your requirements.
Table of Contents (12 chapters)

Deploying a self-contained application

Before we dive into deploying a simple application in OpenStack using the Murano dashboard, let's briefly discuss the Murano glossary and key concepts to understand the deployment workflow for each step. From the dashboard, we can reveal a few concepts that include the following Murano naming conventions:

  • Environment: Defines a group of applications owned per single tenant. Applications living in different environments are independent.
  • Package: Forms the basic ingredients units for the deployment of an application that contains different installation, classes, scripts, and dynamic UI definition files. An application package is zipped and uploaded to the application catalog by the user.
During the upload of the application package, Murano makes sure that a pre-defined application entry-point file with the fixed name manifest.yaml exists...