By Jeff M.
Moving to the cloud is a lot like going shopping while you are hungry. You go into the store, you get what was on your list, but then you see the cookies and the ice cream, and you are going to make that new fish dinner next week with the side of Brussels sprouts. You end up walking out of the store with far more than you needed and certainly some unhealthy things in the process. Building things in the cloud is similar. You move to the cloud, you order some EC2 with a side of S3, then you hear about the nice API and Lambda functions. Somebody offers a nice course of MongoDB with some IoT on the side. And while you are at it, you might as well get the CDK so you can rapidly build and deploy everything through code pipeline, code deploy, and other toys. You walk out with far more than you really needed and a bill that is higher than you really wanted.
All these new cloud technologies certainly are fun, and you should absolutely learn and play with them, but cloud providers are a la carte, and you are paying for everything you are using. Uncontrolled, this leads to extra costs and waste. There are several ways to deal with these kinds of ballooning costs and shadow applications you are unaware of. We are going to go through some tools and techniques today and help you understand how to better control cloud costs through proper tools and techniques.
Let us start with tools. Cloud Service Providers (CSP) offer native advising capabilities for free which should be leveraged. AWS has Trusted Advisor and Azure has Azure Advisor. These tools, in addition to helping you lock down your environments and create more robust architectures, advise on underused services, and provide recommendations and estimated cost savings. Following these recommendations to reduce, resize, or remove resources can save you thousands per year even for smaller environments. Since you deployed everything using Infrastructure as Code (IaC) (you did do that, right?) it is a simple task to implement these changes. Even if you did not use IaC you can often implement these changes rapidly anyway.
ActioNet, a Premier Level ServiceNow Partner, leverages the Cloud Insights Tool. Cloud Insights is like Trusted Advisor and Azure Advisor on steroids. Leveraging its ability to give many of the same recommendations of native CSP tools but being cloud agnostic when linked with monitoring, it provides even more in depth forecasting and advising allowing for even more cost savings. Combined with the full power of ServiceNow’s capabilities such as configuration management database (CMDB) and automation can provide even larger savings. Speaking of CMDBs, they are critical to controlling costs. You cannot cut costs if you do not even know what you have.
CloudCheckr is another tool of immense value. If you want more options, CloudCheckr is an excellent choice. It can see into your CSP accounts, even across CSPs, and visualize multi-cloud costs and inventories. Both ServiceNow and CloudCheckr can tag resources which may have been missed in your automated DevSecOps pipelines. (You are using those too, right?) They can help enforce tagging strategies which categorizes costs providing more visibility. Tagging is an excellent segway into techniques so we will head there.
There are countless tagging strategies. They can be based on any number of requirements or criteria. A simple Internet search reveals a vast array to choose from. The key to a successful tagging strategy is not based on choosing the perfect strategy or preplanning every item. The key to a successful cloud tagging strategy is simple…use tags. Just use them, as you use them and see reports and trends, your strategy will evolve to fit your use cases and provide the insights you need. Tagging not only helps you determine which programs or applications are eating up your budget but provide an inroad to automation capabilities which is where real savings start to come into play.
One simple automation use case is environmental operation hours. The development environment does not need to be on all week. 6am-6pm 5 days a week easily saves 50% on resource costs. Testing is also rarely used all week. Automating operational hours for the testing environment saves even more. In cases where those environments are used less often, more stable applications for example, using your DevSecOps pipeline to simply destroy and rebuild your dev and test environments can provide vastly more savings. It has the additional benefit of ensuring your DR COOP capability is up to date and functional. Other automations such as autoscaling and data lifecycle rules keep on top of data backups. This may seem trivial but most savings, like costs, in the cloud are incremental in nature but can add up quickly. In one case, ActioNet started a contract and discovered one application which would take forever to restore or backup. As it turns out, there was an existing backup script that was not documented. In fact, there were three backup scripts running for the same application and had no data lifecycle rules. Tens of thousands of snapshots were created every month for a small application. Data charges were thousands of dollars a month. ActioNet added lifecycle rules, added CMDB discovery, and saved the client multiple thousands of dollars a month for that application alone.
All these savings allow you to put more towards R&D, application improvement, staff training and creating a cycle of innovation and growth. It allows you to try all the modern technologies and techniques. It allows you to go shopping while hungry. ActioNet has the experience to help you understand your environment and control your costs. Whether you are just starting a cloud journey or are well on the way but need to get a grip on what you have now, we can help.