Nova管理

查看openstack版本:nova-manage version
查看节点:nova service-list
查看虚拟机列表:nova list
查看计算节点:nova hypervisor-list
查看计算节点虚拟机:nova hypervisor-servers 节点名称
查看镜像列表:nova image-list
查看密钥对列表: nova keypair-list
查看浮动IP列表:nova floating-ip-list
查看安全组列表:nova secgroup-list
查看安全组规则列表:nova secgroup-list-rules 安全组名称
查看虚拟机详情:nova show 虚拟机名或ID
挂起/恢复/启动/关闭/删除虚拟机:nova suspend/resume/srart/stop/delete 虚拟机名或ID
(硬)重启虚拟机:nova reboot (--hard) 虚拟机名或ID
救援模式:nova rescue 虚拟机ID 重启虚拟机由救援模式进入正常模式:nova unrescue 虚拟机ID
使用指定镜像进入救援模式:nova rescue --rescue_image_ref 镜像ID 虚拟机ID 在线迁移:nova live-migration 虚拟机ID 节点名
创建密钥:

nova keypair-add oskey > oskey.priv                  
chmod 600 oskey.priv

创建/删除浮动ip池:nova floating-ip-bulk-create /delete 192.168.0.200/29
创建浮动IP:nova floating-ip-create
删除浮动IP:nova floating-ip-delete xxx.xxx.xxx.xxx
绑定/解绑浮动:ipnova floating-ip-associate 虚拟机ID xxx.xxx.xxx.xxx
新建虚拟机:nova boot --image 镜像ID --flavor m1.medium --key_name abc --availability_zone nova:compute1.cloud.internal 虚拟机名称
通过块设备新建虚拟机:

cinder create --image-id 镜像ID --name 卷名称 SIZE_IN_GB             
nova boot --falvor FLAVOR_ID source=volume,id=卷ID,dest=volume,shutdown=preserve,bootindex=0 虚拟机名称  

添加/删除浮动IP:nova add/remove-floating-ip 虚拟机ID xxx.xxx.xxx.xxx
挂载云硬盘:nova volume-attach 虚拟机ID VOLNAME /dev/sdb
卸载云硬盘:nova volume-detach 虚拟机ID VOLNAME
创建快照:nova image-create 虚拟机ID "snapshot 1"
调整虚拟机资源:nova resize 虚拟机名称 FLAVOR_ID --poll
确认调整虚拟机资源:nova resize-confirm 虚拟机ID
如果资源调整失败则回滚:nova resize-revert 虚拟机ID
数据库同步:nova-manage db sync
查看错误日志:nova-manage logs errors

Neutron管理

列出当前租户所有的网络:neutron net-list
列出所有租户的所有网络(需要管理员权限):neutron net-list --all-tenants
创建一个网络(vlan/flat):neutron net-create public --shared --provider:network_type vlan --provider:physical_network physnet1
查看一个网络的详细信息:neutron net-show NET_ID
删除一个网络:neutron net-delete NET_ID
创建一个子网:neutron subnet-create public 192.168.1.0/24 --name NAME --allocation-pool start =192.168.1.100,end=192.168.1.200 --gateway 192.168.1.254 --dns_nameserver 8.8.8.8
列出所有的agent:neutron agent-list
创建端口:neutron port-create public (--fixed-ip ip_address=10.0.0.1)
查看端口列表:neutron port-list

用户管理

查看所有租户:openstack project list
创建租户:openstack project create --description 'Admin Project' 租户名 删除租户:openstack project delete 项目ID
禁用/启用租户:openstack project set 项目ID --disable/enable
更新租户名称:openstack project set 项目ID --name project-new
查看租户信息:openstack project show 项目ID
查看所有用户:openstack user list
创建用户:openstack user create --domain 域名 --project 项目名 --password 密码 用户名 删除用户:openstack user delete 用户名
禁用/启用用户:openstack user set 用户名 --disable/enable
更新用户名称:openstack user set 用户名 --name user-new
查看所有角色:openstack role list
创建角色:openstack role create 角色名
分配角色:openstack role add --user 用户名 --project 项目名或ID 角色名
删除角色:openstack role remove --user 用户名 --project 项目名或ID 角色名

Glance管理

列出全部镜像:glance image-list
查看image具体信息:glance show ID
上传镜像1:glance image-create --visibility public --container-format docker/bare --disk-format raw/qcow2 --name xxx --file /root/xxx --progress
上传镜像2:glance image-create --name "CentOS7.0" --disk-format qcow2 --container-format bare --progress </opt/images/centos_7-x86_64_xiandian.qcow2

Cinder管理

显示存储卷列表:cinder list
显示存储卷类型列表:cinder type-list
列表展示:zonecinder availability-zone-list
创建存储卷:cinder create --display-name VOLNAME SIZE(SIZE的单位为GB)
创建基于镜像的块设备:cinder create --name test --image-id IMAGE_ID SIZE_IN_GB
在NovaZone中创建基于CirrOS的卷设备:cinder create SIZE_IN_GB --display-name boot_volume_cirros --image-id IMAGE_ID --availability-zone nova
分配卷设备:nova volume-attach VM_ID 卷ID /dev/vdb
分离卷设备:nova volume-detach VM_ID 卷ID
重置卷状态:cinder reset-state id --state available
重置卷设备大小:cinder extend 卷ID SIZE_IN_GB
删除存储卷:

cinder delete VOLNAME-OR-ID
cinder force-delete VOLNAME-OR-ID(强制删除)

重命名存储卷:cinder rename VOLNAME-OR-ID NEW-VOLNAME
显示存储卷信息:cinder show VOLNAME-OR-ID
存储卷元数据:

cinder metadata VOLNAME-OR-ID set KEY=VALUE
cinder metadata VOLNAME-OR-ID unset KEY

创建存储卷备份:cinder backup-create --display-name BACKUP-VOLNAME VOLNAME-OR-ID
删除存储卷备份:cinder backup-delete VOLNAME-OR-ID
显示存储卷备份信息:cinder backup-show VOLNAME-OR-ID
显示存储卷备份列表:cinder backup-list
创建存储卷快照:cinder snapshot-create --display-name SNAPSHOT-VOLNAME VOLNAME-OR-ID
删除存储卷快照:cinder snapshot-delete VOLNAME-OR-ID
重命名存储卷快照:cinder snapshot-rename VOLNAME-OR-ID NEW-VOLNAME
显示存储卷快照信息:cinder snapshot-show VOLNAME-OR-ID
显示存储卷快照列表:cinder snapshot-list
上传存储卷作为镜像:cinder upload-to-image VOLNAME-OR-ID IMAGE-NAME-OR-ID

Flavor(类型模板)管理

查看所有flavor:nova flavor list
创建flavor:nova flavor-create --is-public true 模板名称 模板ID 内存(MB) 磁盘(GB) VCPUS
建议FLAVOR_ID为auto,ROOT_DISK_IN_GB为0
删除flavor:nova flavor-delete 模板ID

Heat管理

创建一个栈 :heat stack-create [-f <FILE>] [-e <FILE or URL>] [-u <URL>] [-o <URL>] [-c <TIMEOUT>] [-t <TIMEOUT>] [-r] [-P <KEY1=VALUE1;KEY2=VALUE2...>] <STACK_NAME>

删除一个栈:heat stack-delete <NAME or ID> [<NAME or ID> ...]

重启或恢复栈:heat action-resume <NAME or ID>

挂起栈:heat action-suspend <NAME or ID>

获取建栈的信息:heat build-info

stack的事件列表:heat event-list [-r <RESOURCE>] <NAME or ID>

描述stack的事件:heat event-show <NAME or ID> <RESOURCE> <EVENT>

显示可用的输出:usage: heat output-list <NAME or ID>

显示可用输出的值 :heat output-show <NAME or ID> <OUTPUT NAME>

显示某个stack资源的列表:heat resource-list <NAME or ID>

列出元数据资源:usage: heat resource-metadata <NAME or ID> <RESOURCE>

描述资源(例如一个wordperss的资源信息):heat resource-show <NAME or ID> <RESOURCE>

给资源发送信号:heat resource-signal [-D <DATA>] [-f <FILE>] <NAME or ID> <RESOURCE>

基于资源产生一个模板:heat resource-template [-F <FORMAT>] <RESOURCE>

列出可用的资源类型:heat resource-type-list

显示资源类型:heat resource-type-show <RESOURCE_TYPE>

放弃栈:heat stack-abandon <NAME or ID>

使用栈:heat stack-adopt [-f <FILE>] [-e <FILE or URL>] [-u <URL>] [-o <URL>] [-c <TIMEOUT>] [-t <TIMEOUT>] [-a <FILE or URL>] [-r] [-P <KEY1=VALUE1;KEY2=VALUE2...>] <STACK_NAME>

描述栈:heat stack-show <NAME or ID>

列出用户所有的栈:heat stack-list [-s] [-f <KEY1=VALUE1;KEY2=VALUE2...>] [-l <LIMIT>] [-m <ID>] [-g]

预览栈:heat stack-preview [-f <FILE>] [-e <FILE or URL>] [-u <URL>] [-o <URL>] [-P <KEY1=VALUE1;KEY2=VALUE2...>] <STACK_NAME>

更新栈:heat stack-update [-f <FILE>] [-e <FILE or URL>] [-u <URL>] [-o <URL>] [-t <TIMEOUT>] [-r] [-P <KEY1=VALUE1;KEY2=VALUE2...>] <NAME or ID>

得到某个具体的栈的模板:

heat template-show <NAME or ID>         
heat template-validate [-u <URL>][-f ] [-e <FILE or URL>]  [-o <URL>]

RabbitMQ命令

查看所有队列信息: rabbitmqctl list_queues
关闭应用(关闭当前启动节点): rabbitmqctl stop_app
启动应用,和上述关闭命令配合使用达到清空队列的目的: rabbitmqctl start_app
从管理数据库中移除所有数据,例如配置过的用户和虚拟宿主, 删除所有持久化的消息(这个命令要在rabbitmqctl stop_app之后使用): rabbitmqctl reset
作用和rabbitmqctl reset一样,区别是无条件重置节点,不管当前管理数据库状态以及集群的配置。如果数据库或者集群配置发生错误才使用这个最后的手段: rabbitmqctl force_reset
节点状态: rabbitmqctl status
添加用户: rabbitmqctl add_user username password
列出所有用户: rabbitmqctl list_users
列出用户权限: rabbitmqctl list_user_permissions username
修改密码: rabbitmqctl change_password username newpassword
创建虚拟主机: rabbitmqctl add_vhost vhostpath
列出所有虚拟主机: rabbitmqctl list_vhosts
设置用户权限: rabbitmqctl set_permissions -p vhostpath username ".*" ".*" ".*"
列出虚拟主机上的所有权限: rabbitmqctl list_permissions -p vhostpath
清除用户权限: rabbitmqctl clear_permissions -p vhostpath username
清除队列里的消息: rabbitmqctl -p vhostpath purge_queue blue
删除用户: rabbitmqctl delete_user username
删除虚拟主机: rabbitmqctl delete_vhost vhostpath

Trove命令

查看数据库实例列表:trove list
查看实例详情:trove show 实例ID
查看一个实例上的数据库列表:trove database-list 实例ID
查看数据存储列表:trove datastore-list
查看数据存储版本:trove datastore-version-list 数据存储名
查看实例用户列表:trove user-list 实例ID 创建数据库存储:trove-manage datastore_update 数据存储名 ''
更新数据库信息:trove-manage datastore_version_update 数据存储名 version_name 版本名称 镜像ID '' 1
创建实例:trove create 实例名 模板ID --size 大小(G) --databases 数据库名 --users 数据库用户:数据库密码 --datastore_version 数据存储类型版本 --datastore 数据存储类型

Ceilometer命令

查询所有监控的资源:ceilometer meter-list
查询某种监控资源:ceilometer sample-list -m cpu
查询某个监控资源:ceilometer meter-list --query user=xxxx
查询某种监控资源并且限定条件:ceilometer sample-list --meter cpu -q 'resource_id=921903ea-ccda-4eda-b86e-7d44f3aa71c2;timestamp<2015-12-08T05:20:47'
查询某种资源的统计信息:ceilometer sample-list -m cache.missceilometer statistics --meter cpu_util

查看告警列表:ceilometer alarm-list
更新某个alarm的阈值:ceilometer alarm-update --threshold 75 -a ALARM_ID
查询某个alarm的历史更改:ceilometer alarm-history -a ALARM_ID
将某个alarm置为无效:ceilometer alarm-update --enabled False -a ALARM_ID
删除一个alarm:ceilometer alarm-delete -a ALARM_ID
得到某个alarm的状态:ceilometer alarm-state-get ALARM_ID
置某个alarm的状态:ceilometer alarm-state-set --state ok(alarm) –a ALARM-ID
查看单个alarm的详细信息:ceilometer alarm-show ALARM-ID
查看单个alarm的状态:ceilometer alarm-state-get -a alarm-id

创健告警:ceilometer alarm-threshold-create --name test --description 'test' --meter-name cpu_util --threshold 10.0 --comparison-operator gt --statistic avg --period 100 --evaluation-periods 3 --alarm-action 'log://' --query resource_id=03d9ccd4-cf42-4dbe-b391-469e086cfc83

创健告警参数说明:

ceilometer alarm-threshold-create
--name test                 #告警名字
--description 'test'        #描述
--meter-name cpu_util       #测量值名称(监控的项目)
--threshold 10.0            #阈值
--comparison-operator gt    #比对方式:大于
--statistic avg             #统计方式:平均值
--period 100                #周期:100秒
--evaluation-periods 3      #周期内统计次数:3
--alarm-action 'log://'     #转为告警状态时提交的url
--query resource_id=insecure_id     #资源ID;云主机ID

OpenStack命令

API操作

获取Token(id即是token): openstack token issue
curl获取镜像列表: curl -H "X-Auth-Token: 32efbc8c22af4ad6a8f03d051dc3413b" http://127.0.0.1:9292/v1/images | python -mjson.tool
curl获取镜像列表(详细):curl -H "X-Auth-Token: 32efbc8c22af4ad6a8f03d051dc3413b" http://127.0.0.1:9292/v1/images/detail |python -mjson.tool

镜像操作

查看镜像列表:openstack image list
查看镜像详情:openstack image show 镜像名或ID
设置镜像标签:openstack image set --tag 标签名 镜像名或ID

容器操作

查看已有容器:openstack container list
查看容器内容:openstack object list 容器名
创建容器:openstack container create 容器名
上传文件:openstack object create 容器名 文件名
下载文件:openstack object save 容器名 文件名
删除文件:openstack object delete 容器名 文件名

最后修改:2019 年 08 月 04 日 09 : 03 PM
如果觉得我的文章对你有用,请随意赞赏