第 2 章 集成 Red Hat Ceph Storage


您可以在 OpenShift (RHOSO)上配置 Red Hat OpenStack Services,以便与外部 Red Hat Ceph Storage 集群集成。此配置将以下服务连接到 Red Hat Ceph Storage 集群:

  • Block Storage 服务 (cinder)
  • Image 服务 (glance)
  • Object Storage 服务 (swift)
  • 计算服务(nova)
  • 共享文件系统服务(manila)

要将 Red Hat Ceph Storage 配置为 RHOSO 存储的后端,请完成以下任务:

  1. 验证 Red Hat Ceph Storage 是否已部署,并且所有必需的服务都在运行。
  2. 在 Red Hat Ceph Storage 集群中创建 Red Hat Ceph Storage 池。
  3. 在 Red Hat Ceph Storage 集群中创建 Red Hat Ceph Storage secret,以提供 Red Hat Ceph Storage 集群的 RHOSO 服务访问权限。
  4. 获取 Ceph 文件系统标识符。
  5. 配置 OpenStackControlPlane CR,以使用 Red Hat Ceph Storage 集群作为后端。
  6. 配置 OpenStackDataPlane CR,以使用 Red Hat Ceph Storage 集群作为后端。

先决条件

  • 访问 Red Hat Ceph Storage 集群。
  • RHOSO control plane 安装在一个可正常工作的 RHOSO 集群中。

2.1. 创建 Red Hat Ceph Storage 池

在 Red Hat Ceph Storage 集群服务器上为每个使用集群的 RHOSO 服务创建池。

流程

  1. 为 Compute 服务(vms)、块存储服务(volumes)和镜像服务(images)创建池:

    $ for P in vms volumes images; do
      cephadm shell -- ceph osd pool create $P;
      cephadm shell -- ceph osd pool application enable $P rbd;
    done
    注意

    在创建池时,设置适当的放置组(PG)号,如 Red Hat Ceph Storage 策略指南中的 放置组 中所述。

  2. 可选:如果在 control plane 中启用了共享文件系统服务(manila),则创建 cephfs 卷。这会自动启用 CephFS 元数据服务(MDS),并在 Ceph 集群中创建必要的数据和元数据池:

    $ cephadm shell -- ceph fs volume create cephfs
  3. 可选:在 Red Hat Ceph Storage 集群上部署 NFS 服务,以便将 CephFS 与 NFS 搭配使用:

    $ cephadm shell -- ceph nfs cluster create cephfs \
    --ingress --virtual-ip=<vip> \
    --ingress-mode=haproxy-protocol
    • <vip > 替换为分配给 NFS 服务的 IP 地址。NFS 服务应当隔离在一个可与所有 Red Hat OpenStack 用户共享的网络中。有关自定义 NFS 服务的更多信息,请参阅 NFS 集群和导出管理

      重要

      当您为共享文件系统服务部署 NFS 服务时,请不要选择要公开 NFS 的自定义端口。仅支持 2049 的默认 NFS 端口。您必须启用 Red Hat Ceph Storage ingress 服务,并将 ingress-mode 设置为 haproxy-protocol。否则,您不能将基于 IP 的访问规则与共享文件系统服务一起使用。对于生产环境中的安全性,红帽不推荐在共享上提供对 0.0.0.0/0 的访问,以将其挂载到客户端机器上。

  4. 为 RHOSO 创建 cephx 密钥以访问池:

    $ cephadm shell -- \
       ceph auth add client.openstack \
         mgr 'allow *' \
            mon 'allow r' \
            osd 'allow class-read object_prefix rbd_children, allow rwx pool=vms, allow rwx pool=volumes, allow rwx pool=images'
    重要

    如果 control plane 中启用了共享文件系统服务,请将 osd caps 替换为以下内容:

    OSD 'allow class-read object_prefix rbd_children, allow rwx pool=vms, allow rwx pool=volumes, allow rwx pool=images, allow rwx pool=cephfs.cephfs.data'

  5. 导出 cephx 密钥:

    $ cephadm shell -- ceph auth get client.openstack > /etc/ceph/ceph.client.openstack.keyring
  6. 导出配置文件:

    $ cephadm shell -- ceph config generate-minimal-conf > /etc/ceph/ceph.conf
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.