openstack的每一个子项目(project)都有自己对应的命令行API,所有的这些API都是基于RESTful的,python代码实现的API。也就是说,这些API都是基于HTTP实现的,所以API都包含方法(GET,POST,DELETE,PUT,HEADER,OPTIONS),资源类型,响应码。

有了这些API,方便用户通过命令行来操作云平台资源,完成一些操作。这些,在Dashboard上也可以操作。例如Compute service可以通过python-novaclient进行操作。

下面列简单说说如何安装这些命令行程序。就拿我前面搭建的devstack环境举例说明,由于是运行在Centos上的,这就需要设置yum的资源仓库。

[stack@ip-10-121-5-244 devstack]$ yum install http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm

接下来,就是要enable上面的repository了,如下:

[stack@ip-10-121-5-244 devstack]$ yum install centos-release-openstack-liberty

然后,更新yum缓存:

[stack@ip-10-121-5-244 devstack]$ yum makecache

最后安装客户命令行软件包,可以指定安装某个包,如果是在单机环境安装,例如devstack,建议安装全包,若是用openstack安装在多个节点上,比如controller node, compute node, network node, block node, object node, image node, identity node等都是独立的,那么就根据具体情况,选择安装对应的包。我的环境是devstack,所以,我就安装了全包:

[stack@ip-10-121-5-244 devstack]$ sudo yum install python-openstackclient

这里列出安装过程中,可以看到有那些子包被安装了:

 [stack@ip---- devstack]$ sudo yum install python-openstackclient
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.iij.ad.jp
* epel: ftp.jaist.ac.jp
* extras: ftp.iij.ad.jp
* updates: ftp.iij.ad.jp
Resolving Dependencies
--> Running transaction check
---> Package python-openstackclient.noarch :1.7.-.el7 will be installed
--> Processing Dependency: python-stevedore for package: python-openstackclient-1.7.-.el7.noarch
--> Processing Dependency: python-pbr for package: python-openstackclient-1.7.-.el7.noarch
--> Processing Dependency: python-oslo-utils for package: python-openstackclient-1.7.-.el7.noarch
--> Processing Dependency: python-oslo-serialization for package: python-openstackclient-1.7.-.el7.noarch
--> Processing Dependency: python-oslo-i18n for package: python-openstackclient-1.7.-.el7.noarch
--> Processing Dependency: python-oslo-config for package: python-openstackclient-1.7.-.el7.noarch
--> Processing Dependency: python-os-client-config for package: python-openstackclient-1.7.-.el7.noarch
--> Processing Dependency: python-novaclient for package: python-openstackclient-1.7.-.el7.noarch
--> Processing Dependency: python-neutronclient for package: python-openstackclient-1.7.-.el7.noarch
--> Processing Dependency: python-keystoneclient for package: python-openstackclient-1.7.-.el7.noarch
--> Processing Dependency: python-glanceclient for package: python-openstackclient-1.7.-.el7.noarch
--> Processing Dependency: python-crypto for package: python-openstackclient-1.7.-.el7.noarch
--> Processing Dependency: python-cliff-tablib for package: python-openstackclient-1.7.-.el7.noarch
--> Processing Dependency: python-cliff for package: python-openstackclient-1.7.-.el7.noarch
--> Processing Dependency: python-cinderclient for package: python-openstackclient-1.7.-.el7.noarch
--> Processing Dependency: python-babel for package: python-openstackclient-1.7.-.el7.noarch
--> Running transaction check
---> Package python-babel.noarch :1.3-.el7 will be installed
--> Processing Dependency: pytz for package: python-babel-1.3-.el7.noarch
---> Package python-cinderclient.noarch :1.4.-.el7 will be installed
--> Processing Dependency: python-simplejson for package: python-cinderclient-1.4.-.el7.noarch
---> Package python-cliff.noarch :1.15.-.el7 will be installed
--> Processing Dependency: python-cmd2 >= 0.6. for package: python-cliff-1.15.-.el7.noarch
--> Processing Dependency: python-unicodecsv for package: python-cliff-1.15.-.el7.noarch
---> Package python-cliff-tablib.noarch :1.1-.el7 will be installed
--> Processing Dependency: python-tablib for package: python-cliff-tablib-1.1-.el7.noarch
---> Package python-crypto.x86_64 :2.6.-.el7.centos will be installed
---> Package python-glanceclient.noarch :1.1.-.el7 will be installed
--> Processing Dependency: python-warlock for package: :python-glanceclient-1.1.-.el7.noarch
--> Processing Dependency: python-httplib2 for package: :python-glanceclient-1.1.-.el7.noarch
---> Package python-keystoneclient.noarch :1.7.-.el7 will be installed
--> Processing Dependency: python-iso8601 >= 0.1. for package: :python-keystoneclient-1.7.-.el7.noarch
--> Processing Dependency: python-debtcollector >= 0.3. for package: :python-keystoneclient-1.7.-.el7.noarch
--> Processing Dependency: python-webob for package: :python-keystoneclient-1.7.-.el7.noarch
--> Processing Dependency: python-netaddr for package: :python-keystoneclient-1.7.-.el7.noarch
--> Processing Dependency: python-keyring for package: :python-keystoneclient-1.7.-.el7.noarch
---> Package python-neutronclient.noarch :3.1.-.el7 will be installed
--> Processing Dependency: pyparsing for package: python-neutronclient-3.1.-.el7.noarch
---> Package python-novaclient.noarch :2.30.-.el7 will be installed
--> Processing Dependency: python-netifaces for package: :python-novaclient-2.30.-.el7.noarch
---> Package python-pbr.noarch :1.8.-.el7 will be installed
---> Package python-stevedore.noarch :1.8.-.el7 will be installed
---> Package python2-os-client-config.noarch :1.7.-.el7 will be installed
--> Processing Dependency: python-fixtures for package: python2-os-client-config-1.7.-.el7.noarch
--> Processing Dependency: python-appdirs for package: python2-os-client-config-1.7.-.el7.noarch
---> Package python2-oslo-config.noarch :2.4.-.el7 will be installed
---> Package python2-oslo-i18n.noarch :2.6.-.el7 will be installed
---> Package python2-oslo-serialization.noarch :1.9.-.el7 will be installed
--> Processing Dependency: python-msgpack for package: python2-oslo-serialization-1.9.-.el7.noarch
---> Package python2-oslo-utils.noarch :2.5.-.el7 will be installed
--> Processing Dependency: python-monotonic for package: python2-oslo-utils-2.5.-.el7.noarch
--> Running transaction check
---> Package pyparsing.noarch :2.0.-.el7 will be installed
---> Package python-cmd2.noarch :0.6.-.el7 will be installed
---> Package python-fixtures.noarch :0.3.-.el7 will be installed
--> Processing Dependency: python-testtools for package: python-fixtures-0.3.-.el7.noarch
---> Package python-httplib2.noarch :0.7.-.el7 will be installed
---> Package python-iso8601.noarch :0.1.-.el7 will be installed
---> Package python-keyring.noarch :5.0-.el7 will be installed
---> Package python-monotonic.noarch :0.3-.el7 will be installed
---> Package python-msgpack.x86_64 :0.4.-.el7 will be installed
---> Package python-netaddr.noarch :0.7.-.el7 will be installed
---> Package python-netifaces.x86_64 :0.10.-.el7 will be installed
---> Package python-simplejson.x86_64 :3.3.-.el7 will be installed
---> Package python-tablib.noarch :0.10.-.el7 will be installed
---> Package python-unicodecsv.noarch :0.14.-.el7 will be installed
---> Package python-warlock.noarch :1.0.-.el7 will be installed
--> Processing Dependency: python-jsonschema for package: python-warlock-1.0.-.el7.noarch
---> Package python-webob.noarch :1.2.-.el7 will be installed
---> Package python2-appdirs.noarch :1.4.-.el7 will be installed
---> Package python2-debtcollector.noarch :0.8.-.el7 will be installed
--> Processing Dependency: python-wrapt for package: python2-debtcollector-0.8.-.el7.noarch
---> Package pytz.noarch :2012d-.el7 will be installed
--> Running transaction check
---> Package python-jsonschema.noarch :2.3.-.el7 will be installed
---> Package python-testtools.noarch :1.8.-.el7 will be installed
--> Processing Dependency: python-unittest2 >= 0.8. for package: python-testtools-1.8.-.el7.noarch
--> Processing Dependency: python-mimeparse for package: python-testtools-1.8.-.el7.noarch
--> Processing Dependency: python-extras for package: python-testtools-1.8.-.el7.noarch
---> Package python-wrapt.x86_64 :1.10.-.el7 will be installed
--> Running transaction check
---> Package python-extras.noarch :0.0.-.el7 will be installed
---> Package python-mimeparse.noarch :0.1.-.el7 will be installed
---> Package python-unittest2.noarch :1.0.-.el7 will be installed
--> Processing Dependency: python-traceback2 for package: python-unittest2-1.0.-.el7.noarch
--> Running transaction check
---> Package python-traceback2.noarch :1.4.-.el7 will be installed
--> Processing Dependency: python-linecache2 for package: python-traceback2-1.4.-.el7.noarch
--> Running transaction check
---> Package python-linecache2.noarch :1.0.-.el7 will be installed
--> Finished Dependency Resolution Dependencies Resolved =============================================================================================================================================
Package Arch Version Repository Size
=============================================================================================================================================
Installing:
python-openstackclient noarch 1.7.-.el7 centos-openstack-liberty k
Installing for dependencies:
pyparsing noarch 2.0.-.el7 centos-openstack-liberty k
python-babel noarch 1.3-.el7 centos-openstack-liberty 2.4 M
python-cinderclient noarch 1.4.-.el7 centos-openstack-liberty k
python-cliff noarch 1.15.-.el7 centos-openstack-liberty k
python-cliff-tablib noarch 1.1-.el7 centos-openstack-liberty k
python-cmd2 noarch 0.6.-.el7 centos-openstack-liberty k
python-crypto x86_64 2.6.-.el7.centos extras k
python-extras noarch 0.0.-.el7 centos-openstack-liberty k
python-fixtures noarch 0.3.-.el7 centos-openstack-liberty k
python-glanceclient noarch :1.1.-.el7 centos-openstack-liberty k
python-httplib2 noarch 0.7.-.el7 centos-openstack-liberty k
python-iso8601 noarch 0.1.-.el7 centos-openstack-liberty k
python-jsonschema noarch 2.3.-.el7 centos-openstack-liberty k
python-keyring noarch 5.0-.el7 epel k
python-keystoneclient noarch :1.7.-.el7 centos-openstack-liberty k
python-linecache2 noarch 1.0.-.el7 centos-openstack-liberty k
python-mimeparse noarch 0.1.-.el7 epel 9.3 k
python-monotonic noarch 0.3-.el7 centos-openstack-liberty 8.0 k
python-msgpack x86_64 0.4.-.el7 epel k
python-netaddr noarch 0.7.-.el7 centos-openstack-liberty 1.3 M
python-netifaces x86_64 0.10.-.el7 centos-openstack-liberty k
python-neutronclient noarch 3.1.-.el7 centos-openstack-liberty k
python-novaclient noarch :2.30.-.el7 centos-openstack-liberty k
python-pbr noarch 1.8.-.el7 centos-openstack-liberty k
python-simplejson x86_64 3.3.-.el7 centos-openstack-liberty k
python-stevedore noarch 1.8.-.el7 centos-openstack-liberty k
python-tablib noarch 0.10.-.el7 centos-openstack-liberty k
python-testtools noarch 1.8.-.el7 centos-openstack-liberty k
python-traceback2 noarch 1.4.-.el7 centos-openstack-liberty k
python-unicodecsv noarch 0.14.-.el7 centos-openstack-liberty k
python-unittest2 noarch 1.0.-.el7 centos-openstack-liberty k
python-warlock noarch 1.0.-.el7 centos-openstack-liberty k
python-webob noarch 1.2.-.el7 base k
python-wrapt x86_64 1.10.-.el7 epel k
python2-appdirs noarch 1.4.-.el7 centos-openstack-liberty k
python2-debtcollector noarch 0.8.-.el7 centos-openstack-liberty k
python2-os-client-config noarch 1.7.-.el7 centos-openstack-liberty k
python2-oslo-config noarch :2.4.-.el7 centos-openstack-liberty k
python2-oslo-i18n noarch 2.6.-.el7 centos-openstack-liberty k
python2-oslo-serialization noarch 1.9.-.el7 centos-openstack-liberty k
python2-oslo-utils noarch 2.5.-.el7 centos-openstack-liberty k
pytz noarch 2012d-.el7 base k Transaction Summary
=============================================================================================================================================
Install Package (+ Dependent packages) Total download size: 9.1 M
Installed size: M
Is this ok [y/d/N]: y
Downloading packages:
(/): pyparsing-2.0.-.el7.noarch.rpm | kB ::
(/): python-cinderclient-1.4.-.el7.noarch.rpm | kB ::
(/): python-cliff-1.15.-.el7.noarch.rpm | kB ::
(/): python-cliff-tablib-1.1-.el7.noarch.rpm | kB ::
(/): python-cmd2-0.6.-.el7.noarch.rpm | kB ::
(/): python-extras-0.0.-.el7.noarch.rpm | kB ::
(/): python-crypto-2.6.-.el7.centos.x86_64.rpm | kB ::
(/): python-fixtures-0.3.-.el7.noarch.rpm | kB ::
(/): python-glanceclient-1.1.-.el7.noarch.rpm | kB ::
(/): python-httplib2-0.7.-.el7.noarch.rpm | kB ::
(/): python-iso8601-0.1.-.el7.noarch.rpm | kB ::
(/): python-jsonschema-2.3.-.el7.noarch.rpm | kB ::
(/): python-keyring-5.0-.el7.noarch.rpm | kB ::
(/): python-babel-1.3-.el7.noarch.rpm | 2.4 MB ::
(/): python-mimeparse-0.1.-.el7.noarch.rpm | 9.3 kB ::
(/): python-linecache2-1.0.-.el7.noarch.rpm | kB ::
(/): python-msgpack-0.4.-.el7.x86_64.rpm | kB ::
(/): python-monotonic-0.3-.el7.noarch.rpm | 8.0 kB ::
(/): python-keystoneclient-1.7.-.el7.noarch.rpm | kB ::
(/): python-netifaces-0.10.-.el7.x86_64.rpm | kB ::
(/): python-neutronclient-3.1.-.el7.noarch.rpm | kB ::
(/): python-novaclient-2.30.-.el7.noarch.rpm | kB ::
(/): python-netaddr-0.7.-.el7.noarch.rpm | 1.3 MB ::
(/): python-pbr-1.8.-.el7.noarch.rpm | kB ::
(/): python-simplejson-3.3.-.el7.x86_64.rpm | kB ::
(/): python-stevedore-1.8.-.el7.noarch.rpm | kB ::
(/): python-openstackclient-1.7.-.el7.noarch.rpm | kB ::
(/): python-testtools-1.8.-.el7.noarch.rpm | kB ::
(/): python-traceback2-1.4.-.el7.noarch.rpm | kB ::
(/): python-unicodecsv-0.14.-.el7.noarch.rpm | kB ::
(/): python-unittest2-1.0.-.el7.noarch.rpm | kB ::
(/): python-webob-1.2.-.el7.noarch.rpm | kB ::
(/): python-wrapt-1.10.-.el7.x86_64.rpm | kB ::
(/): python-warlock-1.0.-.el7.noarch.rpm | kB ::
(/): python2-appdirs-1.4.-.el7.noarch.rpm | kB ::
(/): python2-debtcollector-0.8.-.el7.noarch.rpm | kB ::
(/): python2-os-client-config-1.7.-.el7.noarch.rpm | kB ::
(/): python-tablib-0.10.-.el7.noarch.rpm | kB ::
(/): python2-oslo-config-2.4.-.el7.noarch.rpm | kB ::
(/): python2-oslo-i18n-2.6.-.el7.noarch.rpm | kB ::
(/): pytz-2012d-.el7.noarch.rpm | kB ::
(/): python2-oslo-serialization-1.9.-.el7.noarch.rpm | kB ::
(/): python2-oslo-utils-2.5.-.el7.noarch.rpm | kB ::
---------------------------------------------------------------------------------------------------------------------------------------------
Total kB/s | 9.1 MB ::
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : python-pbr-1.8.-.el7.noarch /
Installing : python-iso8601-0.1.-.el7.noarch /
Installing : python-stevedore-1.8.-.el7.noarch /
Installing : python-netaddr-0.7.-.el7.noarch /
Installing : :python2-oslo-config-2.4.-.el7.noarch /
Installing : pytz-2012d-.el7.noarch /
Installing : python-babel-1.3-.el7.noarch /
Installing : python-simplejson-3.3.-.el7.x86_64 /
Installing : python-netifaces-0.10.-.el7.x86_64 /
Installing : pyparsing-2.0.-.el7.noarch /
Installing : python-keyring-5.0-.el7.noarch /
Installing : python-cmd2-0.6.-.el7.noarch /
Installing : python2-appdirs-1.4.-.el7.noarch /
Installing : python-unicodecsv-0.14.-.el7.noarch /
Installing : python-cliff-1.15.-.el7.noarch /
Installing : python-msgpack-0.4.-.el7.x86_64 /
Installing : python-webob-1.2.-.el7.noarch /
Installing : python-httplib2-0.7.-.el7.noarch /
Installing : python-monotonic-0.3-.el7.noarch /
Installing : python-jsonschema-2.3.-.el7.noarch /
Installing : python-warlock-1.0.-.el7.noarch /
Installing : python-wrapt-1.10.-.el7.x86_64 /
Installing : python2-debtcollector-0.8.-.el7.noarch /
Installing : python-crypto-2.6.-.el7.centos.x86_64 /
Installing : python-linecache2-1.0.-.el7.noarch /
Installing : python-traceback2-1.4.-.el7.noarch /
Installing : python-unittest2-1.0.-.el7.noarch /
Installing : python-mimeparse-0.1.-.el7.noarch /
Installing : python-extras-0.0.-.el7.noarch /
Installing : python-testtools-1.8.-.el7.noarch /
Installing : python-fixtures-0.3.-.el7.noarch /
Installing : python2-oslo-i18n-2.6.-.el7.noarch /
Installing : python2-oslo-utils-2.5.-.el7.noarch /
Installing : python2-oslo-serialization-1.9.-.el7.noarch /
Installing : :python-keystoneclient-1.7.-.el7.noarch /
Installing : python-cinderclient-1.4.-.el7.noarch /
Installing : :python-glanceclient-1.1.-.el7.noarch /
Installing : python-neutronclient-3.1.-.el7.noarch /
Installing : :python-novaclient-2.30.-.el7.noarch /
Installing : python2-os-client-config-1.7.-.el7.noarch /
Installing : python-tablib-0.10.-.el7.noarch /
Installing : python-cliff-tablib-1.1-.el7.noarch /
Installing : python-openstackclient-1.7.-.el7.noarch /
Verifying : python2-debtcollector-0.8.-.el7.noarch /
Verifying : python-unittest2-1.0.-.el7.noarch /
Verifying : python-cmd2-0.6.-.el7.noarch /
Verifying : python-cliff-tablib-1.1-.el7.noarch /
Verifying : python-pbr-1.8.-.el7.noarch /
Verifying : python-tablib-0.10.-.el7.noarch /
Verifying : python-extras-0.0.-.el7.noarch /
Verifying : python-openstackclient-1.7.-.el7.noarch /
Verifying : python-testtools-1.8.-.el7.noarch /
Verifying : python-fixtures-0.3.-.el7.noarch /
Verifying : :python-keystoneclient-1.7.-.el7.noarch /
Verifying : python-warlock-1.0.-.el7.noarch /
Verifying : python-keyring-5.0-.el7.noarch /
Verifying : python2-os-client-config-1.7.-.el7.noarch /
Verifying : python-mimeparse-0.1.-.el7.noarch /
Verifying : python-linecache2-1.0.-.el7.noarch /
Verifying : python-netaddr-0.7.-.el7.noarch /
Verifying : python-simplejson-3.3.-.el7.x86_64 /
Verifying : python-crypto-2.6.-.el7.centos.x86_64 /
Verifying : python-iso8601-0.1.-.el7.noarch /
Verifying : python-wrapt-1.10.-.el7.x86_64 /
Verifying : python-cinderclient-1.4.-.el7.noarch /
Verifying : python-stevedore-1.8.-.el7.noarch /
Verifying : python-jsonschema-2.3.-.el7.noarch /
Verifying : python-monotonic-0.3-.el7.noarch /
Verifying : pyparsing-2.0.-.el7.noarch /
Verifying : :python-glanceclient-1.1.-.el7.noarch /
Verifying : python-netifaces-0.10.-.el7.x86_64 /
Verifying : python-traceback2-1.4.-.el7.noarch /
Verifying : python-httplib2-0.7.-.el7.noarch /
Verifying : python2-oslo-utils-2.5.-.el7.noarch /
Verifying : python-webob-1.2.-.el7.noarch /
Verifying : python-msgpack-0.4.-.el7.x86_64 /
Verifying : python-unicodecsv-0.14.-.el7.noarch /
Verifying : python2-oslo-serialization-1.9.-.el7.noarch /
Verifying : python-neutronclient-3.1.-.el7.noarch /
Verifying : :python2-oslo-config-2.4.-.el7.noarch /
Verifying : python-cliff-1.15.-.el7.noarch /
Verifying : python-babel-1.3-.el7.noarch /
Verifying : python2-appdirs-1.4.-.el7.noarch /
Verifying : python2-oslo-i18n-2.6.-.el7.noarch /
Verifying : :python-novaclient-2.30.-.el7.noarch /
Verifying : pytz-2012d-.el7.noarch / Installed:
python-openstackclient.noarch :1.7.-.el7 Dependency Installed:
pyparsing.noarch :2.0.-.el7 python-babel.noarch :1.3-.el7 python-cinderclient.noarch :1.4.-.el7
python-cliff.noarch :1.15.-.el7 python-cliff-tablib.noarch :1.1-.el7 python-cmd2.noarch :0.6.-.el7
python-crypto.x86_64 :2.6.-.el7.centos python-extras.noarch :0.0.-.el7 python-fixtures.noarch :0.3.-.el7
python-glanceclient.noarch :1.1.-.el7 python-httplib2.noarch :0.7.-.el7 python-iso8601.noarch :0.1.-.el7
python-jsonschema.noarch :2.3.-.el7 python-keyring.noarch :5.0-.el7 python-keystoneclient.noarch :1.7.-.el7
python-linecache2.noarch :1.0.-.el7 python-mimeparse.noarch :0.1.-.el7 python-monotonic.noarch :0.3-.el7
python-msgpack.x86_64 :0.4.-.el7 python-netaddr.noarch :0.7.-.el7 python-netifaces.x86_64 :0.10.-.el7
python-neutronclient.noarch :3.1.-.el7 python-novaclient.noarch :2.30.-.el7 python-pbr.noarch :1.8.-.el7
python-simplejson.x86_64 :3.3.-.el7 python-stevedore.noarch :1.8.-.el7 python-tablib.noarch :0.10.-.el7
python-testtools.noarch :1.8.-.el7 python-traceback2.noarch :1.4.-.el7 python-unicodecsv.noarch :0.14.-.el7
python-unittest2.noarch :1.0.-.el7 python-warlock.noarch :1.0.-.el7 python-webob.noarch :1.2.-.el7
python-wrapt.x86_64 :1.10.-.el7 python2-appdirs.noarch :1.4.-.el7 python2-debtcollector.noarch :0.8.-.el7
python2-os-client-config.noarch :1.7.-.el7 python2-oslo-config.noarch :2.4.-.el7 python2-oslo-i18n.noarch :2.6.-.el7
python2-oslo-serialization.noarch :1.9.-.el7 python2-oslo-utils.noarch :2.5.-.el7 pytz.noarch :2012d-.el7 Complete!

测试一下呗,看看是否安装成功了,就执行一下openstack指令,随便试试看,看看都出现些什么:

 [stack@ip---- devstack]$ openstack
(openstack) ll
openstack: 'll' is not an openstack command. See 'openstack --help'.
Did you mean one of these?
help
ip fixed add
ip fixed remove
ip floating add
ip floating create
ip floating delete
ip floating list
ip floating pool list
ip floating remove
role add
role create
role delete
role list
role remove
role show
(openstack)

是不是有命令行的功能了,其实还是比较简单的,友好的Usage信息。

下面还要说下,openstack的命令行工作,很多命令都需要设置很多参数,主要是openstack的不同的project之间相互通信,以及不同的用户的权限不同,API大多都涉及到权限认证等过程。为了使用的方便,需要将这些参数设置为环境变量,也是官方建议的做法。若不做这个,每次输入命令的时候带上参数其实也可以,只是比较麻烦:

 [root@ip---- opt]# openstack project list
Missing parameter(s):
Set a username with --os-username, OS_USERNAME, or auth.username
Set an authentication URL, with --os-auth-url, OS_AUTH_URL or auth.auth_url
Set a scope, such as a project or domain, set a project scope with --os-project-name, OS_PROJECT_NAME or auth.project_name, set a domain scope with --os-domain-name, OS_DOMAIN_NAME or auth.domain_name

由于我有自己的devstack环境,所以,我直接登录到horizon的web界面,在project>compute>access&security下面的API access表下面,可以下载OpenStack RC file,下载后,将其source一下,就是实现变量export到当前termianl的环境变量列表中去,使用command 的时候,就可以不需要输入一些常规的参数了。

 [root@ip---- opt]# echo $OS_USERNAME          #执行source命令之前,OS_USERNAME是没有环境变量值的。

[root@ip---- opt]# source admin-openrc.sh        #执行source命令后,需要输入用户名对应的密码,这里是admin的用户
Please enter your OpenStack Password:
[root@ip---- opt]# echo $OS_USERNAME          #再查看,是不是有值了,admin就在环境变量里面了
admin
[root@ip---- opt]#
[root@ip---- opt]# openstack project list       #再执行这个命令,是不是可以查看信息了,没有提示missing parameter(s)了吧。。
+----------------------------------+--------------------+
| ID | Name |
+----------------------------------+--------------------+
| 084a681f7fb44883b2ea6a4d17685156 | demo |
| 1710e04fb87b4dfe8fe2eb3f7e2bee2d | admin |
| 49af56f946a34e73a2289a3c3cf135c0 | alt_demo |
| 52ea2756ed024ecfb79dbb6e81cbe367 | invisible_to_admin |
| e3600e0af95346f5996359e3dea3ef36 | service |
+----------------------------------+--------------------+

最后,列举一下,可能的client包,以及对应的功能描述:

OpenStack services and clients

Service Client Package Description
Application catalog murano python-muranoclient Creates and manages applications.
Block Storage cinder python-cinderclient Creates and manages volumes.
Clustering service senlin python-senlinclient Creates and manages clustering services.
Compute nova python-novaclient Creates and manages images, instances, and flavors.
Containers service magnum python-magnumclient Creates and manages containers.
Database service trove python-troveclient Creates and manages databases.
Data processing sahara python-saharaclient Creates and manages Hadoop clusters on OpenStack.
Deployment service tuskar python-tuskarclient Plans Deployments.
Identity keystone python-keystoneclient Creates and manages users, tenants, roles, endpoints, and credentials.
Image service glance python-glanceclient Creates and manages images.
Key Manager service barbican python-barbicanclient Creates and manages keys.
Monitoring monasca python-monascaclient Monitoring solution.
Networking neutron python-neutronclient Configures networks for guest servers.
Object Storage swift python-swiftclient Gathers statistics, lists items, updates metadata, and uploads, downloads, and deletes files stored by the Object Storage service. Gains access to an Object Storage installation for ad hoc processing.
Orchestration heat python-heatclient Launches stacks from templates, views details of running stacks including events and resources, and updates and deletes stacks.
Rating service cloudkitty python-cloudkittyclient Rating service.
Shared file systems manila python-manilaclient Creates and manages shared file systems.
Telemetry ceilometer python-ceilometerclient Creates and collects measurements across OpenStack.
Telemetry v3 gnocchi python-gnocchiclient Creates and collects measurements across OpenStack.
Workflow service mistral python-mistralclient Workflow service for OpenStack cloud.
Common client openstack python-openstackclient Common client for the OpenStack project.

openstack命令行的更多相关文章

  1. openstack 命令行管理 - 目录

    原文http://blog.csdn.net/signmem/article/details/19513775 相关 openstack  命令行管理, 分下面部分进行介绍 openstack 命令行 ...

  2. OpenStack 命令行速查表

    OpenStack 命令行速查表   updated: 2017-07-18 08:53 Contents 认证 (keystone) 镜像(glance) 计算 (nova) 实例的暂停.挂起.停止 ...

  3. OpenStack命令行工具与API

    Openstack命令行工具 我们推荐Openstack命令行工具和Openstack的Dashboard两者结合使用.一些用户由于使用过其他云技术背景的,可能会使用EC2兼容的API,相对于我们需要 ...

  4. Openstack命令行创建不同vlan段虚拟机

    默认使用nova-network的vlan模式,但是在使用默认的dashboard的时候,不能指定创建的虚拟机的使用网段,固定IP地址. 实际上该功能是在存在的,只是openstack的dashbbo ...

  5. Openstack命令行删除虚拟机硬件模板flavor

    openstack中,有一种概念叫flavor,其实flavor就是一种创建虚拟机的硬件尺寸模板化.比如我先创建一个flavor,该flavor包含的CPU数目,内存大小,硬盘大小都预先设置好,在创建 ...

  6. openstack操作之一 命令行

    在openstack环境中提供了多种操作虚拟机的方法,有最简单直接的dashborad界面,有不直观但高效的命令行,还有进阶版的postman调用openstack restfulapi和命令行中使用 ...

  7. rabbitmq常用命令行汇总

    最近处理openstack问题时,碰到了rabbitmq相关的问题,使用相关命令行时,经常去现找相关的帖子,感觉很麻烦,记录下自己定位问题时,用到的一些常用命令行,方便以后问题的查找 1)常用的一些查 ...

  8. OpenStack-keystone命令行

    Keystone简介 Keystone(OpenStack Identity Service)是OpenStack框架中,负责身份验证.服务规则和服务令牌的功能, 它实现了OpenStack的Iden ...

  9. 人性化的HTTP命令行工具——HTTPie

    Httpie 是什么 Httpie (aych-tee-tee-pie)是一个 HTTP 的命令行客户端.其目标是让 CLI 和 web 服务之间的交互尽可能的人性化.你可以用它很方便的用 http ...

随机推荐

  1. Java测试工具

    1.   开源测试工具: http://www.open-open.com/43.htm 2.   10款常用的JAVA测试工具 :http://developer.51cto.com/art/200 ...

  2. nohup启动命令(转)

    简单而有用的nohup命令在UNIX/LINUX中,普通进程用&符号放到后台运行,如果启动该程序的控制台logout,则该进程随即终止. 要实现守护进程,一种方法是按守护进程的规则去编程(本站 ...

  3. mysql 操作突然断网,MySQL: “lock wait timeout exceeded”

    show processlist;//显示所有进程select * from information_schema.innodb_trx;//查询锁的进程-- kill 310;//杀掉锁进程

  4. ZOJ 1095 Humble Numbers

    原题链接 题目大意:定义了一种数字Humble Number,他们的质因数只包含2.3.5.7中的一个或者几个,求第n个这样的数,1<=n<=5842. 解法:一看到这道题又在想DFS了, ...

  5. 在VS2010下配置OpenCV 2.3

    一.下载OpenCV 2.3:       http://www.opencv.org.cn/download/OpenCV-2.3.0-win-superpack.exe   二.解压 将下载的Op ...

  6. jQuery获取页面及个元素高度、宽度【转】

    获取浏览器显示区域(可视区域)的高度 :    $(window).height();    获取浏览器显示区域(可视区域)的宽度 : $(window).width();    获取页面的文档高度 ...

  7. Codeforces Round #120 (Div. 2)

    A. Vasya and the Bus 根据\(n,m\)是否为0分类讨论下. B. Surrounded 判断两圆是否有交点,否则构造的圆与两圆相切. C. STL 看代码比较清楚. void t ...

  8. Json数据,转换规则,

    JSON数据转换,规则是遇见json 中的{},则是数组[],遇见name:value,则是'key'=>'value', 但是不带键值的数组如['xxxxxx'],json_encode后仍然 ...

  9. 【NOIP2007】矩阵取数

    因为傻逼写错高精度搞了一下午浪费好多时间,好想哭qaq 原题: 帅帅经常更同学玩一个矩阵取数游戏:对于一个给定的n*m的矩阵,矩阵中的每个元素aij据为非负整数.游戏规则如下: 1. 每次取数时须从每 ...

  10. Intel MKL函数,如何得到相同的计算结果?【转】

    在运行程序时,我们总希望多次运行的结果,是完全一致,甚至在不同的机器与不同的OS中,程序运行的结果每一位都完全相同. 事实上,程序往往很难保证做到这一点. 为什么呢? 我们先看一个简单的例子: 当程序 ...