nvme盘不同于传统的sas盘,lsscsi等相关命令不适用,不能用它来定位磁盘的位置。那么在一个有多个nvme盘的机柜里面, 有什么办法来确定nvme盘符和其位置的对应关系么?

  • 1:确定物理nvme盘槽位号和pcie physical slot 号的位置关系
    通过主板用户手册或者拔插盘然后用lspci确定,这是主板布线决定的。

比如如果我们拔掉一个盘之后,发现lspci -vvvv 和之前的输出相比,少了一个B:D:F,那么这个B:D:F对应的pcie slot 号就是这个磁盘先前位置的pcie slot 号。

  • step 2:
    确定pcie physical slot号和逻辑盘符的对应关系。以名为Nvme1的磁盘作为例子:
    ls -alrt /sys/class/nvme/nvme0/*
    “`
    [root@afa_primary nvme1]# pwd
    /sys/class/nvme/nvme1
    [root@afa_primary nvme1]# ls -alrt device
    lrwxrwxrwx 1 root root 0 Nov 16 20:34 device -> ../../../0000:06:00.0
    [root@afa_primary nvme1]# lspci -vvvvv | grep "Non-Volatile memory controller" -A 2 | grep "06:00.0" -A2
    06:00.0 Non-Volatile memory controller: Intel Corporation Device 0984 (prog-if 02 [NVM Express])
    Subsystem: Intel Corporation Device 37dd
    Physical Slot: 36</li>
    </ul>

    <pre><code class=""><br /><br /># 如何确定numa node 位置:
    </code></pre>

    [root@qd01-nvme-kdfs177018130.qd01.ksyun.com /home/ebs/dataserver]$ cat /sys/bus/pci/devices/3b:00.0/numa_node
    cat: /sys/bus/pci/devices/3b:00.0/numa_node: No such file or directory
    [root@qd01-nvme-kdfs177018130.qd01.ksyun.com /home/ebs/dataserver]$ cat /sys/bus/pci/devices/0000:3b:00.0/numa_node
    0
    [root@qd01-nvme-kdfs177018130.qd01.ksyun.com /home/ebs/dataserver]$ cat /sys/bus/pci/devices/0000:3c:00.0/numa_node
    0
    [root@qd01-nvme-kdfs177018130.qd01.ksyun.com /home/ebs/dataserver]$ cat /sys/bus/pci/devices/0000:3d:00.0/numa_node
    0
    [root@qd01-nvme-kdfs177018130.qd01.ksyun.com /home/ebs/dataserver]$ cat /sys/bus/pci/devices/0000:33:00.0/numa_node
    cat: /sys/bus/pci/devices/0000:33:00.0/numa_node: No such file or directory
    [root@qd01-nvme-kdfs177018130.qd01.ksyun.com /home/ebs/dataserver]$ cat /sys/bus/pci/devices/0000:3e:00.0/numa_node
    0
    [root@qd01-nvme-kdfs177018130.qd01.ksyun.com /home/ebs/dataserver]$ cat /sys/bus/pci/devices/0000:5e:00.0/numa_node
    0
    [root@qd01-nvme-kdfs177018130.qd01.ksyun.com /home/ebs/dataserver]$ cat /sys/bus/pci/devices/0000:5f:00.0/numa_node
    0
    [root@qd01-nvme-kdfs177018130.qd01.ksyun.com /home/ebs/dataserver]$ cat /sys/bus/pci/devices/0000:86:00.0/numa_node
    1
    [root@qd01-nvme-kdfs177018130.qd01.ksyun.com /home/ebs/dataserver]$ cat /sys/bus/pci/devices/0000:87:00.0/numa_node
    1

    “`