Kubernetes Cost Monitoring Now Possible with Finout K8s Support
Sometimes it’s hard to remember that just a few years ago, Kubernetes was a product most people had never heard of, and no one had the courage to run it in a production environment. Now Kubernetes is everywhere, and it’s here to stay, at least for the foreseeable future.
But while Kubernetes brings DevOps engineers comfort and scalability to run complex workloads on the cloud, it also brings its own set of challenges as the modern operating system of the cloud. Whether operating, installing, or monitoring - DevOps engineers all over the world needed to learn the new K8s terminology and adopt new tools to deal with the inherent complexities Kubernetes brings to the table.
One of the most significant challenges DevOps and FinOps Engineers now face is - how to monitor Kubernetes' cost and how much does all of this cost?
Most financial departments are still trying to figure out how to deal with the cost complexity of AWS, Azure, GCP and other hosting solutions engineers are using. But with Kubernetes, the infrastructure cost now has a whole new level of abstraction added to it. The cost of instances do not just represent workloads anymore, it also includes the node and pod level
In fact, according to a recent FinOps Foundation survey, there is a disconnect between Kubernetes cloud cost expenses and the ability to monitor and predict costs.
In order to help FinOps, Finance, and DevOps allocate their Kubernetes costs, so they can shift from “How much do we pay for AWS and Kubernetes?” to “How much do we pay for this product and that customer?”, we have launched our native Kubernetes support, built straight into Finout.
Finout enables DevOps and FinOps to treat Pods as if they were part of your AWS Cost and Usage Report (CUR). This eliminates the barriers Finance and FinOps have for understanding Kubernetes. And it’s all done through a minimal integration process.
By using Finout for Kubernetes cost analysis, you get
Real, amortized, blended price per pod
The ability to allocate pods to customers
Identification of organic vs. non-organic growth within kubernetes cost monitoring and management
Cost control for Finance and FinOps something as complex as Kubernetes, without having to depend on Engineers
Finout’s cost-efficiency product provides Kubernetes with first-citizen treatment - so you can treat Pods, Namespaces, and Labels as if they were natively coming from the AWS bill. Do you need to filter all pods in a specific namespace, in a specific region, and see the price per pod? No problem!
This all integrates into Finout magic sauce of course - business questions can be now answered using complex filters that contain Kubernetes.
For example, an online retail store can identify the cloud cost of the transactions, drilling down into “this S3 bucket, that RDS, all these Kubernetes labels, those three instances, and this pod.” With Finout, this e-commerce application can its price per unit (a transaction in this case) and see how the price per unit correlates to each pod in Kubernetes!
Needless to say that at Finout we never sacrifice accuracy. The pod price is calculated based on the actual price of the instance that was holding it. All Reserved Instances / Saving Plans / EDP / Special pricing discounts and amortizations are being taken into consideration and included in the pod price. This is not an estimation, this is what you are actually paying.
When starting Finout, we wanted to provide a user experience that was as low touch as possible - and we continue that approach here as well.
Instead of forcing you to install agents, which gives us way too much access to your environment, we only need access to your monitoring solution. Currently supporting Prometheus and pretty soon also DataDog and more, we supply a simple Kubernetes cost monitoring and management Job. This Job just queries Prometheus with the information we need, and exports it to an S3 bucket that you control. All you need to do is grant us access to that bucket.
You are in control of the information, what we see, when, and how. It’s the least intrusive way this could be done.
When analyzing metrics from Prometheus or DataDog, we can understand the distribution of pods (and their namespace and label allocation) across the Kubernetes nodes. Since we already know how much each node costs from the Cost and Usage Reports (CUR) we can understand how to allocate the cost in the pods that run inside it. It may sound simple, but deducting that from metrics alone without an agent requires us to put the best engineering mind in Finout in hyperdrive. But it's all worth it when we cut down the integration time to just minutes. This is the Finout way of thinking - we need to serve you, not the other way around.
At Finout we believe that modern teams should be focused on monitoring the cost of their business - not their technology. By enabling teams to gain visibility into complex technologies such as Kubernetes, we provide FinOps and Finance with the most accurate information about their unit’s and customers' real price.
This is the way to break down the bills you are paying to host your product. With Finout, you can understand how these costs are allocated to your customers, features, and business units, and get a deep analytics-based understanding of your business model, pricing, go-to-market model, and gross margin. Stay ahead and keep improving with Finout.
Stay tuned for more integrations from us that will enable you to get a holistic business view of your entire technological environment. Talk to me to get started.
Asaf is the CPO and co-founder of Finout. He has more than 12 years of experience in software engineering, QA and product management at companies like Taboola and Intel. In his last position at Logz.io, he met Roi, and together they decided to embark on the Finout journey. Asaf is a die-hard fan of Manchester United, and Fantasy Football.