What is Hypernode Object Storage?
Hypernode Object Storage provides an option to store media files, assets, backups, documents, etc in a persistent, remote storage container.
Object storage eliminates redundancy and provides a centralized, scalable solution for storing application assets, session data, and backups.
By default, media files are stored in the same filesystem that contains the application. This is inefficient for complex, multi-server configurations, and can result in degraded performance when sharing resources.
With Object Storage you get:
Effortless Data Sharing – Seamless access across all Hypernodes
Full Access Control & Security – Secure and manage your data with ease
Safe Backup & Monitoring – Ensure reliability with built-in insights
Getting started with Object Storage
CLI option
hypernode-object-storage --help
Creating a Hypernode Object Storage Workspace
SSH into your server.
Run
hypernode-object-storage create
Fill in the prompts with a name and desired storage.
Confirm your order and give it a few minutes before your storage is ready.
Note: You can use one object storage across multiple Hypernodes. But you can only use one object storage space per Hypernode.
If you receive this error, please make sure to enable “Allow billing through CLI in the relevant Hypernode settings page”
You do not have permission to order object storage for this Hypernode. Please ask the Hypernode owner to enable 'Allow billing through the CLI' in the Control Panel settings or via the API
Retrieve object storage
Run
hypernode-object-storage info
If you want to retrieve your credentials for the workspace pass in the flag
--with-credentials
.
The output should look like this
app@testhypernode ~ # hypernode-object-storage info
+--------------------------------------+--------------+--------+------------+----------------+---------------+---------------+
| UUID | Name | Plan | Hypernodes | Management URL | Access Key | Secret Key |
+--------------------------------------+--------------+--------+------------+----------------+---------------+---------------+
| d8770125-6c90-4770-b00f-1716f699990a | test-storage | OS50GB | testnode12 | **sensitive** | **sensitive** | **sensitive** |
+--------------------------------------+--------------+--------+------------+----------------+---------------+---------------+
You can use the credentials and the URL now to configure remote storage for your application with the help of this document.
Cancel/Delete Object Storage
To cancel an Object Storage, you can ssh into the Hypernode that is linked to that Object Storage and run hypernode-object-storage cancel
Note: The cancellation will be in effect from the end of the month. Also if you change your mind or forgot to pull some data. It will still be available for 7 days after the cancellation. You can always reach out to the support team for help if that happens.
Managing objects in object storage
You can manage your objects using the hypernode-object-storage objects
subcommand.
It supports all common operations–listing, copying, moving, and deleting files–while also allowing you to sync files in the background and monitor the progress of an ongoing sync.
app@testhypernode ~ # hypernode-object-storage objects --help
usage: hypernode-object-storage objects [-h] {sync,cp,ls,mv,rm,show} ...
Manage objects in object storage
positional arguments:
{sync,cp,ls,mv,rm,show}
sync Synchronize files between a local directory and an object storage location
cp Copy a file or object from one location to another
ls List objects in an S3 bucket or folder
mv Move or rename a file or object
rm Delete an object from S3
show Display the current status of an ongoing sync process
options:
-h, --help show this help message and exit
It is important to note that hypernode-object-storage objects
supports all optional flags available in aws s3
, allowing you to customize its behavior for advanced configurations.
Syncing files and monitoring progress
Syncing files between your local directory and object storage is simple. Run the following command:
app@testhypernode ~ # hypernode-object-storage objects sync /example/local/path/ s3://example/bucket/uri/
Syncing objects from /example/local/path/ to s3://example/bucket/uri/...
Sync process started with PID 1234 in the background.
The sync
operation runs in the background, and you can monitor its progress by using the show
command, for example:
app@testhypernode ~ # hypernode-object-storage objects show 1234
Completed 9.7 GiB/~30.0 GiB (118.2 MiB/s) with ~5 file(s) remaining (calculating...)
If you run the show
command after the sync operation has finished, you’ll see output like this:
app@testhypernode ~ # hypernode-object-storage objects show 1234
Process 1234 does not exist anymore
UI option - Control Panel
Coming soon