But AWS is huge. They employ thousands of engineers. Granted most of the complexity is due to its huge huge scale, but still it has too many features to do what youre asking. And then there are AWS exclusives like DynamoDB.
Yes there are open source public/private cloud alternatives like OpenStack but they won't solve the problem of lock in and you'd still have to change all your tooling.
Conflating lock in to an open source tool with lock in to a vendor who you literally have to keep paying money to survive is a shitty tactic used by companies like Amazon.
Using open stack absolutely solves the problem of lock in from a business perspective. You can’t be cancelled, the price can’t be changed, etc.
I legitimately wonder how many people feel free from lock in after they finish paying $75k to Canonical for a 12 node OpenStack "private cloud build" (https://assets.ubuntu.com/v1/d4766546-Private-Cloud-Build_Da...), not to mention ongoing support bills and billing for addons "starting at $25k".
Just because something is open source does not mean your org will actually have the expertise to be successful at running it yourself. That's how most "open source" projects like Kubernetes and OpenStack become so successful: the supporting orgs behind the project make lots of money charging companies for support and maintenance and issues that pop up with the setup.
There are many forms of lock in. Buying a big upfront investment that has to pay itself off for the next X years is a form of lock in. Paying for expensive professional consulting support to build out the system and keep the system up and running is a form of lock in. Or even worse, hiring or training expensive dedicated employees to learn the open source system and become the internal professional consultants for the rest of the org, that is also lock in.
> I legitimately wonder how many people feel free from lock in after they finish paying $75k to Canonical for a 12 node OpenStack "private cloud build"
Here’s the part where it’s not lock-in. We stopped paying for support from Redhat when we got big enough that our own SRE expertise to run our own open stack cloud.
You know what the impact was on our applications running on it? Absolutely nothing.
How much do you pay Canonical to use grep every month? Inexperienced developers have just been conditioned by cloud providers to think that an IaaS platform must cost something in payments per month to some tech company. It does not.
This is no different than Windows vs Linux on servers. I can’t wait until 20 years from now when all of the proprietary shit looks ridiculous in hindsight.
> to think that an IaaS platform must cost something in payments per month to some tech company. It does not.
I agree fully! As you explained, it can cost several full time employees and their payrolls and their HR and their management!
Edit: And before someone misses the point, I'm not saying the math never makes sense for in-house, but to me the inexperienced take is thinking either approach should obsolete the other...
Sounds like you’re pushing a hybrid cloud approach in your edit. I have been consulting on this topic for 7 years and companies are still tied to their data center or the cloud and can’t readily pull their components apart because they originally built them so intertwined with the cloud environment of the time
Even if it doesn't cost you in monthly payments to a tech company it still costs you in "our own SRE expertise to run our own open stack cloud" so salaries, benefits, 401k contributions, etc.
> I can’t wait until 20 years from now when all of the proprietary shit looks ridiculous in hindsight.
I'd posit that in 20 years there will still be tech which is more efficiently managed by a central provider, rather than having each company hiring their own independent expertise.
I'm sure you can find other OpenStack professionals that are willing to manage your Ubuntu OpenStack deployment.
Of course every solution costs something. Lock-in means that there is no other choice, or that the cost to switch is so steep that it becomes prohibitive to do so.
Zerostack sounded like a turnkey openstack solution akin to VMware but I think the owners got stuck in the consulting grind and never pitched up for growth
I share your disdain(?) for openstack, but the 12 node count there is minimum I think (to deploy the control plane). You can likely add a reasonable number of hypervisors at no cost.
(I think I'm correct based on the table in the last page of your doc, but happy to be corrected).
Everybody is focusing on what happens on top of the CPU, but very few people talk about what happens beneath it.
Datacenters are fucking expensive to build and run, buying network and compute hardware is a pain in the ass, maintaining sufficient capacity to sustain growth while operating on a 3-6 month deployment lead time is atrociously expensive, and that's without all of the financial calculation around depreciation/taxes/etc.
The fact that cloud providers are able to ball all of that shit up into a flat opex rate for a server is unbelievably attractive.
Exactly, open source solves the problem with vendor lock-in in your tooling. It's more needed than ever now that the world is moving towards proprietary SaaS black boxes.
> The downloadable version of DynamoDB is intended for development and testing purposes only. By comparison, the DynamoDB web service is a managed service with scalability, availability, and durability features that make it ideal for production use.
Ah understood. I thought this comment thread was talking about replacing _production_ AWS use cases with a bare metal system that has a compatible API.
"...Whether you are testing complex CDK applications or Terraform configurations, or just beginning to learn about AWS services, LocalStack helps speed up and simplify your testing and development workflow..."
I think it would not be impossible for a talented, well-funded group to pick the top 20% of AWS's services and then implement them with the top 80% of features, with an API-compatible layer.
Even "just" to emulate a single region with 3 AZs would be useful for testing and for prod for many people. I know of several large organizations that to this day haven't scaled their CI beyond one region.
This makes sense; I would guess that 90% of AWS customers are only using the top 10% of available AWS features.
Same deal with Azure and GCP, although note that Azure has Azure Stack, which is a self-hosted version of Azure (I guess it's still expensive though, and I don't know how many services it includes).
OpenStack isn't a redhat project, it is contributed to by a large number of players. Redhat, SUSE and Canonical all provide their own OpenStack service subscriptions, but one can easily deploy OpenStack with a project like OpenStack Kolla. I run it at home and it is great.
OpenStack is an over-complicated mess. Most enterprise IT orgs already struggle to hire the people with skills to operate a public cloud account, nevermind having to build the underlying infrastructure as well.
I suppose it is complicated, just a homelabber here, but I don't think it's that bad. I deployed my cluster at home using kolla, and I've had relatively few hiccups that non-sysadmin/non-coder me couldn't get around. I've had the same cluster going for a few openstack releases now. Kolla really makes it easy.
That said before I found Kolla I did deploy openstack manually a few times before messing things up and having to restart.
I mean the value is really implementing AWS’s API surface area in a single control-plane overtop of the usual on-prem tooling. K8s is kinda getting there but is too narrow in scope I think for what people actually want.
For DynamoDB specifically, ScyllaDB had a Dynamodb compatible mode. There are several options (open source and otherwise) with s3 compatible APIs. I think it is more likely we'll end up with replacements for individual services and maybe at some point it will be possible to glue them together as a replacement for a significant subset of AWS
What's so exclusive about a half-baked Dynamo implementation? Dynamo is just a worse Cassandra. DynamoDB itself doesn't even implement the Dynamo Paper.
Yes there are open source public/private cloud alternatives like OpenStack but they won't solve the problem of lock in and you'd still have to change all your tooling.