docs: add requirements for running with ANA
Document the prerequisites for Asymmetric Namespace Access (ANA),
including rebuilding the kernel for NixOS.
@@ -91,7 +91,40 @@ In order to use the full feature set of Mayastor, some or all of the following c
```bash
modprobe nbd nvmet nvmet_rdma nvme_fabrics nvme_tcp nvme_rdma nvme_loop
```
-* An NVMe device. (Typically via PCI-E through an standard slot or [M.2][m-dot-2] port)
+* For Asymmetric Namespace Access (ANA) support (early preview), the following kernel build configuration enabled:
+ + `CONFIG_NVME_MULTIPATH`: enables support for multipath access to NVMe subsystems
+
+ This is usually already enabled in distributions kernels, at least for RHEL/CentOS 8.2, Ubuntu 20.04 LTS, and SUSE Linux Enterprise 15.2.
+
+ On some distributions such as RHEL 8, the feature must be enabled manually:
+
+ ```sh
+ # /etc/modprobe.d/nvme-multipath
+ options nvme_core multipath=1
+ ```
+
+ followed by reloading the `nvme-core` module or rebooting.
+
+ To build this on NixOS:
+
+ ```nix
+ # /etc/nixos/configuration.nix
+ boot.kernelPackages = pkgs.linuxPackages;
+ boot.kernelPatches = [ {
+ name = "nvme-multipath";
+ patch = null;
+ extraConfig = ''
+ NVME_MULTIPATH y
+ '';
+ } ];
+ ```
+
+ followed by:
+
+ ```sh
+ sudo nixos-rebuild boot
+ ```
+* An NVMe device. (Typically via PCI-E through a standard slot or [M.2][m-dot-2] port)
* A version of [`nix`][nix-install] configured as in the [build guide.][doc-build]
## Running binaries directly
@@ -273,4 +306,3 @@ production Mayastor deployment and operation instructions.
[lxd]: https://linuxcontainers.org/
[libvirtd]: https://libvirt.org/index.html
[terraform-readme]: ./terraform/readme.adoc
-[aarch64-branch]:
\ No newline at end of file
