Skip to content

Storage Adapters ​

Storage adapters dictate how the host communicates with underlying storage hardware or network storage targets. Vapor supports local hardware controllers, Fibre Channel Host Bus Adapters (HBAs), and software-defined storage connections.


Local and Hardware Adapters ​

Navigate to Storage > Adapters to view all detected Host Bus Adapters (HBAs). This includes local AHCI/SATA controllers and any PCIe RAID or Fibre Channel cards installed.

  • Clicking on an HBA will list the specific block devices associated with it.
  • Rescan: If you hot-plug a new drive or reconfigure a hardware RAID array, execute a rescan operation to force the OS to detect the new storage geometry without rebooting.

iSCSI Software Adapter ​

Vapor provides built-in support for mapping remote iSCSI storage targets over standard Ethernet interfaces. The iSCSI interface is managed as a singleton software adapter.

1. Adapter Configuration Modes ​

Go to Storage > Adapters and select the iSCSI Software Adapter to configure the following settings:

  • Initiator IQN: Define the unique initiator name (e.g., iqn.2026-03.com.awanio.vapor:node-01).
  • Connection Mode:
    • single_path: Connection goes through a single network gateway path.
    • multipath: Connection spans multiple physical paths for failover and aggregation.
  • Node Startup: Configure whether sessions connect automatically on boot (automatic) or require manual activation (manual).

2. Port Bindings ​

For multipath setups, bind specific host network interfaces (such as enp2s0 and enp3s0) to the software iSCSI initiator. Port bindings separate storage traffic onto dedicated subnets and NICs.

  • Bind Port: POST /api/v1/storage/iscsi/adapter/port-bindings with payload {"interface_name": "enp2s0"}.
  • Delete Binding: DELETE /api/v1/storage/iscsi/adapter/port-bindings/{binding_id}.

3. Target Discovery ​

To locate target IQNs on your SAN, execute a discovery call:

  • Discover Targets: POST /api/v1/storage/iscsi/adapter/discover with target portal (IP:port) and optional binding_portals (interfaces mapped to specific portal IPs). This performs an iSCSI SendTargets request.
  • View Discovered Targets: GET /api/v1/storage/iscsi/adapter/targets lists all resolved SAN IQNs.

4. Active Sessions and Authentication ​

Log in to a discovered target IQN to mount its LUNs:

  • Session Login: POST /api/v1/storage/iscsi/adapter/sessions accepts target_iqn, portal, CHAP credentials (username/password), and binding_portals.
  • Session List: GET /api/v1/storage/iscsi/adapter/sessions returns active iSCSI session identifiers (session_id).
  • Logout Session: DELETE /api/v1/storage/iscsi/adapter/sessions/{session_id}.
  • Forget Target: To clean up discovered metadata, send POST /api/v1/storage/iscsi/adapter/targets/forget with target_iqn and portal.

5. Rescan & LUN Mapping ​

After establishing a session, rescan the iSCSI bus to discover new volumes:

  • Bus Rescan: POST /api/v1/storage/iscsi/adapter/rescan forces a rescan of all active sessions.
  • Retrieve LUNs and Devices: Use GET /api/v1/storage/iscsi/adapter/luns and GET /api/v1/storage/iscsi/adapter/devices to verify mapping to local block paths (e.g. /dev/sdb or /dev/disk/by-id/*).

Multipath I/O (MPIO) Management ​

When running the iSCSI adapter in multipath mode, Vapor integrates with the host's multipathd service to manage path failover:

  • List Multipath Devices: GET /api/v1/storage/multipath/devices lists active multipath maps.
  • Get Device Details: GET /api/v1/storage/multipath/devices/{wwid} returns state, policy, and capacity for a specific device by its World Wide Identifier (WWID).
  • List Device Paths: GET /api/v1/storage/multipath/devices/{wwid}/paths shows the status (active, faulty, enabled) of each physical path.
  • Update Routing Policy: PATCH /api/v1/storage/multipath/devices/{wwid}/policy dynamically changes the routing policy (e.g., failover or round_robin).
  • Rescan Multipath: POST /api/v1/storage/multipath/rescan triggers a host-wide re-evaluation of multipath devices.