DigitalOcean, similar to Amazon S3 and Google Cloud Storage, has its own cloud storage services called Spaces. It is a highly reliable, scalable object storage for backups, logs, archives, or web assets and can be easily managed via the CLI, API, or any S3 compatible tools.
DigitalOcean Spaces Overview
DigitalOcean initially started offering SSD storage space and later introduced block storage built with CEPH. Spaces like block storage are also built with CEPH and it is an object storage service built for the cloud environment. It uses an S3-compatible object storage API, therefore it can be hooked on S3 compliant applications. It is easy to set up without any complicated configuration and put to use immediately. Once the setup is complete, create a space, then you can start uploading files via a simple web interface.
DigitalOcean Spaces Key Features
Since Spaces is built with CEPH, therefore, it inherits the characteristics of CEPH the open-source widely adopted distributed storage. CEPH was built for redundancy and is able to recover any node failure without compromising data integrity and availability.
Content Delivery Network (CDN)
Content Delivery Network is a globally distributed network of web servers to deliver static content faster. The static content can be any sort of data including webpages, streaming audio and video, and any large data packages. Since the data is geographically distributed, it avoids bottlenecks and content gets delivered to the users twice faster rather than content from a single dedicated server. Each point of presence (PoP) of the server sends contents to the user closest to it. Spaces come with free CDN which helps to deliver content faster and securely by minimizing page load times with reduced bandwidth. CDN can be enabled at any time with a few quick configurations. Spaces CDN points of presence are available in any region Spaces are available.
Unique URLs with Specific Naming Conventions
Spaces subscription allows you to have multiple spaces with unique URLs. Each URL has a pattern which clearly shows the region storage is in and the space name: region.digitalspaces.com/spacename. When Spaces is CDN enabled, each request comes with a unique URL, including the URL's query string, is treated as a unique asset, and has its own cache.
DigitalOcean Spaces Constraints
The following are some of the Spaces limitations reported by DigitalOceans which is good to know before subscribing to it.
- You still need to pay for space that you have not used
- Sharing ownership of Spaces is currently per account, not per Space
- You need 3rd party tools to set permissions recursively
- You cannot delete more than 10000 files AT ONCE via a control panel
- They have yet to support many regions like Amazon or Google Cloud
Backup Ninja on DigitalOcean Spaces
DigitalOcean Spaces works well as a cloud storage provider for many S3 compliant tools and services. Backup Ninja is a database backup tool which allows you to configure your storage either locally or using a cloud provider like DigitalOcean, so if you have a database and a cloud storage space.
Configure DigitalOcean as a Cloud Storage on Backup Ninja
Once you have got a space configured on Spaces in DigitalOcean, the access key and its password are all you need to create the credential on Backup Ninja. The following are the steps to get on Backup Ninja.
Select DigitalOcean as your cloud provider
Choose the preferred region closest to you.
Enter your credentials. You need to copy the access key and secret key from the Spaces (in DigitalOcean) access key panel.
Complete your configuration by giving your cloud storage a name. The cloud storage name will be used when you want to schedule your backups later.
Schedule Your Backups on DigitalOcean Using Backup Ninja
Now that you have configured your DigitalOcean Spaces credentials on Backup Ninja, you can start scheduling your backup on spaces via Backup Ninja with the following steps.
Fill in your schedule settings. This is where you name your schedule and select the database server for backup.
Select the storage location. Here you can select the DigitalCloud cloud credential created earlier from the drop down for Cloud Credentials. By default, the retention period has been set to 7 days.
Next is to configure some simple settings for your backup schedule including its name, compression type, and encryption. You can choose to leave these settings at its default values.
The last step is to specify if the backup schedule needs to run hourly, daily, weekly, or monthly.
Like other cloud storage providers, DigitalOcean has many different products, including cloud storage service called Spaces. While it provides many similar features to its competitors like AWS, Google Cloud Storage, DigitalOcean stands out as a reliable developer tool. Its capabilities make it a one stop solution for developers as it has Droplets for virtual machines, Spaces for storage support for containers like Kurbenates to deploy and manage on the cloud. As for the downside, it can be rather tricky to setup a complete ecosystem DigitalOcean cost effectively. It also has a relatively complicated control panel which makes it not a user-friendly platform for beginners. To wrap it up, DigitalOcean is great for mid-range users with adequate technical knowledge, a moderate budget, and in the lookout for high availability and security.