nndocs:nvme-of
Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| nndocs:nvme-of [2024/02/23 20:18] – created (doesn't work yet) naptastic | nndocs:nvme-of [2024/09/08 22:00] (current) – Move NQN info to sandbox naptastic | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| TODO Please put storage traffic on its own IB subnet and limit things sanely. | TODO Please put storage traffic on its own IB subnet and limit things sanely. | ||
| - | |||
| - | NQNs: nqn.2014-08.rocks.narf.hostname is the whole thing. No :01 or any of that jazz, at least not yet. | ||
| The goal is to run everything over RDMA (InfiniBand specifically) and maybe have TCP as a fallback. (If TCP, then I probably want to try VMA... which I don't want to do.) | The goal is to run everything over RDMA (InfiniBand specifically) and maybe have TCP as a fallback. (If TCP, then I probably want to try VMA... which I don't want to do.) | ||
| - | =====Target===== | + | ====Target==== |
| NVMe calls targets " | NVMe calls targets " | ||
| - | Create the subsystem, port and properties: | + | Create the subsystem: |
| + | /> subsystems/ create nqn.2014-08.rocks.narf.southpark | ||
| - | /> subsystems/ create nqn.2014-08.rocks.narf.southpark | + | Create a port and set its properties: |
| - | /> hosts/ create nqn.2014-08.rocks.narf.sadness | + | |
| /> ports/ create 1 | /> ports/ create 1 | ||
| /> ports/1/ set addr trtype=rdma | /> ports/1/ set addr trtype=rdma | ||
| - | Parameter trtype is now ' | ||
| /> ports/1/ set addr adrfam=ipv4 | /> ports/1/ set addr adrfam=ipv4 | ||
| - | Parameter adrfam is now ' | ||
| /> ports/1/ set addr traddr=172.20.64.13 | /> ports/1/ set addr traddr=172.20.64.13 | ||
| - | Parameter traddr is now ' | ||
| /> ports/1/ set addr trsvcid=4420 | /> ports/1/ set addr trsvcid=4420 | ||
| - | Parameter trsvcid is now ' | ||
| /> ports/ | /> ports/ | ||
| NVMe uses " | NVMe uses " | ||
| - | Create and share namespace: | + | Create, set, and enable |
| /> subsystems/ | /> subsystems/ | ||
| /> subsystems/ | /> subsystems/ | ||
| - | Parameter path is now '/ | ||
| /> subsystems/ | /> subsystems/ | ||
| - | | + | |
| + | You can use a file as a backstore. | ||
| + | /> | ||
| + | |||
| + | I haven' | ||
| + | |||
| + | I haven' | ||
| Create ACLs: | Create ACLs: | ||
| + | /> hosts/ create nqn.2014-08.rocks.narf.sadness | ||
| /> subsystems/ | /> subsystems/ | ||
| Parameter allow_any_host is now ' | Parameter allow_any_host is now ' | ||
| /> subsystems/ | /> subsystems/ | ||
| - | =====Initiator===== | + | ====Initiator==== |
| NVMe calls initiators " | NVMe calls initiators " | ||
| - | [root]@[shark][13: | + | Load the module (should be able to list this in /etc/modules) |
| - | [root]@[shark][08: | + | |
| - | Failed to write to /dev/nvme-fabrics: | + | |
| - | | + | |
| - | + | ||
| - | And on southpark: | + | |
| - | + | ||
| - | [956501.535293] nvme nvme1: Connect rejected: status 8 (invalid service ID). | + | |
| - | [956501.535302] nvme nvme1: | + | |
| - | + | ||
| - | Ok, let's try this from sadness. | + | |
| - | Target configuration (nvmetcli) : | + | |
| - | + | ||
| - | /hosts> cd / | + | |
| - | /> hosts/ create nqn.2014-08.rocks.narf.sadness | + | |
| - | /> subsystems/ | + | |
| - | This doesn't work from inside nvmetcli. The newline character grunks up the whole thing. | + | Discovery: |
| + | # nvme discover -t rdma -a 172.20.64.13 -s 4420 | ||
| - | | + | Log in: |
| + | | ||
| - | On sadness: | + | Rescan: |
| + | # nvme ns-rescan /dev/nvme1 | ||
| - | root@sadness: | + | * If a namespace you expect to appear isn't appearing, check the target |
| - | Failed | + | |
| - | from dmesg on sadness: | + | Disconnect a subsystem: |
| + | # nvme disconnect -d /dev/nvme1 | ||
| - | [88648.940995] nvme nvme1: rdma connection establishment failed (-104) | + | Gotta admit, that feels a lot nicer than logging out of iscsiadm. |
nndocs/nvme-of.1708719533.txt.gz · Last modified: 2024/02/23 20:18 by naptastic
