configure.flexfs (Enterprise)
configure.flexfs is the administrative CLI for managing flexFS Enterprise resources. It communicates with the admin server REST API to create, list, show, update, and delete resources such as volumes, accounts, block stores, and proxy groups.
Modes of Operation
Section titled “Modes of Operation”REPL Mode (Interactive)
Section titled “REPL Mode (Interactive)”When run without arguments in a terminal, configure.flexfs launches an interactive shell with command history, tab completion, and a persistent prompt:
$ configure.flexfs __ _ _____ ____ / _| | _____ _| ___/ ___| | |_| |/ _ \ \/ / |_ \___ \ | _| | __/> <| _| ___) | |_| |_|\___/_/\_\_| |____/
Interactive Management ShellType 'help' for commands or 'exit' to quit.configure.flexfs>In REPL mode, type commands directly without the configure.flexfs prefix:
configure.flexfs> list volumesconfigure.flexfs> show volume my-volumeconfigure.flexfs> create volume --name my-volume --metaStoreID 1 --blockStoreID 1configure.flexfs> exitCommand history is saved to disk and persists across sessions. Tab completion works for commands, resource names, and flag names.
Single-Command Mode
Section titled “Single-Command Mode”Any command can be run directly from the shell without entering the REPL:
configure.flexfs list volumesconfigure.flexfs show volume my-volumeconfigure.flexfs create volume --name my-volume --metaStoreID 1 --blockStoreID 1This mode is suitable for scripting and automation.
JSON Output
Section titled “JSON Output”Add --json to any command for machine-readable output:
configure.flexfs list volumes --jsonconfigure.flexfs show volume my-volume --jsonCredential Initialization
Section titled “Credential Initialization”Before using configure.flexfs, initialize its credentials file with the admin server address and an account token:
configure.flexfs init creds --adminAddr admin-host:443 --token $TOKENIf --token is omitted, the command prompts interactively.
init creds Flags
Section titled “init creds Flags”| Flag | Default | Description |
|---|---|---|
--adminAddr | (required) | Admin server address (host:port) |
--token | (prompt) | Account auth token (UUID) |
--force | false | Overwrite an existing credentials file |
The credentials file is a TOML file written with 0600 permissions:
adminAddr = "admin-host:443"token = "$TOKEN"Remove Credentials
Section titled “Remove Credentials”configure.flexfs deinit credsVerb Commands
Section titled “Verb Commands”| Verb | Description |
|---|---|
list <resource> | List all resources of a type, with optional filter flags |
list all | List all resources across every type |
show <resource> <id> | Show full details of a single resource |
create <resource> --field=value ... | Create a new resource |
update <resource> <id> --field=value ... | Update an existing resource |
delete <resource> <id> | Delete a resource |
Resource Types
Section titled “Resource Types”configure.flexfs manages 10 resource types:
| Resource | List Command | Primary Key |
|---|---|---|
| Accounts | list accounts | id |
| Block APIs | list block-apis | code |
| Block Stores | list block-stores | id |
| Meta Stores | list meta-stores | id |
| Providers | list providers | code |
| Proxy Groups | list proxy-groups | id |
| Regions | list regions | providerCode + code |
| Volumes | list volumes | id (or name) |
| Volume Proxy Groups | list volume-proxy-groups | volumeID + proxyGroupID |
| Volume Tokens | list volume-tokens | token |
Accounts
Section titled “Accounts”User accounts. Created automatically during installation; managed with update.
Fields (update): name, email, token
configure.flexfs update account <id> --name "Admin User" --email admin@example.comBlock APIs
Section titled “Block APIs”Read-only lookup table of supported block storage API codes: s3, gcs, azure, oci.
configure.flexfs list block-apisBlock Stores
Section titled “Block Stores”Object storage backend configurations. See Block Stores for full details.
Fields (create): providerCode (required), regionCode (required), apiCode (required), bucket (required), username, password, address, prefix
Fields (update): username, password, address
configure.flexfs create block-store \ --providerCode aws --regionCode us-east-1 --apiCode s3 \ --bucket my-bucket --prefix flexfs \ --username $USERNAME --password $PASSWORDMeta Stores
Section titled “Meta Stores”Metadata server registrations. See Metadata Stores for full details.
Fields (create): providerCode (required), regionCode (required), address (required), token (auto-generated if omitted)
Fields (update): token, address
configure.flexfs create meta-store \ --providerCode aws --regionCode us-east-1 \ --address meta-host:443Providers
Section titled “Providers”Cloud provider definitions. See Providers and Regions for full details.
Fields (create): code (required), name (required)
Fields (update): code, name
configure.flexfs create provider --code aws --name "Amazon Web Services"Proxy Groups
Section titled “Proxy Groups”Groups of proxy servers. See the Proxy Server documentation.
Fields (create): providerCode (required), regionCode (required), addresses (required, comma-separated)
Fields (update): addresses
configure.flexfs create proxy-group \ --providerCode aws --regionCode us-east-1 \ --addresses proxy1:443,proxy2:443Regions
Section titled “Regions”Cloud regions under a provider. See Providers and Regions for full details.
Fields (create): providerCode (required), code (required), name (required)
Fields (update): code, name
configure.flexfs create region \ --providerCode aws --code us-east-1 --name "US East (N. Virginia)"Volumes
Section titled “Volumes”Filesystem volumes. See Volume Management for full details.
Fields (create): metaStoreID (required), blockStoreID (required), name (required), id, maxBlocks, maxInodes, maxProxied, flags, blockSize, compression, encryption, retention, notes
Fields (update): metaStoreID, blockStoreID, name, maxBlocks, maxInodes, maxProxied, flags, retention, notes
Volumes can be referenced by name or UUID in show, update, and delete commands.
Deleting a volume retires it rather than permanently removing it.
Volume Proxy Groups
Section titled “Volume Proxy Groups”Associations between volumes and proxy groups.
Fields (create): volumeID (required, accepts name), proxyGroupID (required)
configure.flexfs create volume-proxy-group \ --volumeID my-volume --proxyGroupID 1List with --volumeName to filter by volume:
configure.flexfs list volume-proxy-groups --volumeName my-volumeVolume Tokens
Section titled “Volume Tokens”Access tokens for mounting volumes. See Volume Tokens for full details.
Fields (create): volumeID (required, accepts name), token, mountPath, flags, notes
Fields (update): mountPath, flags, notes
configure.flexfs create volume-token \ --volumeID my-volume \ --mountPath /data/project \ --flags roList with --volumeName to filter by volume:
configure.flexfs list volume-tokens --volumeName my-volumeFiltering
Section titled “Filtering”All list commands accept filter flags corresponding to the resource’s columns. For example:
configure.flexfs list volumes --name my-volumeconfigure.flexfs list block-stores --providerCode awsconfigure.flexfs list volume-tokens --volumeName my-volumeVolume tokens and volume proxy groups also accept the --volumeName convenience filter, which resolves a volume name to its ID before querying.
Persistent Flags
Section titled “Persistent Flags”| Flag | Default | Description |
|---|---|---|
--credsFile | ~/.flexfs/configure/creds | Credentials file path |
--json | false | Output results as JSON |