OpenStack CLI

From CAC Documentation wiki
Revision as of 15:00, 11 January 2019 by Pzv2 (talk | contribs)
Jump to navigation Jump to search

The OpenStack CLI is a Command-Line Interface for interacting with OpenStack, running on Red Cloud. This page covers installation and some of the basic features of the CLI. For more information, please refer to the offical documentation. If you prefer to use a Graphical User Interface, then please see the documentation on the Web Interface.


Openstack CLI client can be installed on any host with python and pip installed. To install Openstack CLI client, run the pip install --upgrade python-openstackclient python-swiftclient command either as root or as yourself, depending on where and how python is installed on the machine you are running this on. This command will also install the Openstack SDK for python. You may also need to add the install directory to your PATH by running export PATH=$PATH:$HOME/.local/bin.

Openstack CLI client is also installed on Simply ssh <user name> and enter your CAC account password when prompted.

Download Openstack RC File

  1. Using your web browser, Go to .
  2. Log in using your CAC account (do NOT use GLOBUS).
  3. Click on the Download Openstack RC File menu in the upper right corner and select Openstack RC File (Identity API v3).
  4. A file named <project name> will be downloaded to your computer. Copy it to the host with Openstack CLI client installed and you are ready to go!


On the host where Openstack CLI client is installed,

  • Source the Openstack RC file. Enter your CAC account password when prompted. You will need to do this step before you can use the Openstack CLI client in a new terminal session. In addition, if you want to switch between multiple projects, you will need to source the RC file for the project that you want to switch to.
 -bash-4.2$ source <project name> 
 Please enter your OpenStack Password for project <project name> as user <user name>:
  • You should be able to list available images like this:
 -bash-4.2$ openstack image list
 | ID                                   | Name                       | Status |
 | bb0efad8-5d21-46de-ba8b-6522b3328b48 | centos-7.5                 | active |
 | 9387131a-91ef-4cae-a3b7-da20c586af70 | ubuntu-18.04-LTS           | active |
  • Run openstack command help to get the list of available commands. Use -h option with any command to get detailed syntax help. For example:
 -bash-4.2$ openstack image list -h
 usage: openstack image list [-h] [-f {csv,json,table,value,yaml}] [-c COLUMN]
                             [--max-width <integer>] [--fit-width]
                             [--print-empty] [--noindent]
                             [--quote {all,minimal,none,nonnumeric}]
                             [--sort-column SORT_COLUMN]
                             [--public | --private | --shared]
                             [--property <key=value>] [--name <name>]
                             [--status <status>] [--long]
                             [--sort <key>[:<direction>]]
                             [--limit <num-images>] [--marker <image>]
 List available images
 optional arguments:
   -h, --help            show this help message and exit
   --public              List only public images
   --private             List only private images
   --shared              List only shared images
  • Use the swift command to access object store:
-bash-4.2$ swift stat
                    Account: v1
                 Containers: 1
                    Objects: 1
                      Bytes: 4611840
                X-Timestamp: 1539699805.38623
X-Account-Bytes-Used-Actual: 4612096
                 X-Trans-Id: tx00000000000000000000d-005bc5f45c-38952d-default
               Content-Type: text/plain; charset=utf-8
              Accept-Ranges: bytes
-bash-4.2$ swift stat
                    Account: v1
                 Containers: 1
                    Objects: 1
                      Bytes: 4611840
                X-Timestamp: 1539699998.81229
X-Account-Bytes-Used-Actual: 4612096
                 X-Trans-Id: tx00000000000000000000e-005bc5f51e-38952d-default
               Content-Type: text/plain; charset=utf-8
               Accept-Ranges: bytes
-bash-4.2$ swift help 
usage: swift [--version] [--help] [--os-help] [--snet] [--verbose]
             [--debug] [--info] [--quiet] [--auth <auth_url>]
             [--auth-version <auth_version> |
                 --os-identity-api-version <auth_version> ]
Command-line interface to the OpenStack Swift API.
Positional arguments:
    delete               Delete a container or objects within a container.
    download             Download objects from containers.
    list                 Lists the containers for the account or the objects
                        for a container.
    post                 Updates meta information for the account, container,
                        or object; creates containers if not present.

Available Scripts

  • Openstack CLI client is installed on All CAC users can log in there. Three additional scripts are installed under /opt/openstack
    • source /opt/openstack/ Authenticate the current login session to use Openstack CLI client.
    • /opt/openstack/ Create a private network with the specified name
    • /opt/openstack/ Delete the specified private network