Ceph-tool

| 分类 分布式文件系统  tool  | 标签 文件系统 

ceph-dencoder

贯穿整个osd数据处理的核心结构为ObjectStore::Transaction,所有操作关联的数据都会封装到Transaction的bufferlist中。 bufferlist中存储的数据是经过encode序列号的二进制流。在到实际Transaction的后端存储处理时,则通过对bufferlist进行 decode反序列。ceph-dencoder工具可以提供encode、dencode和dump ceph相关的数据结果,也可以做兼容性的测试。

工具使用 (1)查看支持的结构体
ceph-dencoder list_types
(2)查看object_info示例 在/var/lib/ceph/osd/ceph-x/current/ 下找到一个有数据的对象文件 12版本后增加了bluefs的机制,无法直接看到对象文件 使用attr –l命令查看其中的内容
示例: attr -l 1000000000d.00000000_head_6C753797__15 Attribute “cephos.spill_out” has a 2 byte value for 1000000000d.00000000__head_6C753797__15 Attribute “ceph._scan_ceiling” has a 22 byte value for 1000000000d.00000000__head_6C753797__15 Attribute “ceph._scan_max_mtime” has a 8 byte value for 1000000000d.00000000__head_6C753797__15 Attribute “ceph._scan_max_size” has a 8 byte value for 1000000000d.00000000__head_6C753797__15 Attribute “ceph.” has a 250 byte value for 1000000000d.00000000_head_6C753797__15 Attribute “ceph.@1” has a 5 byte value for 1000000000d.00000000_head_6C753797__15 Attribute “ceph.snapset” has a 31 byte value for 1000000000d.00000000__head_6C753797__15 说明: “cephos.spill_out”是一个两个字节的字符数组,用于记录文件的扩展属性是否溢 出到了Omap里; “ceph.“和”ceph.@1”应该算是一部分,因为ceph._超出了XFS扩展属性的长度 限制,所以拆成了两个 (3)将扩展属性导出到文件 attr -q -g file
示例:
attr -q -g “ceph.
” 1000000000d.00000000_head_6C753797__15 > abc.txt
attr -q -g “ceph.
@1” 1000000000d.00000000__head_6C753797__15 » abc.txt
(4)使用ceph-dencoder导出文件
ceph-dencoder import abc.txt type object_info_t decode dump_json 示例:
[root@cephfs102 21.17_head]# ceph-dencoder import abc.txt type object_info_t decode dump_json
{ “oid”: {
“oid”: “1000000000d.00000000”,
“key”: “”,
“snapid”: -2,
“hash”: 1819621271,
“max”: 0,
“pool”: 21,
“namespace”: “”
}, “version”: “2797’2”,
“prior_version”: “2655’1”,
“last_reqid”: “client.3204248.0:135”,
“user_version”: 2,
“size”: 557132,
“mtime”: “0.000000”,
“local_mtime”: “0.000000”,
“lost”: 0,
“flags”: 52,
“snaps”: [],
“truncate_seq”: 0,
“truncate_size”: 0,
“data_digest”: 557693221,
“omap_digest”: 4294967295,
“watchers”: {}
}


上一篇     下一篇