Ich schreibe einen Agenten, der Metriken von Linux-Servern sammelt. Ich erhalte Festplatteninformationen mit der Kerneldatei /proc/diskstats
. Dies funktioniert für den Festplattentyp disk
oder part
, aber wenn der Festplattentyp lvm
oder ist dm
, kann ich keine read / write sector num
Felder abrufen.
cat /proc/diskstats
8 0 sda 256780 18842 6500240 2143804 28685518 19444429 595859080 177384284 0 143033129 179528537
8 1 sda1 390 224 2932 884 15 7 56 115 0 919 999
8 2 sda2 256041 18618 6494516 2138838 23151610 19443195 595824112 88374404 0 56461356 90589410
253 0 dm-0 17773 0 142184 182853 118244 0 945952 37053269 0 45151 37236146
253 1 dm-1 69000 0 2786922 465071 23902377 0 295539112 117043416 0 86738124 117508617
253 2 dm-2 189142 0 3564794 1736523 18675050 0 299339048 248195431 0 58080383 249946740
// field 4(# of sectors read) and 8(# of sectors write) is zero for dm-0, dm-1 and dm-2
lsblk -o MAJ:MIN,NAME,PHY-SEC,LOG-SEC,TYPE,SIZE -lb
MAJ:MIN NAME PHY-SEC LOG-SEC TYPE SIZE
8:0 sda 512 512 disk 1000204886016
8:1 sda1 512 512 part 524288000
8:2 sda2 512 512 part 999678803968
253:0 VolGroup-lv_swap 512 512 lvm 16903045120
253:1 VolGroup-lv_root 512 512 lvm 53687091200
253:2 VolGroup-lv_home 512 512 lvm 929084473344
Gibt es eine andere Möglichkeit, Lese-/Schreibsektoren oder Bytes für den LVM-Typ von der Festplatte abzurufen?
Referenz:https://www.kernel.org/doc/Documentation/iostats.txt
Antwort1
Wenn Sie den Inhalt eines Blockgeräts untersuchen und feststellen möchten, was sich darin befindet, sollten Sie sich das blkid
Tool ansehen.
Möglicherweise erhalten Sie hier die gewünschten Informationen.
Außerdem ist mir noch etwas eingefallen, probier es mal hiermit:
sudo vgscan
sudo vgs
sudo vgdisplay