When it comes to cloud hosting, you will find a lot of options at your disposal. However, there is one hosting that offers excellent services and features for developers looking to host their next big service, app, or website.
DigitalOcean is a developer’s cloud that gives control in the hands of the developers.
In this article, we will look into the DigitalOcean review and learn what it has to offer. Our review will cover its pros, cons, viability, and its use-cases when it comes to businesses.
If you are in a hurry, then you can check out the table for DigitalOcean Review.
Table 1.0 : The DigitalOcean Review Quick View
|DigitalOcean in a nutshell||The Developer Cloud|
|Virtual Server Known As||Droplets|
|Uptime Guarantee||99.99% uptime|
|Distribution||CentOS, Ubuntu, Fedora, FreeBSD, Debian|
|Custom Images Supported||Yes|
|Marketplace||Yes, offers 171 one-click apps|
|Customer Support||Offered via the ticketing system. No phone or live chat support.|
Also, check out its pros and cons!
Table 1.1: DigitalOcean Pros and Cons
|DigitalOcean Pros||DigitalOcean Cons|
|99.99% uptime||Only for advanced users|
|Lightning-fast load time||Lacks basic hosting features for beginners|
|Developer-friendly ecosystem||Limited customer support|
|Pay-as-you-use model||No cPanel|
|Good security||Expensive pricing compared to other hostings|
|Daily Backups||Droplets or storage gets deleted if you do not renew|
DigitalOcean is an American based company that launched its service in 2011. Moisey Uretsky and Ben Uretsky started the company.
Their focus was to provide a playground for developers so that they could launch their apps reliably.
They started to garner attention from the hosting community and grew exponentially, crossing half a million developers quickly!
In 2013, Netcraft recognized them as the fastest-growing cloud, even beating the likes of Amazon Web Services. In the 2014 upcoming year, they became the world's third-largest hosting company.
So, what did they offer to make the developer community tick?
They aim to provide the best possible cloud hosting with benefits like fast solid-state drive and a user-friendly platform. This way, they will attract not only developers' attention but also businesses looking for a cloud service that lets them scale with the power of the cloud.
To keep things simple, DigitalOcean offers a wide range of plans. These plans determine the basic resources that you get. These resources include RAM, CPUs, Disk space, and Bandwidth.
Once you start a server, you are free to add more resources to your plan as per your requirement. Their payment model is pay-as-you-use, where you only pay based on your usage.
Apart from that, you get root access with all the plans. As a developer, this feature is essential. It gives you the ability to tinker your project and the server on which it is hosted.
To get a better idea, let’s take a look at what you get when you buy one of their plans.
- Root access
- Several Linux distributions
- DNS management
- Solid-state drives(SSD)
- A proper control panel
- Pre-built app images
- Automated backups
- Global image transfer
- Cloud Firewalls
DigitalOcean uses the fancy name of “Droplets” for their virtual machines.
Technically, they are Linux-based virtual machines(VM). These machines are run on virtualized hardware so that they can be scaled whenever needed. So, if you create a droplet, you are virtually assigned VM on top of hardware that is part of the cloud infrastructure.
Initially, they only provided two types of droplets, i.e., Standard and CPU optimized. But with time, they introduced new droplet types to match the varied need of the users.
Right now, you can choose between three dedicated CPU plans and one shared CPU Plan. These droplets aim to provide more flexibility to the end-user, where they can choose the right one for their requirement. The goal is to find the right fit so that you do not overpay for something that you do not need or use a droplet that fails to fulfill your requirement and reach degraded performance.
It is crucial to know the difference between these types of CPUs. You can choose the type of CPU you need during the droplet creation.
When you choose a droplet, i.e., a virtual machine(VM), you are assigned three essential resources: CPU, disk storage, and RAM. All of these are allocated from a physical host. To further refine the possessor, a hypervisor is deployed, which acts as a virtual machine monitor and ensures that multiple droplets are assigned and managed by the virtual CPU. The virtual CPU(vCPU) is also counted as a single hyper thread on any given processor(modern CPUs have multiple hyper threads).
As a user, you need to make sure you pick the right droplet type.
The crucial difference between shared CPU and dedicated CPUs is that you get full hyper threads in case of dedicated ones, whereas shared CPUs use hyper threads from CPUs that are shared among multiple users. This can potentially affect performance if there is a need for additional resources for the shared CPU droplet.
The DigitalOcean hypervisor is smart enough to allocate resources, but that can add overhead and slow performance.
In the case of high-performance applications, it is wise to go with the dedicated CPUs. When you create a dedicated CPU droplet, you will get the three options:
- General Purpose: The general purpose droplets offer a good balance when it comes to dedicated hyper threads and memory. The droplet can be used for hosting general-purpose projects such as eCommerce sites, production workloads, web apps, and even enterprise applications.
- CPU-Optimized: The compute-optimized virtual machines are ideal for projects where there is a need for high computational power. These projects can include machine learning, batch processing, video transcoding and encoding, and so on!
- Memory-Optimized: Recently, they added the memory-optimized CPU, customized to provide 8 GB of high volume RAM. This CPU droplet is ideal for projects such as real-time big data processing, high-performance databases, and so on!
You are free to choose any of the available operating systems with the droplet. By default, you can choose between Ubuntu, FreeBSD, Debian, Fedora, or CentOS. Apart from that, you also get the choice of using container distribution or custom images.
To get started with DigitalOcean, you need to first create an account with them.
Once there, you need to create a new project as shown below.
You will now be asked for project details, including project name, project description, and purpose.
You will also get the option to move resources where you can always skip the step and move to the next step.
With your project ready, you can now start creating a droplet.
A plethora of options will open up when you click on Get Started With a Droplet.
Here, you get the chance to select the distribution for your project. The five distributions up for grab include Ubuntu, FreeBSD, Fedora, CentOS and Debian. You can also free to choose custom images or other distributions that can be accessed through the marketplace.
Caption: Choosing the distribution
Next, you have to choose the right plan for your project.
When it comes to plans, you get the choice of picking between shared and dedicated CPUs.
- Shared CPU: The shared CPUs are best suited for small projects for web apps or blogs. Here, you get access to a mix of compute resources and memory.
- Dedicated CPU: The dedicated CPU offer access to dedicated resources and is further divided into three subcategories:
- General Purpose: Offers a good balance between hyperthreads and memory
- CPU-Optimized: Compute-optimized virtual machines
- Memory-Optimized: Memory-rich virtual machines.
You are free to choose any plan for your project. We will discuss more each plan pricing in the pricing section.
By default, you get access to a 1x disk size. You can change it 3x or 6x during the droplet creation process.
Block Storage is a way to add more volume to your droplet.
The last step is to choose the data center for your project. They offer a good selection of servers scattered all over the world.
And, that’s it. You are now on your way to use DigitalOcean.
We went through the idea of droplets and learned how to get started with them. In this section, we will take a look at other DigitalOcean features other than droplets. Let’s go through them one by one.
DigitalOcean also supports Kubernetes out of the box. With it, you can create a cost-effective Kubernetes cluster in a matter of minutes. As a developer or a business, you do not have to worry about Kubernetes provided by DigitalOcean themselves. All you have to pay for is the resources that you use for your application.
With their approach, you get the chance to focus on your project and streamline your automated applications. DigitalOcean Kubernetes lets you do instance replication, deployment, cluster scheduling, and also proper application releases.
You also do not have to waste time as they offer guided configuration where they walk you through proper steps to create, manage, and connect your cluster. They also provide resources to deploy your application easily. They do other related tasks, such as load balancers and persistent storage management.
They support three of the latest Kubernetes minor versions, including Kubernetes 1.14, 1.14 and 1.16.
During the Kubernetes cluster creation, you have to choose the following.
- Kubernetes version: The latest version is pre-selected
- Datacenter Region: Choose from 14 different data centers spread all across the world.
- VPC(Virtual Private Cloud) Network: This one is pre-selected to default-sfo2.
- Cluster capacity: Here, you select the node pool name, the droplet type, node plan, and the number of nodes. Here, you can also add a node pool if you need to.
- Tags and cluster name: Lastly, you can add tags and choose the name for your cluster.
DigitalOcean also gives access to one-click apps through its marketplace applications. At the time of writing, it is offering 117 one-click apps from different categories, including Chat, Database, Gaming, Analytics, Business Apps, Media, and more!
Also, you are in full control of your droplets and only pay for the ones that you use — giving you the ultimate freedom to test and deploy apps.
Some of the most common apps include
- LAMP Stack
- Ruby On Rails
- Machine Learning
For the complete list, we encourage you to check out their marketplace.
DigitalOcean allows teams to collaborate and work together. When the team works, they are all billed on one invoice improving the company’s security.
Apart from that, it is also reliable as it provides Floating IPs. These IPs ensure system reliability as new IP can be assigned to standby droplets if a droplet fails.
Just like droplets, DigitalOcean uses special naming for their data and storage services.
Here, the data stored in the hard disk is known as volume or, more specifically, block storage volumes.
On the other hand, spaces are S3-compatible object storage that is useful for storing and serving large data amounts.
So, in short, we can divide storage into two types: block storage and object storage.
Let’s go through each one of them below.
Block storage is similar to storing data on a hard disk. DigitalOcean offers block storage anywhere between 1 GB to 16 TB. Also, as a developer, you can combine the hard disks in the RAID system giving you the replication required for redundancy. The data stored in the data storage is also encrypted so that it can prevent unauthorized access.
Block storage is scalable in real-time and the data can be moved between droplets if needed.
The pricing for block storage is $0.10 per GB per month. At the time of writing, the volumes are available in NYC3, NYC1, FRA1, SGP1, TOR1, BLR1, LON1, SFO2, and AMS3.
Some of the block storage key features include
- High performance and backed by SSDs.
- Flexible as they can be moved between droplets or their size can be increased.
- Encrypted using Linux Unified Key Setup.
- Offers redundancy using Ceph.
- Automatic format and mount.
- Support Burst mode.
These also come with limitations including
- Volumes cannot be renamed.
- One droplet can only have one volume at any given time.
- There is a limit to the number of volumes created per region. For now, it is 100 volumes and 16 TB per region.
- Volumes are not backed in droplet backups.
Object Storage or Spaces are large blocks of storage where companies can store large unstructured data. They are S3-compatible object storage services.
As you might have guessed it by now, Object Storage works differently compared to block storage. As the data stored in object storage is unstructured, the performance is limited. However, to overcome the limitation, built-in Spaces CDN is utilized to minimize page speed, reduce infrastructure costs, and bandwidth.
The base price of spaces is $5 per month, where you can get started to create multiple Spaces. In total, you get access to 250 GB of data storage, which can be spread across multiple Spaces. If you want additional storage, then you have to pay based on the $0.02 per GB.
All the data stored in object storage are secured using HTTPS.
In this section, we will take a look at the DigitalOcean Pros and Cons.
- DigitalOcean offers 99.99% uptime. That’s excellent for any business out there!
- The infrastructure is top-notch, which means lightning-fast load times. They utilize fast SSDs to ensure fast loading times.
- The ecosystem is developer-friendly, where you get access to droplets, spaces, Kubernetes, and more!
- It has a pay-as-you-use pricing model, which is ideal for startups. The prices are also customizable as per your needs.
- They offer excellent security with firewalls and encryption level.
- Lastly, they offer daily backups.
- DigitalOcean is not for beginners.
- It lacks features that another similar cloud hosting provides. For example, you will not get a good CDN, SSL certificate, domain registration, and so on!
- Customer support is limited. They only provide customer support via a ticketing system, which takes time to resolve. In comparison, other hosting providers offer 24/7 customer support through at least one communication channel.
- Complicated dashboard for beginners. No cPanel.
- DigitalOcean can be costly compared to other cloud hosting providers.
DigitalOcean utilizes high-performance SSDs to provide an excellent hosting environment. Their basic plan of 1vCPU, 1GB memory did pretty good in our testing as it was able to handle basic traffic without slowing down.
The users can expand the hosting capabilities by adding RAM, CPU, or even storage. This way, businesses can quickly scale without worrying about slow down or crashes.
In this section, we will take a look at the DigitalOcean pricing.
DigitalOcean offers one of the cheapest prices for cloud hosting to get started. You can get started with cloud hosting with their $5 per month plan($0.007 per hour) where you get access to 1GB RAM, 1 CPU, 25 GB SSD Disk and 1000 GB Transfer. The basic plan uses a shared CPU.
When it comes to a dedicated CPU, the prices are as below.
- General Purpose: It starts from $60 per month($0.089 per hour) and offers 8 GB RAM, 2 CPUs, 25 GB SSD disk, and 4 TB transfer.
- CPU-Optimized: It starts with $40 per month($0.060 per hour) and offers 4 GB RAM, 2 CPUs, 25 GB SSD disk and 4 TB transfers
- Memory-Optimized: It starts from $90 per month($0.0134 per hour) and offers 16 GB RAM, 2 CPUs, 50 GB SSD disk, and 4 TB transfer.
If you want to add volumes(block storage), then you need to pay $0.10 per GB per month. You can add anywhere from 1 GB to 16 TB.
Spaces price starts from $5 per month, where you get 250 GB of data storage. Any additional storage cost $0.02/GB.
DigitalOcean offers customer support through their ticketing system. This can be seen as a con as tickets generally take time to answer. If you want instant customer support via phone or chat, then DigitalOcean is not for you.
However, they do provide good documentation where you can find solutions for most of your problems. Check out the DigitalOcean documentation.
The community also plays a crucial role in the success of DigitalOcean. This is where you can find real people who can support you through your problem. You also get access to technical tutorials which gives insights on how DigitalOcean works.
DigitalOcean is an excellent cloud hosting provider. However, it is not for everyone. If you are someone who has never used any hosting or are hosting for the first time, then avoid DigitalOcean at all cost as it requires technical know-how to manage the hosting environment.
If you have someone who deeply understands hosting, then DigitalOcean is an excellent choice. It can be used by an individual, startup, or an enterprise. Also, their pay-as-you-use model entices and attracts startups as they can experiment and explore the DigitalOcean ecosystem without the need to pay fixed pricing.
So, are you going with DigitalOcean? Comment below and let us know.