The proposal to merge ~ogayot/curtin:nvme-o-tcp-storageconfig into 
curtin:master has been updated.

Commit message changed to:

block: initial support for NVMe over TCP

This MP adds partial support for NVMe over TCP.

In the storage configuration, NVMe drives can now have a "nvme_controller" 
property, holding the identifier to an existing nvme_controller object (which 
is new), e.g.,

```
- type: disk
  id: disk-nvme0n1
  path: /dev/nvme0n1
  nvme_controller: nvme-controller-nvme0

- type: disk
  id: disk-nvme1n1
  path: /dev/nvme1n1
  nvme_controller: nvme-controller-nvme1

- type: nvme_controller
  id: nvme-controller-nvme0
  transport: pcie

- type: nvme_controller
  id: nvme-controller-nvme1
  transport: tcp
  tcp_port: 4420
  tcp_addr: 1.2.3.4
```

In the presence of a nvme_controller section having transport=tcp in the 
storage config, curtin will install nvme-stas (and nvme-cli) and configure the 
service so that the drives can be discovered and made available when the target 
system boots.

Current limitations:
* For the target system to boot correctly, we only support placing non-critical 
partitions (e.g., /home) on remote storage. For the next iteration, the plan is 
to support placing the rootfs (i.e., /) on remote NVMe drives, while preserving 
the /boot and /boot/efi partitions on local storage.
* If a nvme_controller section is present in the storage configuration, curtin 
will end up installing nvme-stas and nvme-cli on the target system ; even if 
the nvme_controller section denotes the use of PCIe (local storage).
* Curtin itself will not automatically append the _netdev option if a given 
mount uses remote storage, so we would expect the storage configuration to 
specify the option, e.g.:

```
-type: mount
 path: /home
 device: ...
 options: defaults,_netdev
 id: mount-2
```

For more details, see:
https://code.launchpad.net/~ogayot/curtin/+git/curtin/+merge/458446
-- 
Your team curtin developers is subscribed to branch curtin:master.


-- 
Mailing list: https://launchpad.net/~curtin-dev
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~curtin-dev
More help   : https://help.launchpad.net/ListHelp

Reply via email to