Chapter 2. The OpenStack Client

In this chapter, we will cover the following topics:

  • Introduction – using OpenStack
  • Installing Python on Windows
  • Installing the OpenStack clients
  • Configuring your Linux or macOS environment
  • Configuring your Windows environment
  • Common OpenStack networking tasks
  • Common OpenStack server (instances) tasks
  • Common OpenStack image tasks
  • Common OpenStack identity tasks
  • Common OpenStack storage tasks
  • Common OpenStack orchestration tasks

Introduction – using OpenStack

OpenStack can be interacted with in a number of ways – from using the Horizon (the OpenStack control panel) web interface to, the power of the command line to using third -party software, all of which are transparently integrated with OpenStack. In this chapter, we will introduce the OpenStack Command-Line Interface (CLI) and see how to configure it for use with your installation of OpenStack. The OpenStack command-line tools, like the vast majority of OpenStack, are written in Python. This means that there is a direct dependency on Python being available on the computer that will be running the clients.

When we interact with OpenStack, we are technically making REST API calls to the services that run the Service APIs (Application Programming Interfaces). A REST API defines a set of functions that developers can perform requests and receive responses via HTTP protocol such as GET and POST. The OpenStack command-line clients translate your intuitive commands into these HTTP calls. In a typical deployment of OpenStack, and one that has been described in Chapter 1, Installing OpenStack with Ansible, using Ansible, our OpenStack API services have been deployed across three Controller nodes. To allow us to interact with any one of the three Controller nodes so that each of them can respond independently, we place these services behind a load balancer. It is the load balancer VIP (Virtual IP), the IP address we have associated for use with each of the configured pools, that as a user of OpenStack that we are interested in.

There is one particular service that a user is interested in when configuring their environment for use with OpenStack and that is the Keystone service.

The Keystone service (OpenStack Identity service) essentially performs two functions in OpenStack. It authorizes users to allow them to perform the actions they have requested, as well as provides a catalog of services back to the user. This catalog is a mapping of the OpenStack service address endpoints. For this reason, we do not need to configure our client to know where to find each and every OpenStack service. When a user configures their environment to use OpenStack from the command line, the only information they need to be aware of is the IP address and port that Keystone has been installed on. See the following diagram for how this conceptually looks to a user:

Introduction – using OpenStack

Tip

This chapter is intended as a quick reference guide for commands that are explained in more detail throughout the book.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
52.14.76.200