2.2. 配置现有的 Red Hat Ceph Storage 集群
要配置 Red Hat Ceph Storage 集群,您可以创建对象存储守护进程(OSD)池,定义功能,并在 Ceph Storage 集群上直接创建密钥和 ID。您可以从任何可访问 Ceph 存储集群的计算机执行命令,并安装了 Ceph 命令行客户端。
流程
在 Ceph Storage 集群中创建以下池,与您的环境相关:
OpenStack Block Storage (cinder)的存储:
ceph osd pool create volumes <pgnum>
[root@ceph ~]# ceph osd pool create volumes <pgnum>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow OpenStack Image Storage (glance)的存储:
ceph osd pool create images <pgnum>
[root@ceph ~]# ceph osd pool create images <pgnum>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 实例存储:
ceph osd pool create vms <pgnum>
[root@ceph ~]# ceph osd pool create vms <pgnum>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow OpenStack Block Storage 备份(cinder-backup)的存储:
ceph osd pool create backups <pgnum>
[root@ceph ~]# ceph osd pool create backups <pgnum>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 可选:OpenStack Telemetry Metrics (gnocchi)的存储:
ceph osd pool create metrics <pgnum>
[root@ceph ~]# ceph osd pool create metrics <pgnum>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 仅在通过 OpenStack 启用指标时才使用此存储选项。如果您的 overcloud 使用 CephFS 部署 OpenStack Telemetry 指标,请创建 CephFS 数据和元数据池。
如果您的 overcloud 使用 Red Hat Ceph 4 (Ceph 软件包 14 或更早版本)部署共享文件系统服务(manila),请创建 CephFS 数据和元数据池:
ceph osd pool create manila_data <pgnum> ceph osd pool create manila_metadata <pgnum>
[root@ceph ~]# ceph osd pool create manila_data <pgnum> [root@ceph ~]# ceph osd pool create manila_metadata <pgnum>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
<pgnum>
替换为放置组数量。红帽建议集群中每个 OSD 大约 100 个放置组,以副本数划分(osd pool default size
)。例如,如果存在 10 个 OSD,并且集群将osd 池默认大小设置为
3,则使用 333 放置组。您还可以使用 每个池的 Ceph Placement Groups (PG)计算器 来确定合适的值。- 如果您的 overcloud 使用 Red Hat Ceph 5 (Ceph 软件包 16)或更高版本部署共享文件系统服务(manila),则不需要为 CephFS 创建数据和元数据池。您可以创建文件系统卷。有关更多信息,请参阅 Red Hat Ceph Storage 操作指南中的使用 Ceph Orchestrator 管理 MDS 服务。
使用以下功能在 Ceph 集群中创建
client.openstack
用户:- cap_mgr: allow114
- cap_mon: profile rbd
cap_osd: profile rbd pool=volumes, profile rbd pool=vms, profile rbd pool=images, profile rbd pool=backups,
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
[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
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
请注意为
client.openstack
用户创建的 Ceph 客户端密钥:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例中的
键值
AQC+vYNXgDAgAhAAc8UoYt+OTz5uhV7ItLdwUw== 是 Ceph 客户端密钥。如果您的 overcloud 使用 CephFS 部署共享文件系统服务,请使用以下功能在 Ceph Storage 集群中创建
client.manila
用户:- cap_mds: allow114
- cap_mgr: allow114
- cap_mon: allow r, allow command "auth del", allow command "auth caps", allow command "auth get", allow command "auth get-or-create"'
cap_osd: allow rw
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 *'
[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 *'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
注意在 overcloud 部署模板中使用的 manila 客户端名称和键值:
ceph auth get-key client.manila
[root@ceph ~]# ceph auth get-key client.manila <AQDQ991cAAAAABAA0aXFrTnjH9aO39P0iVvYyg==>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 请注意 Ceph Storage 集群的文件系统 ID。这个值在
fsid
字段中指定,在集群的配置文件的[global]
部分下指定:[global] fsid = <4b5c8c0a-ff60-454b-a1b4-9747aa737d19> ...
[global] fsid = <4b5c8c0a-ff60-454b-a1b4-9747aa737d19> ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
在创建自定义环境文件时,请使用 Ceph 客户端密钥和文件系统 ID,以及共享文件系统服务客户端 ID 和密钥。
其他资源
- 创建自定义环境文件
- Red Hat Ceph Storage 发行版本和对应的 Ceph 软件包版本
- Red Hat Ceph Storage 配置指南中的 Ceph 配置。