SlideShare a Scribd company logo
Multi-tenant Kubernetes
observability with Prometheus
robusta-dev Natan Yellin aantn
Natan Yellin, robusta.dev
$ whoami
Co-founder of robusta.dev
Multi-cluster Kubernetes observability
Add-on to Prometheus
Substack newsletter: Why this Kubernetes thing?
Natan Yellin aantn
robusta-dev
How should I gather
Prometheus metrics from
all my tenants?
Natan Yellin aantn
robusta-dev
Assumptions
Natan Yellin aantn
Clusters
Namespaces
Virtual clusters (e.g. capsule, kamaji, vcluster)
etc...
1. Many Kubernetes tenants
2. Tenants need some form of isolation
3. We want to monitor with Prometheus
robusta-dev
What should I use?
Natan Yellin aantn
robusta-dev
In the beginning there was one
Natan Yellin aantn
robusta-dev
In the beginning there was one
Natan Yellin aantn
Simple
No security isolation/RBAC
No performance isolation
If tenants are clusters, discovery is
annoying
Advantages:
Disadvantages:
"One team broke Prometheus for
everyone else"
robusta-dev
Then there were many
Natan Yellin aantn
robusta-dev
Then there were many
Natan Yellin aantn
Simple
Security isolation
Performance isolation
Scalable?
No unified queries
No unified management
More resources?
Advantages:
Major Disadvantage:
Minor Disadvantages:
"If you break it, it only breaks for your
product line."
robusta-dev
What we want
Natan Yellin aantn
Isolation
Scalability
Decentralized:
Query all Prometheuses at once
Centralized:
robusta-dev
What else we want?
Natan Yellin aantn
Scalability
Long term storage of metrics
1.
2.
robusta-dev
Three approaches
Natan Yellin aantn
robusta-dev
Solve it outside Prometheus
Natan Yellin aantn
robusta-dev
Solve it outside Prometheus
Natan Yellin aantn
Doesn't touch Prometheus itself
Delegates problem to other tool
Queries need to address one
Prometheus at a time
Key advantages:
Key disadvantage:
robusta-dev
Multiple + Centralized (take 1)
Natan Yellin aantn
robusta-dev
Multiple + central (take 1)
Natan Yellin aantn
Reuses existing Prometheus
Federated can do roll-up
Federated can selectively scrape
With roll-up/selective you can't
actually query all Prometheuses
Scaling
Key advantages:
Key disadvantages:
robusta-dev
Natan Yellin aantn
Disclaimer: Thanos has lots of options, I'm simplifying a little
robusta-dev
Multiple + central (take 2)
Natan Yellin aantn
robusta-dev
Multiple Prometheuses + central Prometheus (take 2)
Natan Yellin aantn
Super scalable!
Reuses existing Prometheus
Very common solution, lots of tooling
No RBAC built-in
Key advantages:
Key disadvantages:
"Most mature option" - most people
robusta-dev
One Prometheus to Rule them All
Natan Yellin aantn
robusta-dev
One Prometheus to Rule them All
Natan Yellin aantn
robusta-dev
Cortex
Grafana Mimir
VictoriaMetrics
TimescaleDB
M3DB
Options:
...
Grafana Mimir
Natan Yellin aantn
robusta-dev
Native multi-tenancy!
Backed by Grafana
Complexity
Key advantages:
Key disadvantages:
Other useful tools
Natan Yellin aantn
Add prom-label-proxy to Thanos
(and others) to enforce RBAC
robusta-dev
Thank you!
Natan Yellin aantn
A special thank you to Shalom Cohen and Evgeny Uklist + Racoons team for
providing inputs
robusta-dev
Questions?
Natan Yellin aantn
robusta-dev

More Related Content

PPTX
Rootlessコンテナ
PPTX
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)
PDF
Handle Large Messages In Apache Kafka
PDF
Kubernetes Introduction
PDF
Kubernetes: A Short Introduction (2019)
PDF
Persistent Storage with Containers with Kubernetes & OpenShift
PDF
データセンターネットワークの構成について
PDF
Kubernetes
Rootlessコンテナ
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)
Handle Large Messages In Apache Kafka
Kubernetes Introduction
Kubernetes: A Short Introduction (2019)
Persistent Storage with Containers with Kubernetes & OpenShift
データセンターネットワークの構成について
Kubernetes

What's hot (20)

PDF
How to Schedule Machine Learning Workloads Nicely In Kubernetes #CNDT2020 / C...
PPTX
Kubernetes presentation
PPTX
Introduction to the Container Network Interface (CNI)
PDF
Introduction to Kubernetes Workshop
PPTX
MySQL Multi Master Replication
PDF
Quick introduction to Kubernetes
PDF
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
PDF
Getting Started with Kubernetes
PDF
Introduction to Redis
PDF
Alphorm.com Formation Kubernetes : Installation et Configuration
PDF
MQTTとAMQPと.NET
PPTX
Room 1 - 6 - Trần Quốc Sang - Autoscaling for multi cloud platform based on S...
PDF
Open shift 4-update
PPTX
分散システムについて語らせてくれ
PDF
Fluent Bit: Log Forwarding at Scale
PDF
Docker & kubernetes
PDF
Overview of kubernetes network functions
PPTX
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
PDF
Kubernetes dealing with storage and persistence
PDF
Grafana introduction
How to Schedule Machine Learning Workloads Nicely In Kubernetes #CNDT2020 / C...
Kubernetes presentation
Introduction to the Container Network Interface (CNI)
Introduction to Kubernetes Workshop
MySQL Multi Master Replication
Quick introduction to Kubernetes
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Getting Started with Kubernetes
Introduction to Redis
Alphorm.com Formation Kubernetes : Installation et Configuration
MQTTとAMQPと.NET
Room 1 - 6 - Trần Quốc Sang - Autoscaling for multi cloud platform based on S...
Open shift 4-update
分散システムについて語らせてくれ
Fluent Bit: Log Forwarding at Scale
Docker & kubernetes
Overview of kubernetes network functions
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
Kubernetes dealing with storage and persistence
Grafana introduction
Ad

Similar to Prometheus Multi Tenancy (20)

PDF
DevOps Braga #15: Agentless monitoring with icinga and prometheus
PPTX
Prometheus - Intro, CNCF, TSDB,PromQL,Grafana
PDF
Prometheus - basics
PPTX
Scaling Prometheus on Kubernetes with Thanos
PDF
Monitoring Kubernetes with Prometheus (Kubernetes Ireland, 2016)
PDF
Jacopo Nardiello - Monitoring Cloud-Native applications with Prometheus - Cod...
PDF
Infrastructure & System Monitoring using Prometheus
PDF
Kubernetes Observability with Prometheus by Example
PPTX
Prometheus design and philosophy
PDF
Monitoring at scale: Migrating to Prometheus at Fastly
PDF
Prometheus course
PPTX
Prometheus: From Berlin to Bonanza (Keynote CloudNativeCon+Kubecon Europe 2017)
PDF
Prometheus Course from beginners to expert course
PDF
Monitoring with prometheus at scale
PDF
Monitoring with prometheus at scale
PDF
Cloud Monitoring tool Grafana
PDF
Monitoring Cloud Native Applications with Prometheus
PPTX
Prometheus workshop
PDF
The hitchhiker’s guide to Prometheus
PDF
The hitchhiker’s guide to Prometheus
DevOps Braga #15: Agentless monitoring with icinga and prometheus
Prometheus - Intro, CNCF, TSDB,PromQL,Grafana
Prometheus - basics
Scaling Prometheus on Kubernetes with Thanos
Monitoring Kubernetes with Prometheus (Kubernetes Ireland, 2016)
Jacopo Nardiello - Monitoring Cloud-Native applications with Prometheus - Cod...
Infrastructure & System Monitoring using Prometheus
Kubernetes Observability with Prometheus by Example
Prometheus design and philosophy
Monitoring at scale: Migrating to Prometheus at Fastly
Prometheus course
Prometheus: From Berlin to Bonanza (Keynote CloudNativeCon+Kubecon Europe 2017)
Prometheus Course from beginners to expert course
Monitoring with prometheus at scale
Monitoring with prometheus at scale
Cloud Monitoring tool Grafana
Monitoring Cloud Native Applications with Prometheus
Prometheus workshop
The hitchhiker’s guide to Prometheus
The hitchhiker’s guide to Prometheus
Ad

Recently uploaded (20)

PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
A novel scalable deep ensemble learning framework for big data classification...
PPTX
OMC Textile Division Presentation 2021.pptx
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Zenith AI: Advanced Artificial Intelligence
PDF
Heart disease approach using modified random forest and particle swarm optimi...
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Mushroom cultivation and it's methods.pdf
PDF
Enhancing emotion recognition model for a student engagement use case through...
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PPTX
Tartificialntelligence_presentation.pptx
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
WOOl fibre morphology and structure.pdf for textiles
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
A comparative study of natural language inference in Swahili using monolingua...
A novel scalable deep ensemble learning framework for big data classification...
OMC Textile Division Presentation 2021.pptx
Group 1 Presentation -Planning and Decision Making .pptx
Zenith AI: Advanced Artificial Intelligence
Heart disease approach using modified random forest and particle swarm optimi...
Building Integrated photovoltaic BIPV_UPV.pdf
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
Unlocking AI with Model Context Protocol (MCP)
Mushroom cultivation and it's methods.pdf
Enhancing emotion recognition model for a student engagement use case through...
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
SOPHOS-XG Firewall Administrator PPT.pptx
Assigned Numbers - 2025 - Bluetooth® Document
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Tartificialntelligence_presentation.pptx
Programs and apps: productivity, graphics, security and other tools
WOOl fibre morphology and structure.pdf for textiles
Agricultural_Statistics_at_a_Glance_2022_0.pdf

Prometheus Multi Tenancy

  • 1. Multi-tenant Kubernetes observability with Prometheus robusta-dev Natan Yellin aantn Natan Yellin, robusta.dev
  • 2. $ whoami Co-founder of robusta.dev Multi-cluster Kubernetes observability Add-on to Prometheus Substack newsletter: Why this Kubernetes thing? Natan Yellin aantn robusta-dev
  • 3. How should I gather Prometheus metrics from all my tenants? Natan Yellin aantn robusta-dev
  • 4. Assumptions Natan Yellin aantn Clusters Namespaces Virtual clusters (e.g. capsule, kamaji, vcluster) etc... 1. Many Kubernetes tenants 2. Tenants need some form of isolation 3. We want to monitor with Prometheus robusta-dev
  • 5. What should I use? Natan Yellin aantn robusta-dev
  • 6. In the beginning there was one Natan Yellin aantn robusta-dev
  • 7. In the beginning there was one Natan Yellin aantn Simple No security isolation/RBAC No performance isolation If tenants are clusters, discovery is annoying Advantages: Disadvantages: "One team broke Prometheus for everyone else" robusta-dev
  • 8. Then there were many Natan Yellin aantn robusta-dev
  • 9. Then there were many Natan Yellin aantn Simple Security isolation Performance isolation Scalable? No unified queries No unified management More resources? Advantages: Major Disadvantage: Minor Disadvantages: "If you break it, it only breaks for your product line." robusta-dev
  • 10. What we want Natan Yellin aantn Isolation Scalability Decentralized: Query all Prometheuses at once Centralized: robusta-dev
  • 11. What else we want? Natan Yellin aantn Scalability Long term storage of metrics 1. 2. robusta-dev
  • 12. Three approaches Natan Yellin aantn robusta-dev
  • 13. Solve it outside Prometheus Natan Yellin aantn robusta-dev
  • 14. Solve it outside Prometheus Natan Yellin aantn Doesn't touch Prometheus itself Delegates problem to other tool Queries need to address one Prometheus at a time Key advantages: Key disadvantage: robusta-dev
  • 15. Multiple + Centralized (take 1) Natan Yellin aantn robusta-dev
  • 16. Multiple + central (take 1) Natan Yellin aantn Reuses existing Prometheus Federated can do roll-up Federated can selectively scrape With roll-up/selective you can't actually query all Prometheuses Scaling Key advantages: Key disadvantages: robusta-dev
  • 17. Natan Yellin aantn Disclaimer: Thanos has lots of options, I'm simplifying a little robusta-dev
  • 18. Multiple + central (take 2) Natan Yellin aantn robusta-dev
  • 19. Multiple Prometheuses + central Prometheus (take 2) Natan Yellin aantn Super scalable! Reuses existing Prometheus Very common solution, lots of tooling No RBAC built-in Key advantages: Key disadvantages: "Most mature option" - most people robusta-dev
  • 20. One Prometheus to Rule them All Natan Yellin aantn robusta-dev
  • 21. One Prometheus to Rule them All Natan Yellin aantn robusta-dev Cortex Grafana Mimir VictoriaMetrics TimescaleDB M3DB Options: ...
  • 22. Grafana Mimir Natan Yellin aantn robusta-dev Native multi-tenancy! Backed by Grafana Complexity Key advantages: Key disadvantages:
  • 23. Other useful tools Natan Yellin aantn Add prom-label-proxy to Thanos (and others) to enforce RBAC robusta-dev
  • 24. Thank you! Natan Yellin aantn A special thank you to Shalom Cohen and Evgeny Uklist + Racoons team for providing inputs robusta-dev