6 管理 RADOS 块设备 #
要列出所有可用的 RADOS 块设备 (RBD),请点击主菜单中的
› 。该列表显示有关设备的简要信息,例如设备名称、相关存储池名称、名称空间、设备大小、设备上的对象数量和大小、有关详细信息供应的详细信息以及父项。
6.1 查看有关 RBD 的详细信息 #
要查看某个设备的更多详细信息,请点击表中对应的行:
6.2 查看 RBD 的配置 #
要查看某个设备的详细配置,请点击表中对应的行,然后点击下方表中的
选项卡:6.3 创建 RBD #
要添加新设备,请点击表标题左上方的
,然后在 屏幕上执行以下操作:输入新设备的名称。有关命名限制,请参见第 2.11 节 “名称限制”。
选择要在其中创建新 RBD 设备且指定了
rbd
应用的存储池。指定新设备的大小。
为设备指定其他选项。要微调设备参数,请点击
,然后输入对象大小、条带单元或条带个数的值。要输入服务质量 (QoS) 限制,请点击 ,然后输入限制。点击
进行确认。
6.4 删除 RBD #
要删除设备,请选择表中该设备对应的行。点击
按钮旁的下拉箭头,然后点击 。点击 确认删除。删除 RBD 的操作无法撤消。如果您选择将设备
,那么稍后还可以将其恢复,只需在主表的 选项卡上选择该设备,然后点击表标题左上方的 。6.5 创建 RADOS 块设备快照 #
要创建 RADOS 块设备快照,请选择表中该设备对应的行,将会显示详细的配置内容窗格。选择
选项卡,然后点击表标题左上方的 。输入快照的名称,然后点击 进行确认。选择快照后,您可以在设备上执行其他操作,例如重命名、保护、克隆、复制或删除。
可根据当前快照恢复设备的状态。6.6 RBD 镜像 #
RADOS 块设备映像可以在两个 Ceph 集群之间异步镜像。您可以使用 Ceph Dashboard 在两个或更多集群之间配置 RBD 映像复制。此功能有两种模式:
- 基于日志
此模式使用 RBD 日志映像功能来确保集群之间的复制在时间点和崩溃时保持一致。
- 基于快照
此模式使用定期安排或手动创建的 RBD 映像镜像快照,以在集群之间复制崩溃时保持一致的 RBD 映像。
镜像是基于对等集群中的每个存储池进行配置的,可以对存储池中的特定映像子集进行配置,也可以配置为在仅使用基于日志的镜像时自动镜像存储池中的所有映像。
镜像是使用 rbd
命令配置的,SUSE Enterprise Storage 7.1 中默认会安装该工具。rbd-mirror
守护进程负责从 remote 对等集群提取映像更新,并将它们应用于 local 集群中的映像。有关启用 第 6.6.2 节 “启用 rbd-mirror
守护进程” 守护进程的详细信息,请参见rbd-mirror
。
根据复制需求,RBD 块设备镜像可以配置为单向或双向复制:
- 单向复制
当数据仅会从主集群镜像到次集群时,
rbd-mirror
守护进程仅在次集群上运行。- 双向复制
当数据从一个集群上的主映像镜像到另一个集群上的非主映像(反之亦然)时,
rbd-mirror
守护进程将在两个集群上运行。
rbd-mirror
守护进程的每个实例都必须能够同时连接到本地和远程 Ceph 集群,例如所有 Monitor 和 OSD 主机。此外,网络必须在两个数据中心之间有足够的带宽来处理镜像工作负载。
有关 RADOS 块设备镜像的一般信息和命令行方法,请参见第 20.4 节 “RBD 映像镜像”。
6.6.1 配置主集群和次集群 #
主集群是用于创建包含映像的原始存储池的集群。次集群是用于从主集群复制存储池或映像的集群。
在复制上下文中,主与次这两个术语有可能是相对的,因为相较于集群来说,它们与单个存储池更为相关。例如,在双向复制中,可将一个存储池从主集群镜像到次集群,与此同时,也可以将另一个存储池从次集群镜像到主集群。
6.6.2 启用 rbd-mirror
守护进程 #
以下过程说明如何使用 rbd
命令来执行配置镜像的基本管理任务。镜像在 Ceph 集群中逐池进行配置。
两个对等集群上都应执行存储池配置步骤。为清楚起见,这些过程假设名为“primary”和“secondary”的两个集群可从单台主机访问。
rbd-mirror
守护进程负责执行实际的集群数据复制。
重命名
ceph.conf
和密钥环文件,并将其从主要主机复制到次要主机:cephuser@secondary >
cp /etc/ceph/ceph.conf /etc/ceph/primary.confcephuser@secondary >
cp /etc/ceph/ceph.admin.client.keyring \ /etc/ceph/primary.client.admin.keyringcephuser@secondary >
scp PRIMARY_HOST:/etc/ceph/ceph.conf \ /etc/ceph/secondary.confcephuser@secondary >
scp PRIMARY_HOST:/etc/ceph/ceph.client.admin.keyring \ /etc/ceph/secondary.client.admin.keyring要使用
rbd
针对存储池启用镜像,请指定mirror pool enable
、存储池名称和镜像模式:cephuser@adm >
rbd mirror pool enable POOL_NAME MODE注意镜像模式可以是
image
或pool
。例如:cephuser@secondary >
rbd --cluster primary mirror pool enable image-pool imagecephuser@secondary >
rbd --cluster secondary mirror pool enable image-pool image在 Ceph Dashboard 上,导航到
› 。 表的左侧会显示处于活跃状态的运行中rbd-mirror
守护进程及其健康状况。图 6.6︰ 运行rbd-mirror
守护进程 #
6.6.3 禁用镜像 #
要使用 rbd
针对存储池禁用镜像,请指定 mirror pool disable
命令和存储池名称:
cephuser@adm >
rbd mirror pool disable POOL_NAME
使用这种方法对存储池禁用镜像时,还会对已为其明确启用镜像的所有映像(该存储池中)禁用镜像。
6.6.4 引导对等 #
为了使 rbd-mirror
发现其对等集群,需要将对等注册到存储池,并需要创建用户帐户。此过程可以使用 rbd
通过 mirror pool peer bootstrap create
和 mirror pool peer bootstrap import
命令自动完成。
要使用 rbd
手动创建新的引导令牌,请指定 mirror pool peer bootstrap create
命令、存储池名称以及描述本地集群的可选站点名称:
cephuser@adm >
rbd mirror pool peer bootstrap create [--site-name local-site-name] pool-name
mirror pool peer bootstrap create
的输出将是应提供给 mirror pool peer bootstrap import
命令的令牌。例如,在主集群上:
cephuser@adm >
rbd --cluster primary mirror pool peer bootstrap create --site-name primary
image-pool eyJmc2lkIjoiOWY1MjgyZGItYjg5OS00NTk2LTgwOTgtMzIwYzFmYzM5NmYzIiwiY2xpZW50X2lkIjoicmJkL \
W1pcnJvci1wZWVyIiwia2V5IjoiQVFBUnczOWQwdkhvQmhBQVlMM1I4RmR5dHNJQU50bkFTZ0lOTVE9PSIsIm1vbl9ob3N0I \
joiW3YyOjE5Mi4xNjguMS4zOjY4MjAsdjE6MTkyLjE2OC4xLjM6NjgyMV0ifQ==
要使用 rbd
命令手动导入另一个集群创建的引导令牌,请指定 mirror pool peer bootstrap import
命令、存储池名称、所创建令牌的文件路径(或设为“-”以从标准输入读取),以及描述本地集群的可选站点名称和镜像方向(默认设为 rx-tx
以进行双向镜像,但也可设为 rx-only
以进行单向镜像):
cephuser@adm >
rbd mirror pool peer bootstrap import [--site-name local-site-name] \
[--direction rx-only or rx-tx] pool-name token-path
例如,在次集群上:
cephuser@adm >
cat >>EOF < token eyJmc2lkIjoiOWY1MjgyZGItYjg5OS00NTk2LTgwOTgtMzIwYzFmYzM5NmYzIiwiY2xpZW50X2lkIjoicmJkLW1pcn \ Jvci1wZWVyIiwia2V5IjoiQVFBUnczOWQwdkhvQmhBQVlMM1I4RmR5dHNJQU50bkFTZ0lOTVE9PSIsIm1vbl9ob3N0I \ joiW3YyOjE5Mi4xNjguMS4zOjY4MjAsdjE6MTkyLjE2OC4xLjM6NjgyMV0ifQ== EOFcephuser@adm >
rbd --cluster secondary mirror pool peer bootstrap import --site-name secondary image-pool token
6.6.5 删除集群对等 #
要使用 rbd
命令删除镜像对等 Ceph 集群,请指定 mirror pool peer remove
命令、存储池名称和对等 UUID(可通过 rbd mirror pool info
命令获得):
cephuser@adm >
rbd mirror pool peer remove pool-name peer-uuid
6.6.6 在 Ceph Dashboard 中配置存储池复制 #
rbd-mirror
守护进程需要拥有主集群的访问权限,才能镜像 RBD 映像。继续之前,请确保已按照第 6.6.4 节 “引导对等”中的步骤操作。
在主和次两个集群上,创建名称相同的存储池并为其指定
rbd
应用。有关创建新存储池的更多详细信息,请参见第 5.1 节 “添加新存储池”。图 6.7︰ 创建具有 RBD 应用的存储池 #在主和次两个集群的仪表盘上,导航到 › 。在 表右侧点击要复制的存储池的名称,然后点击 ,并选择复制模式。在此示例中,我们将使用存储池复制模式,也就是说将复制给定存储池中的所有映像。点击 进行确认。
图 6.8︰ 配置复制模式 #重要:主集群上的错误或警报更新复制模式后,右侧相应的列中会显示错误或警告标志。这是因为尚未为存储池指定用于复制的同伴用户。对于主集群,请省略此标志,因为我们只需为次集群指定同伴用户。
在次集群的仪表盘上,导航到 › 。通过选择 添加存储池镜像对等。提供主集群的详细信息:
图 6.9︰ 添加对等身份凭证 #用于识别主集群的任意唯一字符串,如“primary”。该集群名称不得与实际环境中次集群的名称相同。
您创建作为镜像同伴的 Ceph 用户 ID。此示例中为“rbd-mirror-peer”。
主集群 Ceph Monitor 节点的 IP 地址的逗号分隔列表。
与同伴用户 ID 相关的密钥。您可以通过在主集群上运行以下示例命令来获得该密钥:
cephuser@adm >
ceph auth print_key pool-mirror-peer-name
点击
进行确认。图 6.10︰ 副本存储池列表 #
6.6.7 确认 RBD 映像复制是否有效 #
如果 rbd-mirror
守护进程正在运行,在 Ceph Dashboard 上配置 RBD 映像复制后,就需要确认复制实际上是否有效:
在主集群的 Ceph Dashboard 上创建 RBD 映像,将您已创建用于复制目的的存储池设为其父存储池。为映像启用
互斥锁
和日志
特性。有关如何创建 RBD 映像的详细信息,请参见第 6.3 节 “创建 RBD”。图 6.11︰ 新 RBD 映像 #创建要复制的映像后,打开次集群的 Ceph Dashboard,并导航到 › 。右侧的 表将在 所示数量的映像中反映该变化,并会同步 所示数量的映像。
图 6.12︰ 同步的新 RBD 映像 #在主集群上,将数据写入 RBD 映像。在次集群的 Ceph Dashboard 上,导航到 › ,监视相应映像大小的增长是否与主集群上写入的数据一致。
6.7 管理 iSCSI 网关 #
有关 iSCSI 网关的更多一般信息,请参见第 22 章 “Ceph iSCSI 网关”。
要列出所有可用网关和映射的映像,请点击主菜单中的
› 。 选项卡即会打开,列出当前配置的 iSCSI 网关和映射的 RBD 映像。表列出每个网关的状态、iSCSI 目标数量及会话数量。 表列出每个映射的映像的名称、相关存储池名称、后备存储类型及其他统计数据详细信息。
选项卡列出当前配置的 iSCSI 目标。
要查看有关目标的更多详细信息,请点击表中该目标对应行上的下拉箭头。一个树状结构纲要即会打开,列出磁盘、端口、发起程序和组。点击某一项可将其展开并查看详细内容,右侧的表中也可能会显示其相关配置。
6.7.1 添加 iSCSI 目标 #
要添加新的 iSCSI 目标,请点击
表左上方的 ,并输入所需信息。输入新网关的目标地址。
点击
并从列表中选择一个或多个 iSCSI 门户。点击
并为网关选择一个或多个 RBD 映像。如果您需要使用身份验证才能访问网关,请激活
复选框并输入身份凭证。选中 和 之后,您可看到更多高级身份验证选项。点击
进行确认。
6.7.2 编辑 iSCSI 目标 #
要编辑某个现有 iSCSI 目标,请点击
表中对应的行,然后点击表左上方的 。然后,您便可以修改 iSCSI 目标、添加或删除端口,以及添加或删除相关 RBD 映像。您还可以调整网关的身份验证信息。
6.7.3 删除 iSCSI 目标 #
要删除 iSCSI 目标,请选择表中对应的行并点击
按钮旁的下拉箭头,然后选择 。激活 ,然后点击 进行确认。6.8 RBD 服务质量 (QoS) #
有关 RBD QoS 配置选项的更多一般信息和说明,请参见第 20.6 节 “QoS 设置”。
QoS 选项可在不同级别配置。
全局
基于每个存储池
基于每个映像
全局配置位于列表顶部,将用于所有新创建的 RBD 映像,以及不会覆盖存储池或 RBD 映像层级相应值的映像。全局指定的选项值可能会被基于每个存储池或映像设置的值覆盖。针对某个存储池指定的选项将应用到该存储池的所有 RBD 映像,除非被针对某个映像设置的配置选项所覆盖。对映像指定的选项将覆盖对存储池指定的选项以及全局指定的选项。
因此可以如此操作:全局定义默认值,对默认值进行调整以适合特定存储池的所有 RBD 映像,然后覆盖单个 RBD 映像的存储池配置。
6.8.1 全局配置选项 #
要全局配置 RADOS 块设备选项,请从主菜单中选择
› 。要列出所有可用的全局配置选项,请在
旁从下拉菜单中选择 。在搜索字段中过滤
rbd_qos
,以过滤表的结果。QoS 的所有可用配置选项即会列出。要更改某个值,请点击表中对应的行,然后选择表左上方的
。 对话框包含 6 个不同的字段供您指定值。在 文本框中,RBD 配置选项值是必填的。注意此对话框与其他对话框不同,不允许您使用方便的单位指定值。您只能使用字节或 IOPS 单位设置这些值,具体取决于您要编辑的选项。
6.8.2 针对新存储池配置选项 #
要创建新存储池并对其配置 RBD 配置选项,请点击rbd
应用标记,这样才能配置 RBD QoS 选项。
对于纠删码存储池是无法配置 RBD QoS 配置选项的。要为纠删码存储池配置 RBD QoS 选项,您需要编辑 RBD 映像的副本元数据池。该配置随后将应用于该映像的纠删码数据池。
6.8.3 针对现有存储池配置选项 #
要对某个现有存储池配置 RBD QoS 选项,请点击
,然后点击表中该存储池对应的行,并选择表左上方的 。对话框中应该就会显示
部分,下面是 部分。如果 纠删码池,或该存储池未配置为供 RBD 映像使用。在下一个案例中,将为存储池指定 应用标记,相应的配置部分将会显示。
和 部分均未显示,则可能是因为您正在编辑无法用于设置 RBD 配置选项的6.8.4 配置选项 #
点击
展开配置选项。所有可用选项的列表即会显示。文本框中已显示配置选项的单位。对于任何每秒字节数 (BPS) 选项,您可以选择使用“1M”或“5G”之类的缩写。系统会自动将其转换为对应的“1 MB/s”和“5 GB/s”。点击每个文本框右侧的重设置按钮,将删除对该存储池设置的所有值。此操作不会删除全局配置或对 RBD 映像配置的选项的配置值。
6.8.5 使用新 RBD 映像创建 RBD QoS 选项 #
要创建 RBD 映像并对该映像设置 RBD QoS 选项,请选择
› ,然后点击 。点击 可展开高级配置部分。点击 可打开所有可用配置选项。6.8.6 编辑现有映像的 RBD QoS 选项 #
要编辑现有映像的 RBD QoS 选项,请选择
› ,然后点击表中该存储池对应的行,最后点击 。编辑对话框随即显示。点击 可展开高级配置部分。点击 可打开所有可用配置选项。6.8.7 在复制或克隆映像时更改配置选项 #
如果克隆或复制了 RBD 映像,对该特定映像设置的值默认也将被复制。如果您想在复制或克隆期间更改这些值,可通过在复制/克隆对话框中指定更新的配置值来进行更改,此过程与创建或编辑 RBD 映像时的方式相同。执行此操作只能设置(或重设置)所复制或克隆的 RBD 映像的值,无法更改来源 RBD 映像配置,也无法更改全局配置。
如果您选择在复制/克隆时重设置选项值,系统将不会对该映像设置该选项的值。这意味着系统将使用为父存储池指定的该选项的任何值(如果为父存储池配置了相应值)。如果没有为父存储池配置相应值,则将使用全局默认值。