(弃) Keystone CLI_可选命令详解
本文详细介绍keystone客户端命令行界面(CLI)keystone的可选子命令。关于keystone客户端命令行工具keystone命令的子命令和选项列表,请参考前文《解读keystone命令行工具(1)选项与子命令概况》。
下文中,方括号“[ ]”内的内容是可选的,尖括号“< >”内的内容是必需的,方括号内部的尖括号代表当可选内容出现时,“< >”内的内容必须出现。
下文直接使用keystone CLI命令,默认认为用户已经配置好每次会话的环境变量,因此使用相关命令不需要设置身份验证参数。关于keystone命令的参数介绍和环境变量配置,请参考前文《解读keystone命令行工具(1)选项与子命令概况》。
本文中的命令可以通过
keystone help <command>
查看官方说明
本文介绍的命令包括:
keystone bootstrap command
keystone catalog command
keystone discover command
keystone ec2-credentials-create command
keystone ec2-credentials-delete command
keystone ec2-credentials-get command
keystone ec2-credentials-list command
keystone endpoint-create command
keystone endpoint-delete command
keystone endpoint-get command
keystone endpoint-list command
keystone password-update command
keystone role-create command
keystone role-delete command
keystone role-get command
keystone role-list command
keystone service-create command
keystone service-delete command
keystone service-get command
keystone service-list command
keystone tenant-create command
keystone tenant-delete command
keystone tenant-get command
keystone tenant-list command
keystone tenant-update command
keystone token-get command
keystone user-create command
keystone user-delete command
keystone user-get command
keystone user-list command
keystone user-password-update command
keystone user-role-add command
keystone user-role-list command
keystone user-role-remove command
keystone user-update command
归纳起来包括以下几个方面:
1.bootstrap, catalog, discover,
2.修改当前用户密码,获取当前用户token
3.ec2证书的列表、查看、添加和删除
4.终端的列表、查看、添加和删除
5.角色的列表、查看、添加和删除
6.服务的列表、查看、添加和删除
7.租户的列表、查看、添加、删除和更新
8.用户的列表、查看、添加、删除、更新和更改密码
9.用户与角色:用户添加、删除角色和列表用户所有角色
bootstrap指令
bootstrap “引导”指令集中地完成从用户、角色、项目(租户)创建到建立角色和用户以及角色和项目之间映射关系整个过程。
用法
keystone bootstrap [--user-name <user-name>] --pass <password> [--role-name <role-name>] [--tenant-name <tenant-name>]
参数介绍
--user-name 后接要创建的用户名,默认“admin”
--pass 后接要创建用户的密码
--role-name 新建并与本指令中创建的用户进行绑定的角色名称,默认“admin”
--tenant-name 新建一个包含本指令中新建用户的项目,默认"admin"
catalog指令
列出服务目录,可能会被服务过滤。
用法
keystone catalog [--service <service-type>]
参数介绍
--service 希望返回的服务类型,可选值:volume(cinder), ec2(ec2), image(glance), orchestration(heat), cloudformation(heat-cfn), identity(keystone), network(neutron), compute(nova), object-store(swift)等。
返回值介绍
查看特定类型的服务时,本指令一次只能查看一个服务,当服务目录中存在目标类型的服务时,将会返回目标服务的adminURL, id, internalURL, publicURL以及所属region。
discover指令
给出keystone服务器、支持的API版本以及扩展等信息。
用法
keystone discover
参数介绍
无参数
返回值介绍
返回keystone服务器的地址,同时返回该服务器支持的API版本,以及已经安装的一些扩展API。
ec2-credentials-create
创建EC-2兼容的身份证明(credential)
用法
keystone ec2-credentials-create [--user-id <user-id>]
[--tenant-id <tenant-id>]
参数介绍
--user-id <user-id> 创建身份证明的用户ID,如果未指定,则默认为当前完成验证的用户
--tenant-id <tenant-id> 创建身份证明的项目ID,如果未指定,则默认为当前完成验证的项目
ec2-credentials-delete
删除EC-2兼容的credential
用法
keystone ec2-credentials-delete [--user-id <user-id>] --access <access-key>
参数介绍
--user-id <user-id> 用户ID
--access <access-key> 访问key
ec2-credentials-get
显示EC-2兼容的credential
用法
keystone ec2-credentials-get [--user-id <user-id>] --access <access-key>
参数介绍
--user-id <user-id> 用户ID
--access <access-key> 访问key
ec2-credentials-list
显示一个用户所有的EC-2兼容身份证明
用法
keystone ec2-credentials-list [--user-id <user-id>]
参数说明
--user-id <user-id> 用户ID
endpoint-create指令
创建一个与服务相关联的终端。
用法
keystone endpoint-create [--region <endpoint-region>]
--service <service>
--publicurl <public-url>
[--adminurl <admin-url>]
[--internalurl <internal-url>]
参数介绍
--region <endpoint-region> 终端所属的region
--service <service>, --service-id
<service>, --service_id <service> 与该终端关联的服务名称或ID
--publicurl <public-url> 终端的公共URL
--adminurl <admin-url> 终端的管理URL
--internalurl <internal-url> 终端的内部URL
endpoint-delete指令
删除一个服务终端
用法
keystone endpoint-delete <endpoint-id>
参数介绍
<endpoint-id> 要删除的终端ID
endpoint-get指令
通过特定的服务类型或属性搜索终端
用法
keystone endpoint-get --service <service-type>
[--endpoint-type <endpoint-type>]
[--attr <service-attribute>]
[--value <value>]
参数介绍
--service <service-type> 要查看的服务类型
--endpoint-type <endpoint-type> 要查看的终端类型
--attr <service-attribute> 要查看的服务匹配的属性
--value <value> 要匹配的值
endpoint-list指令
列出所有已配置的服务终端
用法
keystone endpoint-lis
参数介绍
无参数
password-update指令
更新当前用户的密码
用法
keystone password-update
[--current-password <current-password>]
[--new-password <new-password>]
参数介绍
--current-password <current-password> 当前密码,对应于--os-password中设置的或者环境变量OS_PASSWORD
--new-password <new-password> 新密码
role-create指令
新建角色
用法
keystone role-create --name <role-name>
参数介绍
--name <role-name> 新建角色的名称
role-delete指令
删除角色
用法
keystone role-delete <role>
参数介绍
<role> 删除角色的名称或ID
role-get指令
查看角色详细信息
用法
keystone role-get <role>
参数介绍
<role> 目标角色的名称或ID
role-list指令
列出所有角色
用法
keystone role-list
参数介绍
无参数
service-create指令
向服务目录中添加服务
用法
keystone service-create --name <name>
--type <type>
[--description <service-description>]
参数介绍
--name <name> 新服务的名称
--type <type> 新服务的类型
--description <service-description> 对新服务的描述
service-delete指令
删除一个服务
用法
keystone service-delete <service>
参数介绍
<service> 删除目标的名称或ID
service-get指令
显示指令服务细节
用法
keystone service-get <service>
参数介绍
<service> 查看目标的名称或ID
service-list指令
列出当前服务目录中所有的服务
用法
keystone service-list
参数介绍
无参数
tenant-create指令
新建项目
用法
keystone tenant-create --name <tenant-name>
[--description <tenant-description>]
[--enabled <true|false>]
参数介绍
--name <tenant-name> 新建项目的名称
--description <tenant-description> 新建项目的描述
--enabled <true|false> 该新建项目的启用状态
tenant-delete指令
删除项目
用法
keystone tenant-delete <tenant>
参数说明
<tenant> 删除目标的名称或ID
tenant-get指令
查看项目细节
用法
keystone tenant-get <tenant>
参数说明
<tenant> 删除目标的名称或ID
tenant-list指令
列出所有项目
用法
keystone tenant-list
参数介绍
无参数
tenant-update指令
更新项目的名称,描述和启用状态
用法
keystone tenant-update [--name <tenant_name>]
[--description <tenant-description>]
[--enabled <true|false>]
<tenant>
参数介绍
--name <tenant_name> 新的项目名称
--description <tenant-description> 新的项目描述
--enabled <true|false> 启用状态
<tenant> 要跟新的项目名称或ID
token-get指令
显示当前用户的token
用法
keystone token-get [--wrap <integer>]
参数介绍
--wrap <integer> 将PKI令牌打包成某一特定长度,置0时禁用。
user-create指令
新建用户
用法
keystone user-create --name <user-name>
[--tenant <tenant>]
[--pass [<pass>]]
[--email <email>]
[--enabled <true|false>]
参数介绍
--name <user-name> 新建用户名
--tenant <tenant>, --tenant-id 用户所属项目
<tenant>
--pass [<pass>] 新建用户密码
--email <email> 用户邮箱
--enabled <true|false> 该账户的启用状态
user-delete指令
删除用户
用法
keystone user-delete <user>
参数介绍
<user> 删除目标的名称或ID
user-get指令
显示用户细节
用法
keystone user-get <user>
参数介绍
<user> 查看目标的名称或ID
user-list指令
列出所有用户
用法
keystone user-list [--tenant <tenant>]
参数介绍
--tenant <tenant>, --tenant-id
<tenant> 列出该指定项目中的用户,不指定的话将会列出全部用户
user-password-update指令
更新任一用户的密码
用法
keystone user-password-update [--pass <password>] <user>
参数说明
--pass <password> 新的密码
<user> 要更新密码的用户名或ID
user-role-add指令
向一个用户添加一个角色
用法
keystone user-role-add --user <user>
--role <role>
[--tenant <tenant>]
参数说明
--user <user>, --user-id <user>, -- 用户名或ID
user_id <user>
--role <role>, --role-id <role>, -- 角色名或ID
role_id <role>
--tenant <tenant>, --tenant-id 租户名或ID
<tenant>
所有的domain之间的role是不能重名的,因此在一个domain之内role也是不能重名的。同一个用户可以属于多个项目,同一个项目也能够包括多个用户,同时,一个用户在不同的项目中使用相同的角色是允许的,比如(userA, tenantA, roleA) 和( userA, tenantA, roleB)都是合法的。当然,在同一个项目中拥有多个角色或在不同的项目中拥有不同的角色必然也是合法的。
user-role-list指令
显示一个用户已经获得的所有角色
用法
keystone user-role-list [--user <user>]
[--tenant <tenant>]
参数介绍
--user <user>, --user-id <user> 指定用户名或ID
--tenant <tenant>, --tenant-id 只显示特定项目下指定用户拥有的角色
<tenant>
当使用该命令时的参数"--tenant"接的是用户所在的项目时(如项目A),返回用户的所有角色,包括用户在其他项目中获得的角色;当"--tenant"所接的参数不是用户所在的默认项目时(如项目B),只会列出用户在这个项目B中的角色。
user-role-remove指令
移除某个用户的某个角色
用法
keystone user-role-remove --user <user>
--role <role>
[--tenant <tenant>]
参数介绍
--user <user>, --user-id <user>, --
user_id <user> 删除角色的目标用户
--role <role>, --role-id <role>, --
role_id <role> 删除的角色
--tenant <tenant>, --tenant-id
<tenant> 用户所属的项目
user-update指令
更新用户的名称,邮箱和启用状态
用法
keystone user-update [--name <user-name>]
[--email <email>]
[--enabled <true|false>]
<user>
参数介绍
--name <user-name> 更新后的用户名
--email <email> 更新后的邮箱
--enabled <true|false> 更新后的启用状态
<user> 更新的目标用户名或ID
(弃) Keystone CLI_可选命令详解的更多相关文章
- Cypress系列(101)- intercept() 命令详解
如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html 作用 使用该命令在网络层管理 HTTP ...
- linux yum命令详解
yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...
- linux awk命令详解
linux awk命令详解 简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分 ...
- DOS命令详解
DOS命令详解 命令 \? 可以进入命令帮助 1.md命令创建目录. MKDIR [drive:]pathMD [drive:]path 如果命令扩展被启用,MKDIR 会如下改变: 如果需要,MKD ...
- scp命令详解
\ svn 删除所有的 .svn文件 find . -name .svn -type d -exec rm -fr {} \; linux之cp/scp命令+scp命令详解 名称:cp 使用权限: ...
- linux yum命令详解-转
yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...
- 【转】linux yum命令详解
yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...
- Linux下的压缩zip,解压缩unzip命令详解及实例
实例:压缩服务器上当前目录的内容为xxx.zip文件 zip -r xxx.zip ./* 解压zip文件到当前目录 unzip filename.zip ====================== ...
- tar 解压缩命令详解
今天对目录及其文件进行压缩:/usr/local/test# tar -cvf /usr/local/auto_bak/test.tar /usr/local/test 仅打包,不压缩 # tar - ...
随机推荐
- sql乘法函数实现方式
sql中有很多聚合函数,例如 COUNT.SUM.MIN 和 MAX. 但是唯独没有乘法函数,而很多朋友开发中缺需要用到这种函数,今天告诉大家一个不错的解决方案 logx+logy=logx*y 这是 ...
- DLL中获取主程序句柄
一.问题由来及说明 在实际编程中遇到一些系统模块(或API)调用初始化需要窗口句柄,在主程序中(MFC或者win32)都可以很容易获得,比如mfc中可以直接调用AfxGetMainWnd().GetS ...
- Machine Learning、Date Mining、IR&NLP 会议期刊论文推荐
核心期刊排名查询 http://portal.core.edu.au/conf-ranks/ http://portal.core.edu.au/jnl-ranks/ 1.机器学习推荐会议 ICML— ...
- kali kvm Requested operation is not valid: network 'default' is not active
安装时候参考的:http://www.ilanni.com/?p=6101 今天安装完kvm,满是幸福的装了个xp,重启后出现了一个错误 Requested operation is not vali ...
- css按钮固定
- 4. 支持向量机(SVM)原理
1. 感知机原理(Perceptron) 2. 感知机(Perceptron)基本形式和对偶形式实现 3. 支持向量机(SVM)拉格朗日对偶性(KKT) 4. 支持向量机(SVM)原理 5. 支持向量 ...
- Android,我待你入初恋啊,你就别坑我了!
最近做了好多东西,东忙忙,西茫茫,ms最后都空欢喜一场. 1.小黄图,说是小黄图,其实只是网上爬下来的写真阿自拍阿什么的,绝对没有反党反共淫秽内容.后来的后来,admob被google停用了,不开心. ...
- [emacs] org-mode的一些小技巧
Table of Contents 1 快速输入 #+BEGIN_SRC … #+END_SRC 2 代码按语法高亮 3 导出成HTML时的一些问题和技巧 3.1 生成目录表 3.2 为每个分节的标题 ...
- 【MarkdownPad】不能输入表格Table
使用MarkdownPad时,需要制作一个表格.搜到参照这篇文章,发现还是无法显示表格,测试效果是如下这样的: Markdown文本: 显示效果: 谷歌一下,原来是MarkdownPad默认的处理器不 ...
- gulp实例
前端生产环境的简单部署http://ionichina.com/topic/558a1c1346cb5ff7268cee9d var gulp = require('gulp'); // 引入gulp ...