Discover how a leading enterprise achieved visibility into their cloud costs with the CNCF project OpenCost. OpenCost models current and historical Kubernetes cloud spend and resource allocation by service, deployment, namespace, labels, and much more. This data provides transparency for cloud bills and can be used as the basis for optimizing your Kubernetes deployments based on cost allocation. This session delves into the real-world journey of implementing OpenCost for tracking cloud costs and how they optimized their infrastructure with this information. We’ll start with an introduction to OpenCost, its capabilities, and how to get started as a user and as a contributor. Then we’ll explore the challenges faced, lessons learned, and the tangible impact observed. From initial deployment to ongoing management, learn how OpenCost empowered the enterprise to make data-driven decisions, avoid cost overruns, and streamline their cloud budgeting. Join us for practical insights, success stories, and actionable steps to harness the power of OpenCost in your enterprise.
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on Enterprise Cloud Cost Management
1. #ossummit
Open Source Cloud Costs
OpenCost's Impact on Enterprise Cloud Cost Management
Don O'Neill
Matt Ray
@handle
2. Who are we?
Don O’Neill
Program Lead - Standardize & Enforce, MuleSoft Governance
Co-leader of Seattle CoffeeOps - a DevOps/SRE meetup
Matt Ray
OpenCost Community Manager
Open Source veteran, Software Defined Talk podcast co-host
3. The complexity of operating
Kubernetes efficiently is real
3
Technical
COMPLEXITY
Metal
VMs
K8s
Higher-level abstractions, more shared
resources, and increasingly dynamic
Behavioral
COMPLEXITY
Decentralized releases means any
engineer can increase spend quickly
Abstraction
Any engineer Any org Any time
$
$
$
$
$
$
4. What is OpenCost?
Open Source Kubernetes and Cloud Costs Monitoring
Specification and Implementation
Cloud Native Computing Foundation Sandbox Project
FinOps Certified Solution
• https://opencost.io
• https://github.com/opencost
• https://www.cncf.io/projects/opencost/
6. Kubernetes Costs Specification
What is Measured
• CPU
• Memory
• GPU
• Storage Volume
• Load Balancer
Aggregations
• Cluster
• Node
• Container
• Annotation
• Controller Kind
• Controller Name
• DaemonSet
• Deployment
• Job
• Label
• Namespace
• Pod
• Service
• StatefulSet
7. What is Monitored
Kubernetes
• Amazon Web Services
• Google Cloud Platform
• Microsoft Azure
• Oracle Cloud Infrastructure
• On-premises
Cloud Costs
• Billing data
• Cost and usage reports
Carbon Costs (1.110)
• Carbon footprint of workloads
OpenCost Plugins (1.110)
• New Plugin architecture
• Datadog first example
14. OpenCost architecture (cont.)
● deployed in its own namespace “oversight”
● deployed in all clusters, in all flavors of Kubernetes
● writes data daily as a .csv file to an S3 bucket
● uses a seven day rolling data window
● data lake consumes the .csv file, refreshing the
reports
15. OpenCost lessons learned
● Be sure you have a Prometheus endpoint available
● Bringing your own Prometheus? tune its memory and cpu
requests/limits!
● Pre existing data lake? Parquet exporter
● You can use your own rate sheet