Install
Installing flexBlock means placing one static binary on the host, installing the grant Paradigm4 issued for your volume, and making sure the host can reach the bucket.
Before you begin, check the Requirements. You need:
- Linux 6.1 or newer, with
ublk_drvloadable, and root. - A cache device: a local NVMe drive or partition.
- A bucket and prefix in object storage, the prefix empty.
- Your grant file, signed by Paradigm4, naming both.
-
Install the binary
Paradigm4 delivers
flexblockas a statically linked executable forx86_64andaarch64. Copy the one for your architecture into the path, load the ublk module, and confirm the binary runs.Terminal window sudo install -m 0755 flexblock /usr/local/bin/flexblocksudo modprobe ublk_drvflexblock --versionflexblock --helpTo load
ublk_drvat every boot, list it in a modules-load file. The systemd unit also loads it before each start; see Running Under systemd.Terminal window echo ublk_drv | sudo tee /etc/modules-load.d/flexblock.conf -
Install the license grant
Your grant is a small JSON file signed by Paradigm4. It is specific to one bucket and prefix, and every
flexblockcommand on every host that will serve the volume needs a copy. Install it whereflexblocklooks by default:Terminal window sudo install -D -m 0644 grant.json /etc/flexblock/grant.jsonOr keep it elsewhere and point at it with the global
--grant-fileflag. The grant contains no secrets and no object-storage credentials; it identifies the volume and the terms under which it may be served. See Licensing. -
Configure credentials
Configure your object storage credentials as usual, for example an instance role or principal, a credentials file, or environment variables. FlexBlock never takes credentials on the command line. See Credentials.
-
Verify the grant and credentials
Check that the grant and your credentials agree before touching any device:
Terminal window sudo -E flexblock show --remoteshow --remoteuses only read and list.init,attachandstartalso check write, overwrite and delete before they change anything.
A permission problem surfaces as a permanent storage error naming the provider, the operation and the HTTP status, for example gcs LIST flexblock/acme-0001/ [403], and the command exits with code 14.
Other ways to run flexBlock
Section titled “Other ways to run flexBlock”- Container image. FlexBlock can also run from its runtime container image. See Container Image.
- Without NVMe or a cloud bucket. For a trial, a regular file can stand in for the cache device and a local emulator for the bucket. See Evaluating Without Hardware.
Next steps
Section titled “Next steps”- Credentials: what the identity needs, per provider.
- Your First Volume: create, serve, mount and stop a volume.