2.2. 配置现有的 Ceph Storage 集群
创建 OSD 池,定义功能,并为 Ceph Storage 集群创建密钥和 ID。
流程
在与您的环境相关的 Ceph 集群中创建以下池:
-
卷
:OpenStack Block Storage (cinder)的存储 -
镜像
:OpenStack Image Storage (glance)的存储 -
虚拟机
:实例的存储 -
备份
:用于 OpenStack Block Storage Backup (cinder-backup)的存储 Metrics
: OpenStack Telemetry Metrics (gnocchi)存储使用以下命令作为指南:
[root@ceph ~]# ceph osd pool create volumes <_pgnum_> [root@ceph ~]# ceph osd pool create images <_pgnum_> [root@ceph ~]# ceph osd pool create vms <_pgnum_> [root@ceph ~]# ceph osd pool create backups <_pgnum_> [root@ceph ~]# ceph osd pool create metrics <_pgnum_>
如果您的 overcloud 部署由 CephFS 支持的共享文件系统服务(manila),还要创建 CephFS 数据和元数据池:
[root@ceph ~]# ceph osd pool create manila_data PGNUM [root@ceph ~]# ceph osd pool create manila_metadata PGNUM
将 <_pgnum_> 替换为放置组的数量。每个 OSD 大约 100 个 PG 是最佳实践。例如,OSD 的总数乘以 100 倍,除以副本数,
osd 池默认大小
。您还可以使用 Ceph 放置组(PG)每个池计算器 来确定合适的值。-
在 Ceph 集群中使用以下功能创建
client.openstack
用户:- cap_mgr: "allow *"
- cap_mon: profile rbd
cap_osd: profile rbd pool=volumes, profile rbd pool=vms, profile rbd pool=images, profile rbd pool=backups, profile rbd pool=metrics
使用以下命令作为指南:
[root@ceph ~]# ceph auth add client.openstack mgr 'allow *' mon 'profile rbd' osd 'profile rbd pool=volumes, profile rbd pool=vms, profile rbd pool=images, profile rbd pool=backups, profile rbd pool=metrics'
注意为
client.openstack
用户创建的 Ceph 客户端密钥:[root@ceph ~]# ceph auth list ... [client.openstack] key = AQC+vYNXgDAgAhAAc8UoYt+OTz5uhV7ItLdwUw== caps mgr = "allow *" caps mon = "profile rbd" caps osd = "profile rbd pool=volumes, profile rbd pool=vms, profile rbd pool=images, profile rbd pool=backups, profile rbd pool=metrics" ...
示例中的
键值
AQC+vYNXgDAgAhAAc8UoYt+OTz5uhV7ItLdwUw== 是您 Ceph 客户端密钥。如果您的 overcloud 部署由 CephFS 支持的共享文件系统服务,请在 Ceph 集群中使用以下功能创建
client.manila
用户:-
cap_mds:
允许 *
-
cap_mgr:
允许 *
-
cap_mon:
允许 r, allow command "auth del", allow command "auth caps", allow command "auth get", allow command "auth get-or-create"
cap_osd:
允许 rw
使用下列命令作为指南:[root@ceph ~]# ceph auth add client.manila mon 'allow r, allow command "auth del", allow command "auth caps", allow command "auth get", allow command "auth get-or-create"' osd 'allow rw' mds 'allow *' mgr 'allow *'
-
cap_mds:
注意在 overcloud 部署模板中使用的 manila 客户端名称和键值:
[root@ceph ~]# ceph auth get-key client.manila AQDQ991cAAAAABAA0aXFrTnjH9aO39P0iVvYyg==
记下 Ceph Storage 集群的文件系统 ID。在
[global]
部分中的fsid
设置中使用集群配置文件中的 fsid 设置指定:[global] fsid = 4b5c8c0a-ff60-454b-a1b4-9747aa737d19 ...
有关 Ceph Storage 集群配置文件的更多信息,请参阅 Red Hat Ceph Storage 配置指南中的 Ceph 配置。
使用 Ceph 客户端密钥和文件系统 ID;以及以下流程中的 manila 客户端 IDS 和密钥: 第 3.1 节 “安装 ceph-ansible 软件包”