This feature is still in the beta-testing period. Specifications and availability are subject to change.
S3-compatible* object storage is now available on the Vultr cloud. Our object storage technology is affordable, scalable, and easy to integrate into your existing solutions. This article provides an overview on object storage and instructions for getting started with it.
Object storage is a web-accessible service for storing and retrieving files. Files are referred to as "objects". Objects uploaded to object storage can be accessed privately or publicly on the web. Object storage supports a virtually unlimited number of objects.
Use cases for object storage include:
On the subscription listing page, you will be presented with links to order object storage and manage your existing object storage subscriptions.
Once you have ordered an object storage subscription, the subscription will show in the subscription listing. Clicking on the subscription will navigate to the subscription detail page that provides you with the necessary hostname and access keys.
Vultr's object storage is S3-compatible*. This means that it is compatible with most tools designed for Amazon S3.
Object storage is purchased on Vultr through subscriptions. A single subscription grants you a fixed amount of storage in a given location. Each subscription is isolated and has its own set of S3 access keys. If you wanted to store objects in both New Jersey and Los Angeles, you would need to purchase two subscriptions.
Each subscription provides a pair of S3 access keys. These are the keys that are used with your S3-compatible software.
There is a variety of S3-compatible software. The software you can use depends on your personal preference and your computer's operating system. Both CLI-based tools and graphical tools are generally available. We include several examples later in this document.
Objects are stored in buckets. Before you can begin uploading objects, you need to create at least one bucket. Buckets are similar to folders on a file system. Bucket names are unique in any given location. For example, I could not create two buckets named
mybucket in New Jersey. See "Rules on bucket naming" for more information.
Buckets are web-accessible by name. For example, if I created a bucket named
mybucket in New Jersey, the bucket would be available at
https://mybucket.ewr1.vultrobjects.com/ and also
ewr1.vultrobjects.com hostname portion varies by region and can be referenced in the object storage subscription listing.
Objects are uploaded to buckets. In most S3 tools, objects are "private" by default. This means that you would need the S3 access keys in order to download the object. Files can also be made "public", making them accessible on the web. Uploading
mybucket, then setting the permission to "public" would make the file accessible at
S3cmd is a command line S3 client for Linux and Mac. Our tested version was 2.0.2.
First, you'll need to configure
The wizard will ask you several questions. Use the values provided with your object storage subscription for the questions below. Replace
Access key: access123 Secret key: secret123 ... S3 Endpoint: ewr1.vultrobjects.com DNS style bucket+hostname:port: %(bucket)s.ewr1.vultrobjects.com ...
After completing the wizard, you can use
s3cmd to access your object storage.
# make bucket s3cmd mb s3://mybucket # remove bucket s3cmd rb s3://mybucket # list buckets s3cmd ls # list files in bucket s3cmd ls s3://mybucket # upload file, private access s3cmd put photo.jpg s3://mybucket/photo.jpg # upload file, public access s3cmd put -P photo.jpg s3://mybucket/photo.jpg # download file s3cmd get s3://mybucket/photo.jpg # delete file s3cmd rm s3://mybucket/photo.jpg # change access on file to public s3cmd setacl s3://mybucket/photo.jpg --acl-public # change access on file to private s3cmd setacl s3://mybucket/photo.jpg --acl-private # enable directory listing on a bucket s3cmd setacl s3://mybucket/ --acl-public # disable directory listing on a bucket s3cmd setacl s3://mybucket/ --acl-private
For more examples, see the
Cyberduck is a graphical file manager for Windows and Mac. It supports S3, FTP, and many popular file sharing services. Our tested version was 6.8.2.
Connect to Vultr object storage by clicking "Open Connection".
The "Open Connection" dialog will appear. You need to specify "
Access Key ID", and "
Password". Use the values provided with your object storage subscription.
Server" is the S3 hostname (
Access Key ID" is the S3 access key.
Password" is the S3 secret key.
Click the "Connect" button to connect. Afterwards, you can manage files with Cyberduck.
# create bucket Choose "File, New Folder" from the menu, or right click in the file area and choose "New Folder". The folder name is the bucket name. # remove bucket Right click on a bucket, click "Delete". # upload file Drag and drop a file from your computer onto the bucket. # download file Right click on a file, click "Download As...". # delete file Right click on a file, click "Delete". # change access on file to public Right click on a file, click "Info". Go to the "Permissions" tab. Click the gear on the lower left corner, and choose "Everyone" from the menu. Set the "Permission" dropdown to "READ" for the "Everyone" ACL table entry. Close the "Info" window. # change access on file to private Right click on a file, click "Info". Go to the "Permissions" tab. If "Everyone" appears in the "Access Control List (ACL)", click the gear on the lower left corner and remove the entry. Close the "Info" window. # enable directory listing on a bucket Right click on a bucket, click "Info". Go to the "Permissions" tab. Click the gear on the lower left corner, and choose "Everyone" from the menu. Set the "Permission" dropdown to "READ" for the "Everyone" ACL table entry. Close the "Info" window. # disable directory listing on a bucket Right click on a bucket, click "Info". Go to the "Permissions" tab. If "Everyone" appears in the "Access Control List (ACL)", click the gear on the lower left corner and remove the entry. Close the "Info" window.
The table below lists compatibility between Vultr object storage and the S3 protocol. Compatibility may be further limited depending on the S3 tool used to access Vultr object storage.
For download requests, the "Content-Length" header may not match the size of the file. This is because we use gzip on our webservers to improve performance. In the rare event that this is causing issues for your automation system, you can disable gzip on requests. The libcloud project is being updated to support this behavior.
|Bucket ACLs (Get, Put)||Yes|
|Bucket Access Logging||No|
|Bucket Object Versions||Yes|
|Bucket Request Payment||Yes|
|Get Bucket Info (HEAD)||Yes|
|Get Object Info (HEAD)||Yes|
|Object ACLs (Get, Put)||Yes|
|Policy (Buckets, Objects)||Yes|