This is where DigitalOcean and Vultr are profiting the most - publishing tutorials, explaining everything and helping to go step by step through the setup with simple notes and comments.
This is where DigitalOcean and Vultr are profiting the most - publishing tutorials, explaining everything and helping to go step by step through the setup with simple notes and comments.
When you outgrow Digital Ocean and want to set up larger distributed infrastructure that spans datacenter and regions for high availability (and you hire the people that can run it), then AWS (or Google Compute Engine, Azure, etc) will be a better fit for you.
Lets look at Vultr, that is more complete option compared to DO in my opinion. You get click away following:
-backups
-ddos protection
-internal IP
-storage servers
-dedicated resources servers
With this I can scale up to rather large size. While this is not enough for some startups, for MVP and Bootstraping startups that's more than enough. And frankly once I will grow big enough to hire tech guys, I will just move everything either to dedicated servers or simply to Rackspace or Softlayer for premium cloud solution.
The whole point of my comment was - AWS, Google and Azure - all are loosing to the ones like DO and Vultr in smb market. And while it looks irrelevant now, what stops DO etc. to scale up and offer more services? I bet if not due to their enormous growth rate, they would be already doing this but for a year or two they must focus more on scaling rather than increasing number of products. Once they are ready AWS/Google will be forced to either buy DO for crazy money or rethink their documentation, offering, approach, business model etc.
If I had a small static site that could be served by a few dedicated servers, I probably wouldn't use AWS myself. But, for me, the power of AWS is the elasticity - I can scale from 100 servers to over a 1000 servers and back down to 100 servers in one day - and those servers are distributed across 3 regions. And I have nearly a petabyte of data in S3. If I ran my app on dedicated servers, I'd need to pay for 1000 servers to handle my peak load, and I'd need a large petabyte-scale storage array (well several of them for redundancy).
I'm probably biased in thinking that my use case is more what AWS is seeking since they provide a good API and powerful tools to enable exactly this use case.
I can scale Vultr from 100 servers to 1,000 in 1 day as well (most time this takes is to click things through, not sure if AWS have buy XXX servers at once but if they do, thats good then).
And once again, I am not saying about small websites/static sites. I am talking about startups. Companies that can grow XXXX% a month for first few months, companies that are very careful where they spend money and where they allocate resources.
- We nearly failed our launch due to failure to increase server capacity during peak traffic, Vultr didn't have any more instances in that datacenter. This happened a lot of times and support always answered "We don't know when we will add more capacity".
- Periodic network partitions. In the last two months we experienced a lot of network partitions both on public and private network, some of them lasting for about 2-3 days, our fleet beeing totally partitioned in 2-3 distinct blocks. Even new instances started had private network down (100% packet loss).
- Technical support. We opened a few support tickets asking when private network will be fixed. Usually they respond that everything is fine and I have a configuration issue. I reply with ping/mtr logs and finally they agree there is a problem (which can be easy tested by themselves anyway). Then, they fix the issue after 1-2 days. Good luck fixing this yourself when your external load balancers have no public network connection, and new provisioned instances don't have it, too :)
- They changed instance types. The instances started months ago have a powerful CPU at 3.6Ghz which is shown in all their advertised benchmarks against DO/AWS/etc. Now they are offering 2.4Ghz CPU which is about 60% slower. When I told them about this I received an predefined template response like: "Thanks for your inquiry, we are constantly revising our hardware to meet customer needs".
- They increased pricing. First, the instance pricing was 20% lower than on DO. Then, they changed the price as beeing the same as DO and added a 20% discount. Then, they removed this discount, just telling everybody that they ended the discount period, nothing about the price increase :).
So, we are in the process of migrating everything to Google Cloud. We've been testing it on a staging cluster of 10 nodes and everything works smoothly, so we are in the process of moving the production cluster too. Be aware of small instance types (f1-micro and g1-small), they have very small CPU capacity for production load.
Also, Google offers us a lot of hosted stuff we don't need to manage anymore: DNS, Mysql, Datastore, Object store, etc. We were using Amazon S3 before, but peering from other datacenters (eg Vultr Datacenter, DO) sucks, constantly getting network timeouts, increased latency, etc.
I can understand why they don't do that. Several reasons, 1) they assume people who are looking to build infrastructure in their cloud platform have some experience, if not, extensive experience with operation and building infrastructure. Second, there is a whole support model they sell. Lastly, they have partners to do training. IMO, AWS has done good job presenting intro materials to experienced operation folks in their reInvent videos.
I can go on to defend why I think the entry barrier exists, or how AWS can do better. Here is my only tip to any new AWS customers: your mileage is different so don' start plugging in a dozen AWS native services into your architecture just because everyone is using it. Start simple. In our case, we are forced to use two ELBs in front of our nginx and our router service, which eventually routes the requests to our app server. That's a lot of web servers passing traffic. There should be a native offering of Nginx and Apache IMO. ELB is garbage (I say this with a love and hate passion) if you want to replace Nginx / Apache entirely. Anyway, IMO, the major take away of building a cloud infrastructure is "instance is cheap to recycle [if you have the right tool]."
> This is where DigitalOcean and Vultr are profiting the most - publishing tutorials,
Are you referring to https://www.digitalocean.com/community/tutorials/ ? I find them useful, but some of the community tutorials are suggesting (maybe just me) wrong approach. I don't think DO is the first one, I remember browsing Linode content quite often back in the days.
Anyway, I think the gap is filled by developing a PaaS such as Herkou, on top of IaaS (AWS, GCE, Azure). Of course, you can build one yourself.
I haven't used Google Cloud for long but it had a fairly nice UI actually. And they put their cloud SDK (command line tools) in the Ubuntu Partner repository which I appreciate, makes it almost as convenient as using OpenStack services.
The real problem is not the branding, it's the sheer amount of products. Frankly, the branding should be at the branch-level (Network/Servers/Databases/Data Analysis) rather than at the bottom leaf.
DO is nice, and I use it for lightweight stuff like building a website, but only for that.
If DO started to offer things like load balancers, managed DBs as a service (similar to DynamoDB and RDS), and Storage (S3). That could change their business quickly. Somewhere between Heroku on AWS is the sweet spot IMO. Heroku is $$$ and very little to no flexibility and AWS almost has too many services now with no focus.
Their target market is large enterprises with massive IT departments staffed with people who "have quite good technological knowledge" - most startups/small companies have probably never fielded an unsolicited sales call from AWS while most enterprise IT staff are probably sick of hearing from them.