通过命令行管理openstack云平台
为什么要使用命令行操作openstack
OpenStack的一些功能仅限于通过命令行界面来执行;相比于图形用户界面(GUI),通过命令行界面获取结果更为迅速;具有较高的操作效率;例如创建镜像这样的耗时操作更适合采用命令行方式进行处理;此外,在脚本中可以利用这些命令进行批量处理操作以进一步提升工作效率。
常见的管理由创建、增加、删除等。
由于openstack有两个用户:云用户demo和云系统管理员admin
这里我们以admin用户来进行一系列操作
一.创建实例
1.这里加载云管理员执行脚本
source keystonerc_admin
2.列出所有可用镜像
openstack image list

3.列出实例类型
openstack flavor list

4.创建实例
openstack server create --image cirros --flavor 1 --key-name demo-key Cirros_VM1
二.创建项目
命令语法格式:
创建好了查看项目:
openstack project list

三.创建用户
语法格式:
openstack user create --project 项目 --password=密码 用户名
创建service用户:
openstack user create --project service --password=service service
四.创建角色
创建user角色:
openstack role create user
生成该user角色:
openstack role create user
浏览已创建的角色列表:
openstack role list
将该user角色添加至项目中的服务用户中:
openstack role add --project service --user service user
查看所有角色分配:
openstack role assignment list --name

筛选出系统管理员所有角色分配:
opentack role assignment --names --system all

查看user角色的分配情况:
opentack role assignment list --name --role user

查看当前服务列表:
opentack catalog list

命令行的其他使用方法:
(1)项目管理
查看项目的详细信息:
opentack project show 项目名称或者ID
修改项目名称:
opentack project set 项目名称或者ID --name 新项目名称
临时禁用项目:
opentack project set 项目名称或者ID --disable
激活已经禁用项目
opentack project set 项目名称或者ID --enable
删除项目:
opentack projectdelete 项目名称或者ID
(2)用户管理
修改用户:
openstack user set 用户名或ID --name 新用户名 --email 邮件地址
临时禁用用户:
openstack user set 用户名或ID --disable
激活已禁用用户:
openstack user set 用户名或ID --enable
删除用户:
openstack user delete 用户名或ID
(3)角色管理
创建角色:
openstack role create 角色名或ID
查看角色详细信息:
opensatck role show 角色名或ID
将用户指派给项目:
openstack role add --user 用户名或ID --project 项目名或ID 角色名或ID
查看某项目某用户的角色分配情况:
openstack role assignment list --user 角色名 --project 项目名 --names
删除分配给“用户-项目”的角色:
openstack roledelete --user账号名或标识码 --project 账号名或标识码 角色名或者标识码
