How To Install and Boot VMWare VSphere/ESXi from Persistent Memory (or not)

How To Install and Boot VMWare VSphere/ESXi from Persistent Memory (or not)

In a previous post I described how to install and boot Linux using only Persistent Memory, no SSDs are required. For this follow on post, I attempted to install VMWare VSphere/ESXi v7.0u2 onto the persistent memory.

TL;DR - It doesn’t work. The installer doesn’t list the PMem devices, and I was unable to find a way to manually select the PMem device(s).

I assume you followed the previous post to configure sector namespaces that we’ll use to install ESXi.

Create a Bootable VMWare VSphere/ESXi USB Drive

You can download an evaluation copy of VMWare VSphere/ESXi from https://www.vmware.com/go/get-free-esxi . You will need to login or create a new account before downloading.

Once the ISO has been downloaded, identify and wipe the USB drive:

$ sudo lsblk -o +model
NAME                     MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT MODEL
sda                        8:0    1  29.9G  0 disk            Flash Drive FIT

$ sudo wipefs -a /dev/sda
/dev/sda: 5 bytes were erased at offset 0x00008001 (iso9660): 43 44 30 30 31
/dev/sda: 2 bytes were erased at offset 0x000001fe (dos): 55 aa
/dev/sda: 8 bytes were erased at offset 0x00000200 (gpt): 45 46 49 20 50 41 52 54
/dev/sda: calling ioctl to re-read partition table: Success

Use the dd utility to write the ISO contents to the USB device.

$ sudo dd if=VMware-VMvisor-Installer-7.0U2a-17867351.x86_64.iso of=/dev/sda bs=8M status=progress oflag=direct

Install VMWare vSphere/ESXi

Reboot the system and press F6 to enter the Boot Manager. Select the USB device for the installation media.

After a few moments, you should be presented with the Welcome screen.

Press Enter to continue and accept the EULA agreement using F11

Unfortunately, none of the PMem devices are listed in the available drives to install vSphere/ESXI, and I see no way to manually add them.

Since I can’t select the PMem device(s), there’s no way to continue with the installation. My experiment ended here.

How To Verify Linux Kernel Support for Persistent Memory

How To Verify Linux Kernel Support for Persistent Memory

Linux Kernel support for persistent memory was first delivered in version 4.0 of the mainline kernel, however, it was not enabled by default until version 4.2.

If you use a Linux distribution that uses kernel 4.2 or later, or the distro backports features in to an older kernel, you will almost certainly have persistent memory support enabled by default. It is still worth verifying what features are enabled and disabled as this may vary by distro and release version for the very latest persistent memory features.

Read More
A Quick Guide to Signing Your Git Commits

A Quick Guide to Signing Your Git Commits

It is important to sign Git commits for your source code to avoid the code being compromised and to confirm to the repository gatekeeper that you are who you say you are. Signing guarantees that my code is my work, it is my copyright and nobody else can fake it. This guide provides the necessary steps to creating private & public keys so you can sign your Git commits.

On Linux or Mac, if you have setup a development environment then you have all the necessary tools for signing.

Read More
How To map VMWare vSphere/ESXi PMem devices from the Host to Guest VM

How To map VMWare vSphere/ESXi PMem devices from the Host to Guest VM

In this post, we’ll use VMWare ESXi 7.0u3 to create a Guest VM running Ubuntu 21.10 with two Virtual Persistent Memory (vPMem) devices, then show how we can map the vPMem device in the host (ESXi) to “nmem” devices in the guest VM as shown by the ndctl utility.

If you’re new to using vPMem or need a refresher, start with the VMWare Persistent Memory documentation.

Table of Contents

Create a Guest VM with vPMem Devices

The procedure you use may be different from the one shown below if you use vSphere or an automated procedure.

Read More