Elasto
Warning: This project is no longer actively maintained and should not be used.
Summary
Elasto is a lightweight library and client utility for managing and manipulating cloud storage objects via REST protocols. Microsoft Azure and Amazon S3 cloud storage protocols are supported.
Installation
Prebuilt packages for GNU/Linux distributions are available for download from the Elasto project website: http://elastocloud.org/. Alternatively, Elasto can be built from source using the Waf build framework.
libevent, libexpat and openssl (libcrypto) development libraries are required for building.
To compile the library and client, run the following from the top of the source tree:
> ./waf configure > ./waf build
After building, Elasto can be installed by running:
> ./waf install
Running (short version)
Azure
-
Create an Azure account
-
Download the PublishSettings file for the account:
https://manage.windowsazure.com/publishsettings/index -
Start the Elasto client, connecting to the Azure Blob Service:
> elasto -s Azure_PublishSettings_File
Amazon S3
-
Create Amazon S3 account
-
Create an IAM group with S3 access, assign a new user to the group:
https://console.aws.amazon.com/iam/home#home -
Download the user’s access key (credentials.csv) file
-
Start the Elasto client:
> elasto -k iam_creds_file
Running (not so short version)
Azure
First step is to create an Azure account at https://azure.microsoft.com.
Authentication
The Elasto client can authenticate with Azure using one of two credentials parameters:
- Access Key
-
An Access Key is associated with a specific storage account, and only allows access to Blob and File Service objects nested within the corresponding account. E.g.
> elasto -K access_key
- PublishSettings
-
A PublishSettings file can be used to create and manipulate storage accounts, as well as underlying Blob and File Service objects. It can be downloaded at https://manage.windowsazure.com/publishsettings/index.
The file contains security sensitive information, so should be kept private.
> elasto -s PublishSettings_path
Service URI
- Azure Blob Service (Block Blobs - default)
> elasto -u abb:// ...
- Azure Blob Service (Page Blobs)
> elasto -u apb:// ...
- Azure File Service
> elasto -u afs:// ...
Amazon S3
Create an Amazon S3 account at https://aws.amazon.com/s3/.
Authentication
Create an IAM group with S3 access, assign a new user to the group:
https://console.aws.amazon.com/iam/home#home
→ Create a New Group of Users
The IAM user creation wizard allows for the download of access credentials. Select "Generate an access key for each User", and subsequently "Download Credentials".
Commands can then be issued by running the elasto client binary with the -k argument. E.g.
> elasto -k iam_creds_file <command>
Alternatives
Ceph |
Open-source, distributed storage system. https://ceph.com |
Azure SDK for Rust | |
AWS SDK for Rust |