4 minute read

Maximizing Multi-Cloud Efficiency with Kubecost APIs

Introduction

Businesses are realizing the far-reaching advantages of multi-cloud environments and shifting from single-cloud to hybrid and multi-cloud approaches. Cloud teams making the switch find enticements like greater flexibility, reliability, and scalability worth the tradeoffs in added management challenges and complexity.

Organizations adopting (or considering a move to) multi-cloud environments will extensively use Kubernetes API (Application Programming Interface) services to orchestrate and manage containerized applications and reduce the overhead and difficulties introduced by multiple cloud service providers.

Kubernetes API

Kubernetes users interact with their Kubernetes cluster using the Kubernetes API, or the front end of the Kubernetes control plane. The Kubernetes API is the programmable interface for creating, configuring, and managing Kubernetes clusters. Users, clusters, and external components communicate using the Kubernetes API.

Kubecost APIs

Kubecost, the cost monitoring platform deployed in Kubernetes, helps organizations understand and reduce their complex cloud costs. Kubecost APIs power the Kubecost UX, but can also help organizations automate and enhance their cloud spend monitoring and optimization strategy.

Kubecost APIs provide a reliable and secure solution for integrating with complex Kubernetes systems and environments. Developers can use any of the Kubecost APIs to customize aspects of their cloud cost monitoring and offer a detailed and granular view of all cloud resources, from clusters and namespaces down to individual nodes in a pod.

Kubecost APIs conform to representational state transfer (REST) architecture principles. REST APIs are designed with developers in mind, they communicate via HTTP requests and support consistent and reliable integrations and operations.

Let’s take a look at how some of the main Kubecost APIs can be leveraged.

Overview of Kubecost APIs and their advantages

Kubecost APIs are grouped into four categories based on their functionality. These categories include:

  • Monitoring – includes the Allocation, Allocation Trends, Assets, Assets Diff, and Cloud Costs APIs
  • Governance – includes Budget, Cost Events Audit, and Predict APIs
  • Diagnostic – Events API
  • Optimization – Savings API with various endpoints

The complete details and parameters of Kubecost APIs can be found in the Kubecost API library in the Kubecost documentation.

Kubecost APIs underpin the front end of the Kubecost platform. But all Kubecost APIs are accessible and provide multiple endpoints to allow the creation of specific API calls to customize how you monitor and optimize cloud spend and automate complex activities to reduce the effort required of cloud teams.

Multiple endpoints are available for every deployment of Kubecost, including self-hosted Kubecost and Kubecost Cloud. Kubecost APIs allow developers to customize API calls and use filters to view costs based on different parameters that can be set up to drill down on exactly what is needed for any project, including FinOps or design and development initiatives.

Allocations API

With the Allocation API, you can view Kubernetes costs and external (out-of-cluster) costs together. Cost groupings can be allocated flexibly, including by namespace, label, product, or owner. The external allocation endpoint in the Allocation API allows you to allocate costs by external cloud costs outside of Kubernetes clusters, such as cloud services and storage. This means you can associate external costs with Kubernetes costs to truly understand allocations by the business dimensions your organization deems important.

Another endpoint under Allocation, the Allocation Compute API, can be used to find real-time costs in different steps of granularity, such as the last seven days, broken down by two-hour windows, with one-minute increments.

Assets API

The Assets API provides direct Kubernetes-specific data such as nodes, volumes, and load balancers. This information can be useful for identifying spending per node or finding the associated network per node, for example. The Assets API also powers the Assets UI frontend making it easy to visualize the various assets across your Kubernetes environments.

Cloud Cost API

One of Kubecost’s new APIs is the Cloud Cost API, which allows you to obtain all cloud line items for cloud integrations. It gives you the ability to integrate, for example, your AWS Cost and Usage Report, your Google Big Query export, or your Microsoft Azure Cost Export, and then integrate these all into the Kubecost platform so that Kubecost can process the data.

Savings API

The Savings API is critical for optimizing clusters. One endpoint, the request sizing API, provides recommendations for setting container resource requests. Kubecost provides the exact setting you should use based on advanced usage to request comparisons. This can also be used with the request sizing API.

Abandoned Workloads API

Abandoned Workloads API is another endpoint under the Savings API. Kubecost can identify network costs and tools to track abandoned workloads driving up cloud spend. These are workloads that fall under a certain threshold of network traffic, indicating they are idle and unnecessary. Together, these APIs can be used to optimize clusters with Kubecost recommendations.

Using Kubecost APIs to Unlock the Power of Cloud Infrastructure

Kubecost’s powerful API services provide critical data for cloud cost optimizations and allow organizations to better access and manipulate their complex cloud infrastructure for maximum benefit. With the various insights and data gleaned from Kubecost APIs, teams can explore the information that helps them make better decisions and take timely action to optimize their cloud infrastructure.

Kubecost APIs help organizations leverage the full benefits of a multi-cloud infrastructure, which includes flexibility, reliability, and the ability to scale their environments as needed to support their business and customers.

Get Started

Kubecost offers real-time visibility and monitoring of Kubernetes costs, and runs on any Kubernetes environment, including Amazon Kubernetes Service (AKS), Google Kubernetes Engine (GKE), Azure Kubernetes Service (AKS), and on-prem. Get started in minutes, and take control of your cloud costs today.

Contact Us

To learn more, reach out via email (team@kubecost), Slack, or visit our website.