Hello anons, Celt here to talk about a common farce about migrating to a Cloud Service Provider (CSP), which is that it is default cheaper. You can end up paying *more* if you do not start with the right things in mind.
I got to work with a F500 customer that had migrated 100% to AWS, and get insight into some of their findings after making the migration to the cloud. This specific firm was paying more after their migration, and looked to change that.
Cloud is not cheaper by default
Heresy. Yes i know, i said in a previous articles (here, here, and here) that cloud is cheaper. Really what I should say is that cloud *can* be cheaper. If you design things poorly, do not take advantage of automation, leverage a single cloud vendor, or otherwise generally do not optimize your workloads cloud will *not* be cheaper. Basically if you lift and shift an application to cloud, how are you going to realize the benefits? The key is that there needs to be reengineering and a paradigm shift in designing and implementing applications.
In the early years of a cloud migration you are going to be spending *more* than what you did on-prem. After you complete your migration (avg ~5 years for a F500) you should be spending close to what you spent on-prem. At this point you want to begin/continue optimizing workloads, and embracing automation, and looking multi-cloud if you have not already. After a couple years of doing this you should be at a place where you are spending less than on-prem. At this point you are cloud mature.
Turbo Note: Even if you hire professional/consulting services from AWS/GCP/Azure, they are not always going to help you optimize your workloads and reduce costs. There is a conflict of interest, more costs = more money for the provider. Your consultants from these CSPs are not always going to help you save as much money as possible unfortunately.
How do you make cloud cheaper?
Design
First thing comes down the design paradigm. You want to design applications to be cloud native. Or if you are migrating from on-prem you want to reengineer where you can. That might means leveraging things like microservices and containers (read up on these here). Take advantage of what types of services and utilities are available to create a design that minimizes cost and meets requirements.
One example would be shifting a REST API creating a serverless REST API. This is a strong use case where many firms have realized cost savings. If you had brought this API onto cloud with its own dedicated compute you could potentially end up spending more overall by way of maintenance and availability. Serverless has the pay-as-you-go and pay for what you use model which can further increase cost savings if the use case aligns with the billing model.
Cloud native design could probably have its own post or book, but that’s the high level view.
Automation
Cloud enables you to automate so much more than on-prem. Everything can be automated through the use of service APIs. Automation is where you can realize significant cost savings, nothing new here.
Classic use case: are scaling down when traffic is low. In AWS using things like auto-scaling groups to scale down when traffic is low can result in significant cost savings, which just a couple clicks.
Classic use case: using servlerless functions (AWS Lambda) to turn off development and test environments when business hours conclude, and then starting them back up prior to next days business hours.
Classic use case: Through leveraging AWS Organizations and security tools you can push security rules and controls to all of your member accounts with a couple clicks. Example would be Guard Duty or SCPs.
Hopefully from here you can see some of the things you can do with cloud. Of course some of these you can do on-prem with certain tools and custom APIs, but generally these things are easier to accomplish in a CSP environment. As you save time with automation you can apply those time savings to revenue-generating activities, nothing new here.
Compare Cloud Providers
Different cloud providers can have advantages in different areas or specific services. One anecdotal experience, is that my firm found out that GCP might offer Data and ML services that better align with our use cases and yield cost savings. We worked with GCP to get a game plan and are beginning to look at where it makes sense to shift workloads to GCP for cost savings. Sometimes services on a specific cloud platform align to your use case and requirements better.
Comparing cloud providers can also lead to more favorable negotiations in contract negotiations. If your primary cloud provider knows they are losing business to the next guy, you should have more leverage to negotiate. If not, spend more time reading @BowTiedSalesGuy.
Conclusion
Short and sweet one today anons. Remember cloud can be cheaper, it is not by default. Leveraging cloud native design patterns, automation, and multiple cloud providers you will end up spending less money than you did on-prem when you reach maturity. Some of this stuff sounds obvious, but you would be surprised by how many F500 leaders i see that find this out after their (semi-failed) migration.