我有一个Ceph集群,并创建了规则以及池。在单词之后,我将这些池分配给为此创建的规则。我想知道的是,我怎么能确定它实际上像宣传的一样有效?
主要是我想知道数据是真正写入SAS驱动器而不是SSD,除非我愿意。无论如何都要超越池定义并查看块设备本身以查看数据的写入位置。
我要问的原因是因为两个池的性能异常快且大致相同。这是可能的(20G连接,小文件),但希望100%确定。
答案 0 :(得分:1)
ceph osd map命令显示在池中存储对象时使用的OSD。例如
if(table.fnSettings().aoData.length===0) {
alert('no data');
} else {
alert('data exists!');
}
告诉您$ ceph osd map rbd OBJECT
osdmap e11 pool 'rbd' (0) object 'OBJECT' ->
pg 0.383caa09 (0.1) -> up ([2,0,1], p2) acting ([2,0,1], p2)
是用于在[2,0,1]
池中存储OBJECT及其副本的OSD ID列表。使用ceph osd tree命令,您可以验证给定OSD ID使用的设备:
rbd
在此示例中,我们了解到$ ceph osd tree
ID WEIGHT TYPE NAME UP/DOWN REWEIGHT PRIMARY-AFFINITY
-1 3.00000 root default
-2 3.00000 host fold
0 1.00000 osd.0 up 1.00000 1.00000
1 1.00000 osd.1 up 1.00000 1.00000
2 1.00000 osd.2 up 1.00000 1.00000
和osd.0, osd.1
位于主机osd.2
上。如果SAS磁盘和SATA磁盘分离,fold
命令将为您提供类似的信息。