cc_staff
1,486
edits
Line 65: | Line 65: | ||
==Command Line Clients== | ==Command Line Clients== | ||
==Combined OpenStack CLI tool== | |||
The OpenStack CLI tools allow one to perform many of the actions one would perform using the OpenStack dashboard GUI but on the command line. They also allow more functionality above and beyond the OpenStack dashboard. The OpenStack combined tools replaces the various separate command line tools, such as nova, swift, glance, cider etc. See [http://docs.openstack.org/developer/python-openstackclient/ http://docs.openstack.org/developer/python-openstackclient/] for the official documentation. The rest of this section gives a very basic overview to get a user started and points out some of the commands available. | |||
===Installation=== | |||
{{command|sudo apt-get install python-dev python-pip}} | |||
{{command|pip install python-openstackclient}} | |||
see [[http://docs.openstack.org/cli-reference/common/cli_install_openstack_command_line_clients.html http://docs.openstack.org/cli-reference/common/cli_install_openstack_command_line_clients.html]] | |||
To install on a machine (ACENET specifically without admin privileges) use:{{command| pip install --user python-openstackclient}} | |||
provided that pip is install which installs to ~/.local/lib/pythonX.Y/site-packages/ so by adding <code>export PYTHONPATH=${HOME}/.local/lib/python2.7/site-packages/:${PYTHONPATH}</code> to your <code>.bashrc</code> file if you are using Python major version X=2, and minor version Y=7 python can then load those modules. Further adding <code>export PATH=${HOME}/.local/bin:${PATH}</code> to your .bashrc will allow you to run the openstack commands directly. | |||
===Executing commands=== | |||
The combined CLI tool can be used interactively by running | |||
{{Command|openstack}} | |||
and then issuing commands at the prompt. Alternatively the commands can be issued as one-offs by a preceding the command with <code>openstack</code>, for example | |||
{{Command|openstack server list}} | |||
When running in interactive mode a list of available commands can be seen by typing <code>help</code> at the openstack prompt. The available commands are categorized by groups, many of the most commonly used are listed below (e.g. <code>server</code> command group. More information on a particular command group can be obtained by typing <code>help <command group></code> where <code><command group></code> is the particular command group e.g. <code>server</code>. To get help on a particular command (e.g. options and arguments) one can type <code>help <command group> <command></code>. Note that many of the available commands are available only to OpenStack administrators and will show some meaningless error message if a non-administrator tries using it. For this reason a list of available commands grouped by command group is provided below to allow one to easily identify commands available to the average user. | |||
To execute a command type {{Command|openstack <command group> <command>}} | |||
====<code>server</code> command group==== | |||
{|- | |||
| <code>add security group</code> || <code>migrate</code> || <code>resume</code> || <code>unlock</code> | |||
|- | |||
| <code>add volume</code> || <code>pause</code> || <code>set</code> || <code>unpause</code> | |||
|- | |||
| <code>create</code> || <code>reboot</code> || <code>shelve</code> || <code>unrescue</code> | |||
|- | |||
| <code>delete</code> || <code>rebuild</code> || <code>show</code> || <code>unset</code> | |||
|- | |||
| <code>dump create</code> || <code>remove security group</code> || <code>ssh</code> || <code>unshelve</code> | |||
|- | |||
| <code>image create</code> || <code>remove volume</code> || <code>start</code> || | |||
|- | |||
| <code>list</code> || <code>rescue</code> || <code>stop</code> | |||
|- | |||
| <code>lock</code> || <code>resize</code> || <code>suspend</code> | |||
|} | |||
====<code>volume</code> command group==== | |||
{|- | |||
|<code>create</code>||<code>set</code> | |||
|- | |||
|<code>delete</code>||<code>show</code> | |||
|- | |||
|<code>list</code>||<code>unset</code> | |||
|} | |||
====<code>console</code> command group==== | |||
{|- | |||
|<code>log show</code>||<code>url show</code> | |||
|} | |||
====<code>image</code> command group==== | |||
{|- | |||
|<code>create</code>||<code>save</code>| | |||
|- | |||
|<code>delete</code>||<code>set</code>| | |||
|- | |||
|<code>list</code>||<code>show</code>| | |||
|} | |||
====<code>ip</code> command group==== | |||
{|- | |||
|<code>fixed add</code>||<code>floating list</code> | |||
|- | |||
|<code>fixed remove</code>||<code>floating pool list</code> | |||
|- | |||
|<code>floating add</code>||<code>floating remove</code> | |||
|- | |||
|<code>floating create</code>||<code>floating show</code> | |||
|- | |||
|<code>floating delete</code> | |||
|} | |||
====<code>keypair</code> command group==== | |||
{|- | |||
|<code>create</code>||<code>list</code> | |||
|- | |||
|<code>delete</code>||<code>show</code> | |||
|} | |||
====<code>network</code> command group==== | |||
{|- | |||
|<code>create</code>||<code>set</code> | |||
|- | |||
|<code>delete</code>||<code>show</code> | |||
|- | |||
|<code>list</code>|| | |||
|} | |||
====<code>snapshot</code> command group==== | |||
{|- | |||
|<code>create</code>||<code>set</code> | |||
|- | |||
|<code>delete</code>||<code>show</code> | |||
|- | |||
|<code>list</code>||<code>unset</code> | |||
|} | |||
====<code>security group</code> command group==== | |||
{|- | |||
|<code>create</code>||<code>rule list</code> | |||
|- | |||
|<code>delete</code>||<code>rule show</code> | |||
|- | |||
|<code>list</code>||<code>set</code> | |||
|- | |||
|<code>rule create</code>||<code>show</code> | |||
|- | |||
|<code>rule delete</code>|| | |||
|} | |||
====<code>limits show</code>==== | |||
<!--These two (container and object) are not widely publicized | |||
====container==== | |||
{|- | |||
|<code>create</code>||<code>set</code> | |||
|- | |||
|<code>delete</code>||<code>show</code> | |||
|- | |||
|<code>list</code>||<code>unset</code> | |||
|- | |||
|<code>save</code> | |||
|} | |||
====object==== | |||
{|- | |||
|<code>create</code>||<code>show</code> | |||
|- | |||
|<code>delete</code>||<code>store account set</code> | |||
|- | |||
|<code>list</code>||<code>store account show</code> | |||
|- | |||
|<code>save</code>||<code>store account unset</code> | |||
|- | |||
|<code>set</code>||<code>unset</code> | |||
|} | |||
--> | |||
The OpenStack command line clients allow you to perform many of the same operations and more that you can perform on the OpenStack web dashboard. The command line clients can be used from any machine, virtual or otherwise, and only require having an internet connection and the command line clients installed. The below discussion of command line clients, assumes that they are being used on a Linux machine. It may be possible to use them in Windows however, this has not yet been explored. | The OpenStack command line clients allow you to perform many of the same operations and more that you can perform on the OpenStack web dashboard. The command line clients can be used from any machine, virtual or otherwise, and only require having an internet connection and the command line clients installed. The below discussion of command line clients, assumes that they are being used on a Linux machine. It may be possible to use them in Windows however, this has not yet been explored. | ||
<ol> | <ol> |