OpenStack 命令

OpenStack 命令整理

  • 参考地址
  https://docs.openstack.org/zh_CN/user-guide/cli-cheat-sheet.html

KeyStone

列出所有用户

$ openstack user list

列出认证服务目录

$ openstack catalog list

查看openstack token信息

# 需要定时source 用户信息
$ source /etc/kolla/admin-openrc.sh
# 查看信息
$ openstack token issue

Glance

查看:

列出您可以访问的镜像

$ openstack image list

删除:

删除指定的镜像

$ openstack image delete IMAGE

描述一个指定的镜像

$ openstack image show IMAGE

改:

更新镜像

$ openstack image set IMAGE

新增:

上传内核镜像

$ openstack image create "cirros-threepart-kernel" \
  --disk-format aki --container-format aki --public \
  --file ~/images/cirros-0.3.5-x86_64-kernel

上传RAW镜像

$ openstack image create "cirros-threepart-ramdisk" \
  --disk-format ari --container-format ari --public \
  --file ~/images/cirros-0.3.5-x86_64-initramfs

上传第三方镜像

$ openstack image create "cirros-threepart" --disk-format ami \
  --container-format ami --public \
  --property kernel_id=$KID-property ramdisk_id=$RID \
  --file ~/images/cirros-0.3.5-x86_64-rootfs.img

注册raw镜像

$ openstack image create "cirros-raw" --disk-format raw \
  --container-format bare --public \
  --file ~/images/cirros-0.3.5-x86_64-disk.img

Nova

常规操作:

查看主机列表

$ openstack host list

查看某台主机资源情况

$ openstack host show 主机名

查看虚拟机详情

$ openstack server show 虚机名

实例的暂停、挂起、停止、救援、调整规格、重建、重启:

# 暂停
$ openstack server pause NAME
$ openstack server pause volumeTwoImage

# 取消挂起
$ openstack server unpause NAME

# 挂起
$ openstack server suspend NAME

# Unsuspend
$ openstack server resume NAME

# 关机
$ openstack server stop NAME

# 开始
$ openstack server start NAME

# 恢复
$ openstack server rescue NAME
$ openstack server rescue NAME --rescue_image_ref RESCUE_IMAGE

# 调整大小
$ openstack server resize NAME FLAVOR
$ openstack server resize my-pem-server m1.small
$ openstack server resize --confirm my-pem-server1

# 重建
$ openstack server rebuild NAME IMAGE
$ openstack server rebuild newtinny cirros-qcow2

# 重启
$ openstack server reboot NAME
$ openstack server reboot newtinny


其他操作

将用户数据和文件注入到实例

$ openstack server create --user-data FILE INSTANCE

# 使用示例
$ openstack server create --user-data userdata.txt --image cirros-qcow2 \
  --flavor m1.tiny MyUserdataInstance2

使用ssh连接到实例

ip netns exec qdhcp-98f09f1e-64c4-4301-a897-5067ee6d544f \ssh -i test.pem cirros@10.0.0.4

创建密钥对

$ openstack keypair create test > test.pem
$ chmod 600 test.pem
$ openstack security group rule create default \
    --remote-group default --protocol icmp
$ openstack security group rule create default \
    --remote-group default --dst-port 22

创建秘钥对

$ openstack keypair create test > test.pem
$ chmod 600 test.pem

启动实例

$ openstack server create --image cirros-0.3.5-x86_64 --flavor m1.small \
  --key-name test MyFirstServer

管理安全组

  • 在默认的安全组中,添加ping和SSH规则
$ openstack security group rule create default \
    --remote-group default --protocol icmp
$ openstack security group rule create default \
    --remote-group default --dst-port 22

Neutron

创建网络

$ openstack network create NETWORK_NAME

创建子网

$ openstack subnet create --subnet-pool SUBNET --network NETWORK SUBNET_NAME
$ openstack subnet create --subnet-pool 10.0.0.0/29 --network net1 subnet1

常用命令

boot: 创建虚拟机。
delete: 删除虚拟机。
force-delete: 无视虚拟机当前状态,强制删除虚拟机。即使开启了软删除功能,该操作也会立即清理虚拟机资源。
list: 显示虚拟机列表。
show: 查看指定虚拟机的详细信息。
stop: 关机虚拟机。
start: 开机虚拟机。
reboot: 重启虚拟机。默认先尝试软重启,当软重启尝试120后失败,将执行强制重启。
migrate: 冷迁移虚拟机,迁移过程中虚拟机将关机。
live-migrate: 在线迁移虚拟机,虚拟机不会关机。
resize: 修改虚拟机配置,即使用新的flavor重建虚拟机。
rebuild: 重建虚拟机,指定新的image,如果指定快照,则相当于虚拟机状态回滚。
evacuate: 疏散迁移,只有当compute服务down时执行,能够迁移虚拟机到其它正常计算节点中。
reset-state: 手动重置虚拟机状态为error或者active。
create-image: 创建虚拟机快照。
backup: 定期创建虚拟机快照。
volume-attach: 挂载volume卷。
volume-detach: 卸载volume卷。
lock/unlock: 锁定虚拟机,锁定后的虚拟机普通用户不能执行删除、关机等操作。
set-password: 修改管理员密码,虚拟机需要运行qemu guest agent服务。
pause/unpause: 暂停运行的虚拟机,如果底层的虚拟化使用的是libvirt,那么libvirt会在将虚拟机的信息保存到内存中,KVM/QEMU进程仍然在运行,只是暂停执行虚拟机的指令。
suspend/resume: 挂起虚拟机,将虚拟机内存中的信息保存到磁盘上,虚拟机对于的KVM/QEMU进程会终止掉,该操作对应于libvirt中的save操作。resume从挂起的虚拟机恢复。
reset-network: 重置虚拟机网络,在使用libvirt时,该操作不执行任何实际的动作,因此功能尚未实现。
shelve/unshelve: 虚拟机关机后仍占用资源,如果虚拟机长期不使用,可以执行shelve操作,该操作先创建虚拟机快照,然后删除虚拟机,恢复时从快照中重建虚拟机。
rename: 重命名虚拟机, 后期版本将被update操作替代。
update: 修改虚拟机名称、description信息等。
rescue/unrescue: 虚拟机进入拯救模式。原理是创建一台新的虚拟机,并把需要rescue的虚拟机的根磁盘作为第二块硬盘挂载到新创建的虚拟机。当原虚拟机根磁盘破坏不能启动时该操作非常有用。
interface-attach/interface-dettach: 绑定/解绑网卡。
trigger-crash-dump: 使虚拟机触发crash dump错误,测试使用。
resize-confirm: 确认resize操作,此时原来的虚拟机将被删除, 可以配置为自动确认。
resize-revert: 撤销resize操作,新创建的虚拟机删除,并使用原来的虚拟机。
console-log: 查看虚拟机日志。
get-vnc-console: 获取虚拟机vnc地址, 通常使用novnc协议。
restore: 恢复虚拟机。如果配置了软删除功能,当虚拟机被删除时,不会立即删除,而仅仅标识下,此时能够使用restore操作恢复删除的虚拟机。
instance-action-list: 查看虚拟机的操作日志。
instance-action:查看某个虚拟机操作的详细信息,如操作用户、操作时间等。
上一篇:OpenStack架构之Keystone身份服务


下一篇:OpenStack--创建一个Centos7的镜像