Skip to content

StarWind VSAN LVM (starlvm)

PegaProx supports StarWind's starlvm storage type as first-class shared block storage - recognise, create, edit and rescan it, and install the StarWind SAN plugin across your cluster nodes with one click.

The value of starlvm over plain shared LVM is thin-provisioned snapshots on a shared LUN: each guest gets its own thin pool on the shared volume group, so you can take real read-only snapshots on shared storage - something plain shared-LVM cannot do.

Third-party component

StarWind VSAN and its Proxmox SAN plugin are products of StarWind Software and are external to PegaProx. PegaProx integrates with the plugin but provides no support or warranty for StarWind software itself - for plugin issues contact starwindsoftware.com. You also need a StarWind-provided shared LUN (iSCSI/NVMe-oF) presented to every node.

Requirements

  • The StarWind Proxmox SAN plugin installed on every node that will use the storage (see One-click plugin install).
  • A shared block device / LUN visible on all nodes, with a shared LVM volume group on top of it.
  • PVE 8 or PVE 9 (the installer picks the matching plugin build automatically).

One-click plugin install

From Datacenter → Storage → Add → StarWind LVM, use the Install StarWind plugin button, or call the API. PegaProx installs the plugin on each node over SSH and:

  • builds a signed deb822 apt source itself - the repository key is fetched over HTTPS and pinned with Signed-By; PegaProx never uses trusted=yes (unlike the vendor's own script),
  • picks the PVE 8 or PVE 9 package automatically (and swaps the package on an 8→9 upgrade),
  • is idempotent (skips a node that already has the plugin),
  • restarts pvedaemon / pveproxy so the starlvm type registers.

The repository URL and key default to StarWind's official endpoints (repo.starwind.com) and are admin-overridable behind a strict URL allow-list. Installation is gated on the admin.settings permission and is audit-logged.

Note

Restarting pvedaemon/pveproxy in parallel across the nodes causes a brief API blip on large clusters. A partial install is reported per node (it is not automatically rolled back).

Creating a starlvm storage

Datacenter → Storage → Add → StarWind LVM 🛰️. The only required field is the volume group name (vgname) - the shared LVM VG backed by the StarWind LUN. Content defaults to images,rootdir (selectable) and the storage is created as shared.

Rescan (available from the storage list) refreshes the SCSI bus, multipath, pvresize and the LVM view so a grown LUN is picked up without a node reboot.

API Endpoints

Method Endpoint Description
POST /api/clusters/{id}/storage/starlvm/install Install the StarWind SAN plugin on the cluster nodes (admin-gated, audited)
GET /api/clusters/{id}/storage/starlvm/status Per-node install state of the plugin (read-only probe)
POST /api/clusters/{id}/storage Create a storage - type=starlvm requires vgname
POST /api/clusters/{id}/storage/{name}/rescan Rescan the SCSI bus / multipath / LVM for this storage

Notes

  • starlvm is classified as shared block storage, so it participates in live and cross-cluster migration like any other shared storage.
  • On PVE 9, Proxmox's native snapshot-as-volume-chain overlaps some of starlvm's value; starlvm remains useful for shared-LUN thin snapshots and StarWind VSAN deployments.