Controlling the costs of cloud deployment [Q&A]
Enterprises often turn to the cloud as a way of reducing their IT costs. But using the cloud by itself doesn't necessarily lead to savings, especially if there are no adequate controls in place.
We talked to Lenley Hensarling, chief strategy officer at real-time data platform Aerospike, to discover how the right management strategies can help rein in costs for public, private, hybrid, and multi-cloud deployments.
BN: What questions should businesses be asking before embarking on a cloud deployment?
LH: The primary question is whether you have the elasticity of resource requirements to make the financial benefit work for you. If you have a stable workload, meaning a 24/7/365 workload that does not have peaks and troughs of resource requirements, it will be cheaper to run it on-premise or as a co-location. However, if you have those peaks and valleys, and you also have an architecture that can release resources and scale them back in near real time, then the cloud is the place for you.
BN: Are there any hidden pitfalls to cloud deployments?
LH: I think the cloud as a deployment platform is well understood these days. I commented above on a financial consideration, but if you pick a cloud vendor that has the instance types you need, and you understand your requirements for that and match accordingly, then you can run almost anything. Security considerations used to be a concern, but we see more and more customers becoming comfortable with running mission-critical applications in the cloud. At Aerospike, as we have expanded our offering of Aerospike Cloud Managed Service to multiple clouds, we've found there are differences in how best to deploy with respect to networking setups, security (that may reflect back into networking choices), and instance types. You have to characterize the instance types for your particular workloads. If you do not, you may run into bottlenecks at the worst times as you scale, or you may get hit with a lot of traffic.
BN: How can you balance performance against cost? What’s the best way to measure this?
LH: The cloud is going to be more expensive a lot of times. What you are paying for is the ability to concentrate on your value-add and to take advantage of the elasticity of resource use if you have that inherent in your application. Performance is often compromised in the cloud, but as noted above, if you pick the right vendor with the right instance types, network models and bandwidth, you can achieve the performance you want. We recently did a benchmark with Amazon, where we ran a petabyte workload with 20 nodes. Does that mean that you should try to handle a petabyte-scale database with 20 nodes? Not necessarily. I like to think of what the appropriate unit of expansion is. How much will that incremental instance or system cost? What you are looking for is a unit of expansion (and contraction) that fits your workload and an understanding of how a group of users or connections or operations expands or contracts. The tech and the infrastructure service the functional or business objective you are trying to attain.
BN: Are there tools that can help to monitor the success of cloud investments?
LH: There are a growing number of tools like that. It really is just a matter of tracking your spend against the different applications. The data is available, but there is some work. These new tools are just providing a framework for that. The central thing you must do is track what you have deployed. I believe that most of us have turned this corner and are doing this, but you often find that a group has deployed a lot of instances, or migrated data between clouds or back to on-premise, and had no idea of the cost involved. If you provision instances, you have to be able to track them. Then you have to determine which are still in use and then have them de-provisioned. If you don't do this, you are in for surprises -- costs can accumulate quickly. The cloud providers have monitoring tools. Your AWS Cost and Usage Report can provide the basis for such monitoring. You can create detailed custom billing rules that track back to business units within your organization. I continue to be amazed at the number of companies that are not doing this, because the tools are there. Giving business units visibility into their costs allows them to manage the cost of service and be more responsible. As companies go digital, this becomes increasingly important.
BN: Should getting value from the cloud be an issue for the whole business, not just the IT department?
LH: IT is just an extension of the business requirements. It is how you do digital. Some things should be digitized, some not. The cloud fits, or it doesn't. You should be intentional in your choices of where and how you deploy. The idea of cost-of-service needs to be understood and tracked, just like cost-of-goods for your physical products. As discussed in the answer above, cost management is not just IT's issue. As companies go digital, offering new services that take the form of online software or online monitoring of equipment, IT costs become a component of a product offering. They need to be managed as such. Finance and the line-of-business pay close attention to their physical costs, but as the services accompanying products become digital, you also have to track the cost of service. That means that cloud costs need to show up as a component of cost-of-service and be an essential line item on the bill of materials for our offerings. Companies often require three bids for parts to be incorporated into a product. Are we requiring the same number of bids, or at least an investigation of the cost models, across multiple cloud vendors?