4.2. 验证 Red Hat Ceph Storage 集群
当您配置外部 Red Hat Ceph Storage 集群时,您可以创建池和一个 client.openstack
用户来访问这些池。部署 overcloud 后,您可以使用包含 client.openstack
用户凭证的文件来列出 Red Hat OpenStack Platform (RHOSP)池的内容。
列出池的内容,并确认 Ceph Storage 集群上存在镜像服务(glance)镜像的 ID、计算(nova)实例、块存储(cinder)卷和共享文件系统服务(manila)文件共享。
流程
以
stack
用户身份登录 undercloud,再提供stackrc
凭证文件:$ source ~/stackrc
列出可用的服务器以检索系统中节点的 IP 地址:
$ openstack server list +---------------+----------------+---------------+ | ID | Name | Status | Networks | Image | Flavor | +---------------+----------------+---------------+ | d5a621bd-d109-41ae-a381-a42414397802 | compute-0 | ACTIVE | ctlplane=192.168.24.31 | overcloud-full | compute | | 496ab196-d6cb-447d-a118-5bafc5166cf2 | controller-0 | ACTIVE | ctlplane=192.168.24.37 | overcloud-full | controller | | c01e730d-62f2-426a-a964-b31448f250b3 | controller-2 | ACTIVE | ctlplane=192.168.24.55 | overcloud-full | controller | | 36df59b3-66f3-452e-9aec-b7e7f7c54b86 | controller-1 | ACTIVE | ctlplane=192.168.24.39 | overcloud-full | controller | | f8f00497-246d-4e40-8a6a-b5a60fa66483 | compute-1 | ACTIVE | ctlplane=192.168.24.10 | overcloud-full | compute |
使用 SSH 登录到任何 Compute 节点:
$ ssh heat-admin@192.168.24.31
切换到 root 用户:
[heat-admin@compute-0 ~]$ sudo su -
确认文件
/etc/ceph/ceph.conf
和/etc/ceph/ceph.client.openstack.keyring
存在:[root@compute-0 ~]# ls -l /etc/ceph/ceph.conf -rw-r--r--. 1 root root 1170 Sep 29 23:25 /etc/ceph/ceph.conf [root@compute-0 ~]# ls -l /etc/ceph/ceph.client.openstack.keyring -rw-------. 1 ceph ceph 253 Sep 29 23:25 /etc/ceph/ceph.client.openstack.keyring
输入以下命令强制
nova_compute
容器使用rbd
命令列出适当池的内容。# podman exec nova_compute /usr/bin/rbd --conf /etc/ceph/ceph.conf --keyring /etc/ceph/ceph.client.openstack.keyring --cluster ceph --id openstack ls vms
池名称必须与配置 Ceph Storage 集群时创建的镜像、虚拟机、卷和共享的池名称匹配。镜像、计算实例、卷和共享的 ID 必须与您在 Gathering ID 中记录的 ID 匹配。
注意示例命令前缀为
podman exec nova_compute
,因为/usr/bin/rbd
(由ceph-common 软件包提供
)默认不安装在 overcloud 节点上。但是,它位于nova_compute
容器中。命令列出块设备镜像。有关列出块设备镜像的更多信息,请参阅 Ceph Storage 块设备指南中的列出块设备镜像。以下示例演示了如何使用 Gathering ID 中的 ID 来确认各个池的 ID 是否存在。
# podman exec nova_compute /usr/bin/rbd --conf /etc/ceph/ceph.conf --keyring /etc/ceph/ceph.client.openstack.keyring --cluster ceph --id openstack ls images | grep 4485d4c0-24c3-42ec-a158-4d3950fa020b # podman exec nova_compute /usr/bin/rbd --conf /etc/ceph/ceph.conf --keyring /etc/ceph/ceph.client.openstack.keyring --cluster ceph --id openstack ls vms | grep 64bcb731-e7a4-4dd5-a807-ee26c669482f # podman exec nova_compute /usr/bin/rbd --conf /etc/ceph/ceph.conf --keyring /etc/ceph/ceph.client.openstack.keyring --cluster ceph --id openstack ls volumes | grep aeac15e8-b67f-454f-9486-46b3d75daff4
要验证共享文件系统服务共享是否存在,您必须登录到 Controller 节点:
# podman exec openstack-manila-share-podman-0 ceph -n client.manila fs subvolume ls cephfs | grep ec99db3c-0077-40b7-b09e-8a110e3f73c1