安装和配置OpenStack客户端(Jesse翻译)原文来自icehouse的OpenStack文档
回忆:在前面部分,你已经使用了keystone客户端。
你必须安装客户端工具去完成剩余的安装工作
概述
你可以使用OpenStack命令行去运行简单的命令(完成API调用)。你可以从命令行中运行这些命令或者在脚本中自动化的去执行任务。如果你可以提供OpenStack凭证,你可以运行在任何计算机上这些命令。
本质上,每个客户端命令运行cURL命令嵌入了API请求。OpenStackAPIs是RESTful API(使用http协议,包括方法,URIs,媒体类型,响应代码)。
这些开源的Python客户端运行在Linux或者Mac OS x系统,易学易用。每一个OpenStack服务有它自己的命令行客户端。针对部分客户端命令,你可以使用debug参数去显示API请求。
这是熟悉OpenStackAPI调用的比较好的途径。
服务 |
客户端 |
包 |
描述 |
Block storage |
Cinder |
Python-cinderclient |
创建和管理卷 |
Compute |
Nova |
Python-novaclient |
创建和管理image,实例,flavors |
Database service |
Trove |
Python-troveclient |
创建和管理数据库 |
Identity |
keystone |
Python-keystoneclient |
创建和管理用户,tenants,角色,接口和凭证 |
Image service |
Glance |
Python-glanceclient |
创建和管理image |
Networking |
Neutron |
Python-swiftclient |
配置网络。这个客户端先前叫quantum |
Object storage |
swift |
Python-heatclient |
收集统计,列举项目,更新元数据和上传下载,删除存储在对象存储服务中的文件。授权访问一个对象存储 |
telemetry |
ceilometer |
Python-ceilometerclient |
创建和收集度量值 |
一个OpenStack common客户端处于开发中。
安装OpenStack命令行客户端
安装先决条件软件
下表中列出了你运行命令行客户端的软件,提供安装指令。
安装客户端
当按照本章节的指令时,用客户端的小写的名字代替PROJECT去安装客户端,例如nova。替代每一个客户端。下列值是有效的:
• ceilometer- Telemetry API
• cinder- Block Storage API and extensions
• glance- Image Service API
• heat- Orchestration API
• keystone- Identity service API and extensions
• neutron- Networking API
• nova- Compute API and extensions
• swift- Object Storage API
• trove- Database Service API
下列例子显示用pip安装nova客户端的命令
#pip install python-novaclient
用pip安装
使用pip在Linux,MacOS X,或者windows系统上安装OpenStack客户端。它易用且确保你从python package index上获取最后版本的客户端。同样,pip使你能够更新或删除一个包。
通过使用以下命令安装每个客户端。
MacOS或者Linux
#pipinstall python-PROJECTclient
Windows
Pipinstall python-PROJECTclient
使用OpenStack RC文件设置环境变量
为OpenStack命令行客户端设置必需的环境变量,你必须创建一个环境文件(OpenStack rc文件或者openrc.sh)。这个工程特定的环境文件包含所有的OpenStack服务使用的凭证。
当你source这个文件时,环境变量被设置到你当前的shell中。变量确保OpenStack客户端命令与云中的其他的OpenStack服务进行通信。
创建和source OpenStack RC文件
文本编辑器中,创建一个文件名PROJECT-openrc.sh文件和添加以下认证信息:
下例子中显示了一个project(叫admin)的信息,OS用户名也叫admin,识别主机位于controller上。
exportOS_USERNAME=admin
exportOS_PASSWORD=ADMIN_PASS
exportOS_TENANT_NAME=admin
exportOS_AUTH_URL=http://controller:35357/v2.0
你想运行OpenStack命令,source PROJECT-openrc.sh文件。在这个例子中,你sourceadmin-openrc.sh文件(为admin工程)
$source admin-openrc.sh
覆盖环境变量值
当你运行OpenStack客户端命令时,你可以通过使用所列的选项覆盖一些环境变量。例如你可以覆盖OS_PASSWORD设置(在PROJECT-openrc.sh),通过指定一个password
$keystone –os-password PASSWORD service-list
创建openrc.sh文件
创建下面PROJECT-openrc.sh文件
Admin-openrc.sh----管理员用户
Demo-oepnrc.sh----普通用户:
exportOS_USERNAME=demo
export OS_PASSWORD=DEMO_PASS
export OS_TENANT_NAME=demo
export OS_AUTH_URL=http://controller:35357/v2.0