Exporter ISCSI service driver
Project description
iSCSI server driver
jumpstarter-driver-iscsi provides a lightweight iSCSI target implementation powered by the Linux
RFC-tgt framework via the
rtslib-fb Python bindings.
⚠️ The driver creates and manages an iSCSI target (server). To access the exported LUNs you still need a separate iSCSI initiator (client) on the machine running your test-code / DUT.
Installation
rtslib-fb relies on the in-kernel LIO target framework which is packaged
differently by each distribution. You should be able to run sudo targetcli
without errors before you start the Jumpstarter driver.
Fedora:
$ sudo dnf install targetcli python3-rtslib
Finally, install the driver itself from the Jumpstarter package index:
:substitutions:
$ pip3 install --extra-index-url {{index_url}} jumpstarter-driver-iscsi
Configuration
The driver is configured through the exporter YAML file. A minimal example
exports the local file disk.img as a 5 GiB LUN:
export:
iscsi:
type: jumpstarter_driver_iscsi.driver.ISCSI
config:
root_dir: "/var/lib/iscsi"
target_name: "demo"
remove_created_on_close: false # Keep disk images persistent (default)
# When size_mb is 0 a pre-existing file size is used.
Config parameters
| Parameter | Description | Type | Required | Default |
|---|---|---|---|---|
root_dir |
Directory where image files will be stored | str | no | /var/lib/iscsi |
iqn_prefix |
IQN prefix to use when building the target IQN | str | no | iqn.2024-06.dev.jumpstarter |
target_name |
The target name appended to the IQN prefix | str | no | target1 |
host |
IP address to bind the target to. Empty string will auto-detect | str | no | auto |
port |
TCP port the target listens on | int | no | 3260 |
remove_created_on_close |
Automatically remove created files/directories when driver closes | bool | no | false |
File Management
The iSCSI server driver automatically tracks disk image files and directories created during the session. By default, remove_created_on_close is set to false to preserve disk images that are typically reused across test sessions. Set to true if you want temporary disk images to be cleaned up automatically.
API Reference
.. autoclass:: jumpstarter_driver_iscsi.client.ISCSIServerClient()
:members: start, stop, get_host, get_port, get_target_iqn, add_lun, remove_lun, list_luns, upload_image
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file jumpstarter_driver_iscsi-0.8.1.tar.gz.
File metadata
- Download URL: jumpstarter_driver_iscsi-0.8.1.tar.gz
- Upload date:
- Size: 12.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.22
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cf3fedb8c45729d216d206e2530f9c3b58e1d4504bde782340d7d593027f00ea
|
|
| MD5 |
8f65fae06108f20c8aed27c925baa0fa
|
|
| BLAKE2b-256 |
cd1c0ae8f6dbba5072590cefa28b37d435df229cadff68d21d8a95fe37b16155
|
File details
Details for the file jumpstarter_driver_iscsi-0.8.1-py3-none-any.whl.
File metadata
- Download URL: jumpstarter_driver_iscsi-0.8.1-py3-none-any.whl
- Upload date:
- Size: 11.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.22
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bbfb7afb06a75c549b932efeae89e48cb23be03ab79df1914200d73d438824d2
|
|
| MD5 |
ffac718af7a08ce67de8adf660247019
|
|
| BLAKE2b-256 |
e09e3323ced9795bc16e12eefd5c1c61f847cb1cef97a8f55531ecd9544fd0f3
|