注意

本文档适用于 Ceph 的开发版本。

list

此子命令将列出可能与 Ceph 集群关联的任何设备(逻辑和物理),前提是它们包含足够的元数据以允许进行此发现。

输出按与设备关联的 OSD ID 分组,与 ceph-disk 不同,它不提供与 Ceph 无关的设备的任何信息。

命令行选项

  • --format 允许值为 jsonpretty。默认为 pretty,它将以人类可读的格式对设备信息进行分组。

完整报告

当不使用位置参数时,将显示完整报告。这意味着将显示系统中找到的所有设备和逻辑卷。

两个 OSD 的完整 pretty 报告,一个带有作为日志的 lv,另一个带有物理设备,可能类似于

ceph-volume lvm list
====== osd.1 =======

  [journal]    /dev/journals/journal1

      journal uuid              C65n7d-B1gy-cqX3-vZKY-ZoE0-IEYM-HnIJzs
      osd id                    1
      cluster fsid              ce454d91-d748-4751-a318-ff7f7aa18ffd
      type                      journal
      osd fsid                  661b24f8-e062-482b-8110-826ffe7f13fa
      data uuid                 SlEgHe-jX1H-QBQk-Sce0-RUls-8KlY-g8HgcZ
      journal device            /dev/journals/journal1
      data device               /dev/test_group/data-lv2
      devices                   /dev/sda

  [data]    /dev/test_group/data-lv2

      journal uuid              C65n7d-B1gy-cqX3-vZKY-ZoE0-IEYM-HnIJzs
      osd id                    1
      cluster fsid              ce454d91-d748-4751-a318-ff7f7aa18ffd
      type                      data
      osd fsid                  661b24f8-e062-482b-8110-826ffe7f13fa
      data uuid                 SlEgHe-jX1H-QBQk-Sce0-RUls-8KlY-g8HgcZ
      journal device            /dev/journals/journal1
      data device               /dev/test_group/data-lv2
      devices                   /dev/sdb

====== osd.0 =======

  [data]    /dev/test_group/data-lv1

      journal uuid              cd72bd28-002a-48da-bdf6-d5b993e84f3f
      osd id                    0
      cluster fsid              ce454d91-d748-4751-a318-ff7f7aa18ffd
      type                      data
      osd fsid                  943949f0-ce37-47ca-a33c-3413d46ee9ec
      data uuid                 TUpfel-Q5ZT-eFph-bdGW-SiNW-l0ag-f5kh00
      journal device            /dev/sdd1
      data device               /dev/test_group/data-lv1
      devices                   /dev/sdc

  [journal]    /dev/sdd1

      PARTUUID                  cd72bd28-002a-48da-bdf6-d5b993e84f3f

对于逻辑卷,devices 键填充了与逻辑卷关联的物理设备。由于 LVM 允许多个物理设备成为逻辑卷的一部分,因此在使用 pretty 时,该值将用逗号分隔,但在使用 json 时将是一个数组。

注意

标签以可读格式显示。osd id 键存储为 ceph.osd_id 标签。有关 lvm 标签约定的更多信息,请参阅 Tag API

单项报告

单项报告可以接受设备和逻辑卷作为输入(位置参数)。对于逻辑卷,需要使用组名和逻辑卷名。

例如,test_group 卷组中的 data-lv2 逻辑卷可以按以下方式列出

ceph-volume lvm list test_group/data-lv2
====== osd.1 =======

  [data]    /dev/test_group/data-lv2

      journal uuid              C65n7d-B1gy-cqX3-vZKY-ZoE0-IEYM-HnIJzs
      osd id                    1
      cluster fsid              ce454d91-d748-4751-a318-ff7f7aa18ffd
      type                      data
      osd fsid                  661b24f8-e062-482b-8110-826ffe7f13fa
      data uuid                 SlEgHe-jX1H-QBQk-Sce0-RUls-8KlY-g8HgcZ
      journal device            /dev/journals/journal1
      data device               /dev/test_group/data-lv2
      devices                   /dev/sdc

注意

标签以可读格式显示。osd id 键存储为 ceph.osd_id 标签。有关 lvm 标签约定的更多信息,请参阅 Tag API

对于普通磁盘,需要设备的完整路径。例如,对于像 /dev/sdd1 这样的设备,它可能看起来像

ceph-volume lvm list /dev/sdd1
====== osd.0 =======

  [journal]    /dev/sdd1

      PARTUUID                  cd72bd28-002a-48da-bdf6-d5b993e84f3f

json 输出

使用 --format=json 的所有输出将显示系统为设备存储的所有元数据,包括标签。

使用 json 报告时,不会进行任何可读性更改,所有信息都按原样呈现。可以列出完整输出以及单个设备。

为简洁起见,这是一个带有 json 输出的单个逻辑卷的外观(请注意标签是如何未被修改的)

ceph-volume lvm list --format=json test_group/data-lv1
{
    "0": [
        {
            "devices": ["/dev/sda"],
            "lv_name": "data-lv1",
            "lv_path": "/dev/test_group/data-lv1",
            "lv_tags": "ceph.cluster_fsid=ce454d91-d748-4751-a318-ff7f7aa18ffd,ceph.data_device=/dev/test_group/data-lv1,ceph.data_uuid=TUpfel-Q5ZT-eFph-bdGW-SiNW-l0ag-f5kh00,ceph.journal_device=/dev/sdd1,ceph.journal_uuid=cd72bd28-002a-48da-bdf6-d5b993e84f3f,ceph.osd_fsid=943949f0-ce37-47ca-a33c-3413d46ee9ec,ceph.osd_id=0,ceph.type=data",
            "lv_uuid": "TUpfel-Q5ZT-eFph-bdGW-SiNW-l0ag-f5kh00",
            "name": "data-lv1",
            "path": "/dev/test_group/data-lv1",
            "tags": {
                "ceph.cluster_fsid": "ce454d91-d748-4751-a318-ff7f7aa18ffd",
                "ceph.data_device": "/dev/test_group/data-lv1",
                "ceph.data_uuid": "TUpfel-Q5ZT-eFph-bdGW-SiNW-l0ag-f5kh00",
                "ceph.journal_device": "/dev/sdd1",
                "ceph.journal_uuid": "cd72bd28-002a-48da-bdf6-d5b993e84f3f",
                "ceph.osd_fsid": "943949f0-ce37-47ca-a33c-3413d46ee9ec",
                "ceph.osd_id": "0",
                "ceph.type": "data"
            },
            "type": "data",
            "vg_name": "test_group"
        }
    ]
}

同步信息

在进行任何列表类型之前,会查询 lvm API 以确保可能正在使用的物理设备没有更改命名。非持久性设备(例如 /dev/sda1)可能会更改为 /dev/sdb1

检测是可能的,因为 PARTUUID 作为元数据的一部分存储在数据 lv 的逻辑卷中。即使是作为物理设备的日志,此信息仍存储在与之关联的数据逻辑卷上。

如果名称不再相同(如使用 PARTUUIDblkid 报告的那样),标签将更新,报告将使用新刷新的信息。

由 Ceph 基金会为您呈现

Ceph 文档是由非营利性 Ceph 基金会 资助和托管的社区资源。如果您希望支持这项工作和我们的其他努力,请考虑 立即加入