Using NVMEs
In the JSC Cloud environment there are hosts available equipped with an 1TB Intel NVMe. Access to those devices is exclusive.
Warning
NVMEs are available via PCI passthrough. Because of that, live-migrations are not supported and maintenance actions on the cloud infrastructure will affect your VMs. Do not use NVMe devices for databases and data repositories, limit the usage to short-living, reproducible computing/data-processing jobs!
In case no NVMe is left, OpenStack will fail to schedule your VM.
Prerequesits
A VM needs to be prepared for being able to use a NVMe assigned to it.
Please pick one of the NVMe flavors mentioned at Virtual Machine Types.
Create a VM with the Rocky Linux 8.7 image and a NVMe flavor. You might take a look on the First Steps Page.
$ openstack server create --flavor SCS-4L:16:20n-z3-nvme --security-group your_group --key-name your_key --network your_net --image "RockyLinux 8.7" nvme-vm
Access/Mount the NVMe
The NVMe is directly accessible, if you want to take a look on its device:
$ sudo dnf install pciutils
$ lspci -v | grep -i nvme
00:05.0 Non-Volatile memory controller: Intel Corporation NVMe Datacenter SSD [3DNAND, Beta Rock Controller] (prog-if 02 [NVM Express])
Subsystem: Intel Corporation NVMe Datacenter SSD [3DNAND] SE 2.5" U.2 (P4510)
The blockdevice it offers is as well shown via:
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 252:0 0 25G 0 disk
-vda1 252:1 0 100M 0 part /boot/efi
-vda2 252:2 0 1000M 0 part /boot
-vda3 252:3 0 1M 0 part
-vda4 252:4 0 23.9G 0 part /
nvme0n1 259:0 0 931.5G 0 disk
-nvme0n1p1 259:1 0 931.5G 0 part
and can be mounted right away via:
$ sudo mount /dev/nvme0n1p1 /mnt
$ [centos@name-webinar ~]$ sudo dd if=/dev/zero of=/mnt/testfile.dat bs=1G count=1 oflag=direct
1+0 records in
1+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 2.15307 s, 499 MB/s