La CLI d’Openstack

Depuis les serveurs interactifs

Pour utiliser les CLI à partir des serveurs interactifs, il faut utiliser ccenv :

% ccenv openstack

Ensuite, les commandes openstack, nova etc... sont accessibles :

% openstack catalog list
+------------+--------------+----------------------------------------------------------------------------------------+
| Name       | Type         | Endpoints                                                                              |
+------------+--------------+----------------------------------------------------------------------------------------+
| nova       | compute      | regionOne                                                                              |
|            |              |   publicURL: https://ccnova.in2p3.fr:8774/v2/0223bc1968bc4e46932c5d87012aaf14          |
|            |              |   internalURL: https://ccnovai.in2p3.fr:8774/v2/0223bc1968bc4e46932c5d87012aaf14       |
|            |              |   adminURL: https://ccnova.in2p3.fr:8774/v2/0223bc1968bc4e46932c5d87012aaf14           |
[...]

Depuis une machine tierce

  1. installer les paquets python2-openstackclient, python2-novaclient, python2-glanceclient, python2-cinderclient, python2-neutronclient. Ils sont disponibles pour la plupart des sytèmes Linux.
  2. recopier les credentials disponibles dans le HOME du CC-IN2P3 ~/.novacreds/novarc.sh dans un fichier d’environnement local
  3. sourcer ce fichier

Pour débuter

Pour découvrir l’outil il est possible de parcourir l’aide intégrée :

% openstack help
usage: openstack <subcommand> ...
Optionnal arguments:
Commands :
  address scope create  Create a new Address Scope
  address scope delete  Delete address scope(s)
  address scope list  List address scopes
  address scope set  Set address scope properties
  address scope show  Display address scope details
  aggregate add host  Add host to aggregate
  aggregate create  Create a new aggregate
  aggregate delete  Delete existing aggregate(s)
  aggregate list  List all aggregates
  aggregate remove host  Remove host from aggregate
  aggregate set  Set aggregate properties
  aggregate show  Display aggregate details
  aggregate unset  Unset aggregate properties
  alarm create   Create an alarm
  alarm delete   Delete an alarm
  alarm list     List alarms
[...]

Obtenir de l’aide en ligne sur une commande spécifique

% openstack help server create
usage: openstack server create [-h] [-f {json,shell,table,value,yaml}]
                               [-c COLUMN] [--noindent] [--prefix PREFIX]
                               [--max-width <integer>] [--print-empty]
                               (--image <image> | --volume <volume>) --flavor
                               <flavor>
                               [--security-group <security-group-name>]
                               [--key-name <key-name>]
                               [--property <key=value>]
                               [--file <dest-filename=source-filename>]
                               [--user-data <user-data>]
                               [--availability-zone <zone-name>]
                               [--block-device-mapping <dev-name=mapping>]
                               [--nic <net-id=net-uuid,v4-fixed-ip=ip-addr,v6-fixed-ip=ip-addr,port-id=port-uuid,auto,none>]
                               [--network <network>] [--port <port>]
                               [--hint <key=value>]
                               [--config-drive <config-drive-volume>|True]
                               [--min <count>] [--max <count>] [--wait]
                               <server-name>
[...]

Aller plus loin

Pour de plus amples informations que celles contenues dans cette documentation, se réferer à la Documentation Openstack de la CLI.