O022、如何使用 OpenStack CLI
本节首先讨论如何删除image,然后介绍OpenStack CLI 的使用方法,最后讨论如何 Troubleshooting
Web UI 删除镜像,直接在镜像列表中删除选择的的镜像即可
CLI删除镜像
stack@DevStack-Controller:~$ glance image-list
+--------------------------------------+---------------------------------+
| ID | Name |
+--------------------------------------+---------------------------------+
| 7c5fbab9-c215-47db-9848-66ca5305f0ac | cirros-0.3.4-x86_64-uec |
| c3f9bfb6-f089-4a0a-b410-e128284761f8 | cirros-0.3.4-x86_64-uec-kernel |
| 16b087bd-8aa5-48fa-968b-6d8986ee2434 | cirros-0.3.4-x86_64-uec-ramdisk |
| c4454923-5ae3-4d68-afc8-92fdb985d204 | my_cirros_cli_image |
+--------------------------------------+---------------------------------+
stack@DevStack-Controller:~$ ll /opt/stack/data/glance/images/
total 45524
drwxr-xr-x 2 stack stack 4096 May 22 22:10 ./
drwxr-xr-x 4 stack stack 4096 May 22 01:04 ../
-rw-r----- 1 stack stack 3740163 May 22 01:11 16b087bd-8aa5-48fa-968b-6d8986ee2434
-rw-r----- 1 stack stack 25165824 May 22 01:11 7c5fbab9-c215-47db-9848-66ca5305f0ac
-rw-r----- 1 stack stack 4979632 May 22 01:11 c3f9bfb6-f089-4a0a-b410-e128284761f8
-rw-r----- 1 stack stack 12716032 May 22 22:02 c4454923-5ae3-4d68-afc8-92fdb985d204
stack@DevStack-Controller:~$ glance image-delete c4454923-5ae3-4d68-afc8-92fdb985d204
stack@DevStack-Controller:~$ glance image-list
+--------------------------------------+---------------------------------+
| ID | Name |
+--------------------------------------+---------------------------------+
| 7c5fbab9-c215-47db-9848-66ca5305f0ac | cirros-0.3.4-x86_64-uec |
| c3f9bfb6-f089-4a0a-b410-e128284761f8 | cirros-0.3.4-x86_64-uec-kernel |
| 16b087bd-8aa5-48fa-968b-6d8986ee2434 | cirros-0.3.4-x86_64-uec-ramdisk |
+--------------------------------------+---------------------------------+
stack@DevStack-Controller:~$ ll /opt/stack/data/glance/images/
total 33104
drwxr-xr-x 2 stack stack 4096 May 22 22:11 ./
drwxr-xr-x 4 stack stack 4096 May 22 01:04 ../
-rw-r----- 1 stack stack 3740163 May 22 01:11 16b087bd-8aa5-48fa-968b-6d8986ee2434
-rw-r----- 1 stack stack 25165824 May 22 01:11 7c5fbab9-c215-47db-9848-66ca5305f0ac
-rw-r----- 1 stack stack 4979632 May 22 01:11 c3f9bfb6-f089-4a0a-b410-e128284761f8
如何使用 OpenStack CLI
OpenStack 的各个服务都有自己的 CLI,命令也很好记,比如 Glance 就是 glance ,Nova 就是 nova。
但Keystone 比较特殊,用openstack 命令代替,比如
stack@DevStack-Controller:~$ openstack user list
+----------------------------------+-----------+
| ID | Name |
+----------------------------------+-----------+
| 088fd08b7c3a43fe9d1e6f8062b40335 | neutron |
| 29c9ad9e1b2f4b7082b0b27a5cf0936d | nova |
| 306aef65f26249bfb10dd610c79794c9 | glance |
| 39695678ac4848ae9a27711c41113567 | placement |
| 897bfb516fbe4cddab0ecef08a6a9a65 | alt_demo |
| 98000c36b2da41d1b4725a9ad7652d58 | cinder |
| bb4bb35c15404125b5c075e7f859c525 | demo |
| c23652fbcaa74c1e8becc960e2210820 | admin |
+----------------------------------+-----------+
不同服务用的命令虽然不同,但这些命令使用方法却非常类似,可以举一反三。
1、执行命令之前,需要设置环境变量。这些变量包含用户名、Project、密码等;如果不设置,每次执行命令都必须设置相关的命令行参数
2、各个服务的命令都包含 增删改查,格式如下
CMD <obj>-create [parm1] [parm2]…
CMD <obj>-delete [parm]
CMD <obj>-update [parm1] [parm2]…
CMD <obj>-list CMD <obj>-show [parm]
glance管理镜像的命令
glance image-create
glance image-delete
glance image-update
glance image-list
glance image-show
neutron管理网络的命令
neutron net-create
neutron net -delete
neutron net -update
neutron net -list
neutron net –show
neutron子网相关操作
neutron subnet-create
neutron subnet -delete
neutron subnet -update
neutron subnet -list
neutron subnet–show
有的命令 <obj> 可以省略,比如nova下面的操作都是针对 instance的
nova boot
nova delete
nova list nova show
3、每个对象都有ID,delete 、show等操作都是以 ID 为参数,比如前面删除镜像的操作
stack@DevStack-Controller:~$ glance image-delete c4454923-5ae3-4d68-afc8-92fdb985d204
4、可用help 查看命令的用法,除了 delete 、show 等操作只需要ID一个参数,其他操作可能需要更多的参数,用help查看所需的参数,格式是
CMD help [SUB-CMD]
stack@DevStack-Controller:~$ glance help image-delete
usage: glance image-delete <IMAGE_ID> [<IMAGE_ID> ...]
Delete specified image.
Positional arguments:
<IMAGE_ID> ID of image(s) to delete.
Run `glance --os-image-api-version 1 help image-delete` for v1 help
如何 Troubleshooting
OpenStack 排查问题的方法主要是通过日志,Service 都有自己单独的日志。Glance主要有两个日志,glance_api.log 和 glance_resistry.log ,保存在 /opt/stack/logs 目录里。DevStack 的screen 窗口已经帮我们打开了两个日志,可以直接查看
g-api 窗口显示 glance-api 日志,记录 REST API 调用请况
g-reg 窗口显示 glance-registry 日志,记录Glance服务处理请求的过程以及数据库操作
如果需啊哟得到最详细的日志,可以在/etc/glance/*.conf 中打开 debug选项,DevStack 默认已经打开了 debug
在非 DevStack安装中,日志在 /var/log/glance 目录中