SlideShare a Scribd company logo
OSMC
Kris Buytaert

@krisbuytaert
Pipeline all the Dashboards as Code ?
November , 2021
• I used to be a developer
• Then I became an Ops person
• Chief Trolling/Travel/Technical Officer @ Inuits.eu
• Everything is a Freaking DNS Problem
• DNS : devops needs sushi
• Buiding Clouds since before the Bookstore
• Organiser of #devopsdays, #cfgmgmtcamp, #loadays, ...
Who am I ?
@krisbuytaert
• Operational Metrics
• Application Metrics
• Business Metrics
• Travel time to home during Traffic Jams
• Time between last conference
• Legobricks ordered
• Sandwiches ordered by the team
Dashboard all the things
@krisbuytaert
• People edit a Dashboard
• People clone a Dashboard
• People create a new Dashboard
• People "improve" other people's Dashboards
• People delete other people's Dashboards
class {'chaos':

ensure => present

}

Dashboards Sprawl
@krisbuytaert
• No more hacking in production
No more manual changes?
@krisbuytaert
What do we want
@krisbuytaert
Jsonnet is a DSL to build JSON Data,

JSON On steroids
Jsonnet is dead
Jsonnet is alive
Grafonet

GrafanaLib
Dashboard as Code
@krisbuytaert
Look a Squirrel !
@krisbuytaert
We are all JSON engineers

We are all YAML engineers
The average end user who wants to create his own dashboard

is not a devoops YAML Engineer
This is just too complex
Problems with Dashboard as Code
@krisbuytaert
• A dev Grafana
• Dashboard as Code
• Dashboard for Dirty Clickers
• A prod Grafana (read only)
• A way to promote from dev to prod
What we really need
@krisbuytaert
https://github.com/inuits/dashboard-manager
A command line utility to manage and promote dashboards between Grafana
instances, coupled with gitlab-ci.
Dashboard Manager for Grafana
@krisbuytaert
grafana_instances_output:

- api_key_file: production-secret

url: http://127.0.0.1:3000

name: prod

grafana_instances_input:

- api_key_file: dev-secret

url: https://remote-dev.example.com/

name: dev

http_client:

# Configured like alertmanager http client:

# https://prometheus.io/docs/alerting/latest/configuration/#http_conf
tls_config:

insecure_skip_verify: true

Example Configuration
@krisbuytaert
fetch --output-directory=OUTPUT-DIRECTORY

Fetch dashboards from input grafana.



compare --dashboards-directory=DASHBOARDS-DIRECTORY --results=RESULTS

Compare dashboards.



upload --dashboards-directory=DASHBOARDS-DIRECTORY --input-instance=INPUT-I
--dashboards=DASHBOARDS

Upload dashboards.



Usage
@krisbuytaert
Step 1 : User creates Dashboard in dev
@krisbuytaert
Step 2 : Trigger the pipeline
@krisbuytaert
Step 3 : Check downstream Created Jobs
@krisbuytaert
Step 4 : Promote the (individual) Dashboard
@krisbuytaert
Step 5 : New dashboard is in prod
@krisbuytaert
• Usable for End Users
• Version controlled
• Reproducable
• Preventing dashboard Sprawl
• Can still be used for dashboards from "real" code. to do the promotions
Conclusion
@krisbuytaert
Kris Buytaert
@krisbuytaert
kris@inuits.eu
Essensteenweg 31
2930 Brasschaat
Belgium
Contact:
info@inuits.eu
+32-3-8082105

More Related Content

ODP
Continuous Delivery of (y)our infrastructure.
Kris Buytaert
 
ODP
Building and Deploying MediaSalsa, an Open Source DAM as Saas platform
Kris Buytaert
 
ODP
Future of Sysadmin 2014
Kris Buytaert
 
PDF
Monitoring in the cloud with Puppet
Kris Buytaert
 
PDF
Velocity 2011: Production Begins in Development
dev2ops
 
PDF
Help , My Datacenter is on fire
Kris Buytaert
 
PDF
GitOps , done Right
Kris Buytaert
 
PDF
.Net OSS Ci & CD with Jenkins - JUC ISRAEL 2013
Tikal Knowledge
 
Continuous Delivery of (y)our infrastructure.
Kris Buytaert
 
Building and Deploying MediaSalsa, an Open Source DAM as Saas platform
Kris Buytaert
 
Future of Sysadmin 2014
Kris Buytaert
 
Monitoring in the cloud with Puppet
Kris Buytaert
 
Velocity 2011: Production Begins in Development
dev2ops
 
Help , My Datacenter is on fire
Kris Buytaert
 
GitOps , done Right
Kris Buytaert
 
.Net OSS Ci & CD with Jenkins - JUC ISRAEL 2013
Tikal Knowledge
 

What's hot (20)

PDF
PuppetConf 2016: A Tale of Two Hierarchies: Group Policy & Puppet – Matt Ston...
Puppet
 
PDF
Docker Best Practices Workshop
Ahmed AbouZaid
 
PDF
Git and GitHub for Documentation
Anne Gentle
 
PDF
JHipster overview and roadmap (August 2017)
Julien Dubois
 
PDF
ContainerCon - Test Driven Infrastructure
Yury Tsarev
 
PDF
Vincit Teatime 2015.2 - Niko Kurtti: SaaSiin pa(i)nostusta
VincitOy
 
PPTX
Building A Distributed Build System at Google Scale (StrangeLoop 2016)
Aysylu Greenberg
 
PDF
Code review vs pull request
Bryan Liu
 
KEY
Make It Cooler: Using Decentralized Version Control
indiver
 
PDF
An intro to git
Dan Shrader
 
PDF
calmio-cicd-containers
Balaji Janakiram
 
PPTX
Ice breaker with dev ops
Mukta Aphale
 
PDF
CI is dead, long live CI
Frédéric Lepied
 
PDF
Gitlab ci-cd
Dan MAGIER
 
PDF
Distributed systems in practice, in theory (JAX London)
Aysylu Greenberg
 
PDF
Jenkins vs GitLab CI
CEE-SEC(R)
 
PDF
Using Docker for Testing
Mukta Aphale
 
PPTX
GitLab for CI/CD process
HYS Enterprise
 
PDF
Hadoop Summit 2013 : Continuous Integration on top of hadoop
Wisely chen
 
PDF
JHipster Conf 2019 English keynote
Julien Dubois
 
PuppetConf 2016: A Tale of Two Hierarchies: Group Policy & Puppet – Matt Ston...
Puppet
 
Docker Best Practices Workshop
Ahmed AbouZaid
 
Git and GitHub for Documentation
Anne Gentle
 
JHipster overview and roadmap (August 2017)
Julien Dubois
 
ContainerCon - Test Driven Infrastructure
Yury Tsarev
 
Vincit Teatime 2015.2 - Niko Kurtti: SaaSiin pa(i)nostusta
VincitOy
 
Building A Distributed Build System at Google Scale (StrangeLoop 2016)
Aysylu Greenberg
 
Code review vs pull request
Bryan Liu
 
Make It Cooler: Using Decentralized Version Control
indiver
 
An intro to git
Dan Shrader
 
calmio-cicd-containers
Balaji Janakiram
 
Ice breaker with dev ops
Mukta Aphale
 
CI is dead, long live CI
Frédéric Lepied
 
Gitlab ci-cd
Dan MAGIER
 
Distributed systems in practice, in theory (JAX London)
Aysylu Greenberg
 
Jenkins vs GitLab CI
CEE-SEC(R)
 
Using Docker for Testing
Mukta Aphale
 
GitLab for CI/CD process
HYS Enterprise
 
Hadoop Summit 2013 : Continuous Integration on top of hadoop
Wisely chen
 
JHipster Conf 2019 English keynote
Julien Dubois
 
Ad

Similar to Pipeline all the Dashboards as Code (20)

PDF
stackconf 2022: Infrastructure Automation (anti) patterns
NETWAYS
 
PDF
Infrastructure as Code Patterns
Kris Buytaert
 
PDF
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
panagenda
 
PPTX
4D Pubs - Distributed Dynamic Document Dsplay
Chris Despopoulos
 
PPT
Freelancer Weapons of mass productivity
Gregg Coppen
 
PDF
DevOpsCon 2015 - DevOps in Mobile Games
Andreas Katzig
 
PDF
Serverless and you - where do i run my stateless code
Gabriela Ferrara
 
PDF
Stash – Taking Expedia to New Heights - David Williams and Christopher Pepe
Atlassian
 
PPTX
Web and App Performance: Top Problems to avoid to keep you out of the News
Andreas Grabner
 
PDF
Serverless and you @ Women Who Code London 2020
Gabriela Ferrara
 
PDF
Devops For Drupal
Kris Buytaert
 
PDF
Moving to Databricks & Delta
Databricks
 
PDF
Tips and Tricks for Automating Windows with Chef
Chef Software, Inc.
 
PPTX
Solutions to reduce Total Cost of Setup (TCS) and simplify your life! - #iJac...
Andrea Fontana
 
PDF
Devoxx UK 22: Debugging Java Microservices "Remocally" in Kubernetes with Tel...
Daniel Bryant
 
PPTX
GIB2021 - Dan Probert - BizTalk Migrator Deep Dive
probertdaniel
 
PPTX
Habitat at LinuxLab IT
Mandi Walls
 
PDF
Icinga Camp Berlin 2018 - Dev and Ops Stories - Integrations++
Icinga
 
ODP
CiviCRM for Drupal Developers, Designers, and Site Builders - DrupalCamp Colo...
Kevin Reynen
 
PDF
qooxdoo 3.5
Martin Wittemann
 
stackconf 2022: Infrastructure Automation (anti) patterns
NETWAYS
 
Infrastructure as Code Patterns
Kris Buytaert
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
panagenda
 
4D Pubs - Distributed Dynamic Document Dsplay
Chris Despopoulos
 
Freelancer Weapons of mass productivity
Gregg Coppen
 
DevOpsCon 2015 - DevOps in Mobile Games
Andreas Katzig
 
Serverless and you - where do i run my stateless code
Gabriela Ferrara
 
Stash – Taking Expedia to New Heights - David Williams and Christopher Pepe
Atlassian
 
Web and App Performance: Top Problems to avoid to keep you out of the News
Andreas Grabner
 
Serverless and you @ Women Who Code London 2020
Gabriela Ferrara
 
Devops For Drupal
Kris Buytaert
 
Moving to Databricks & Delta
Databricks
 
Tips and Tricks for Automating Windows with Chef
Chef Software, Inc.
 
Solutions to reduce Total Cost of Setup (TCS) and simplify your life! - #iJac...
Andrea Fontana
 
Devoxx UK 22: Debugging Java Microservices "Remocally" in Kubernetes with Tel...
Daniel Bryant
 
GIB2021 - Dan Probert - BizTalk Migrator Deep Dive
probertdaniel
 
Habitat at LinuxLab IT
Mandi Walls
 
Icinga Camp Berlin 2018 - Dev and Ops Stories - Integrations++
Icinga
 
CiviCRM for Drupal Developers, Designers, and Site Builders - DrupalCamp Colo...
Kevin Reynen
 
qooxdoo 3.5
Martin Wittemann
 
Ad

More from Kris Buytaert (20)

PDF
Years of (not) learning , from devops to devoops
Kris Buytaert
 
PDF
Observability will not fix your Broken Monitoring ,Ignite
Kris Buytaert
 
PDF
From devoops to devops 13 years of (not) learning
Kris Buytaert
 
PDF
Devops is Dead, Long live Devops
Kris Buytaert
 
PDF
10 years of #devopsdays, but what have we really learned ?
Kris Buytaert
 
PDF
Continuous Infrastructure First
Kris Buytaert
 
PDF
Is there a Future for devops ?
Kris Buytaert
 
PDF
10 Years of #devopsdays weirdness
Kris Buytaert
 
PDF
ADDO 2019: Looking back at over 10 years of Devops
Kris Buytaert
 
PDF
Can we fix dev-oops ?
Kris Buytaert
 
PDF
Continuous Infrastructure First Ignite Edition
Kris Buytaert
 
PDF
Continuous Infrastructure First
Kris Buytaert
 
PDF
Open Source Monitoring in 2019
Kris Buytaert
 
PDF
Migrating to Puppet 5
Kris Buytaert
 
ODP
Repositories as Code
Kris Buytaert
 
PDF
Devops is a Security Requirement
Kris Buytaert
 
ODP
Is there a future for devops ?
Kris Buytaert
 
ODP
Deploying your SaaS stack OnPrem
Kris Buytaert
 
ODP
Looking back at 5 years of #cfgmgmtcamp
Kris Buytaert
 
PDF
Pipeline as code for your infrastructure as Code
Kris Buytaert
 
Years of (not) learning , from devops to devoops
Kris Buytaert
 
Observability will not fix your Broken Monitoring ,Ignite
Kris Buytaert
 
From devoops to devops 13 years of (not) learning
Kris Buytaert
 
Devops is Dead, Long live Devops
Kris Buytaert
 
10 years of #devopsdays, but what have we really learned ?
Kris Buytaert
 
Continuous Infrastructure First
Kris Buytaert
 
Is there a Future for devops ?
Kris Buytaert
 
10 Years of #devopsdays weirdness
Kris Buytaert
 
ADDO 2019: Looking back at over 10 years of Devops
Kris Buytaert
 
Can we fix dev-oops ?
Kris Buytaert
 
Continuous Infrastructure First Ignite Edition
Kris Buytaert
 
Continuous Infrastructure First
Kris Buytaert
 
Open Source Monitoring in 2019
Kris Buytaert
 
Migrating to Puppet 5
Kris Buytaert
 
Repositories as Code
Kris Buytaert
 
Devops is a Security Requirement
Kris Buytaert
 
Is there a future for devops ?
Kris Buytaert
 
Deploying your SaaS stack OnPrem
Kris Buytaert
 
Looking back at 5 years of #cfgmgmtcamp
Kris Buytaert
 
Pipeline as code for your infrastructure as Code
Kris Buytaert
 

Recently uploaded (20)

PDF
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
PDF
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
PPTX
Agile Chennai 18-19 July 2025 | Emerging patterns in Agentic AI by Bharani Su...
AgileNetwork
 
PPTX
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
PDF
The Future of Artificial Intelligence (AI)
Mukul
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
PPTX
Simple and concise overview about Quantum computing..pptx
mughal641
 
PDF
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
PDF
AI-Cloud-Business-Management-Platforms-The-Key-to-Efficiency-Growth.pdf
Artjoker Software Development Company
 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
PPTX
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
PDF
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
PPTX
The Future of AI & Machine Learning.pptx
pritsen4700
 
PDF
Doc9.....................................
SofiaCollazos
 
PDF
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
PDF
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
PDF
How ETL Control Logic Keeps Your Pipelines Safe and Reliable.pdf
Stryv Solutions Pvt. Ltd.
 
PPTX
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
PDF
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
Agile Chennai 18-19 July 2025 | Emerging patterns in Agentic AI by Bharani Su...
AgileNetwork
 
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
The Future of Artificial Intelligence (AI)
Mukul
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
Simple and concise overview about Quantum computing..pptx
mughal641
 
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
AI-Cloud-Business-Management-Platforms-The-Key-to-Efficiency-Growth.pdf
Artjoker Software Development Company
 
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
The Future of AI & Machine Learning.pptx
pritsen4700
 
Doc9.....................................
SofiaCollazos
 
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
Make GenAI investments go further with the Dell AI Factory
Principled Technologies
 
How ETL Control Logic Keeps Your Pipelines Safe and Reliable.pdf
Stryv Solutions Pvt. Ltd.
 
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 

Pipeline all the Dashboards as Code

  • 1. OSMC Kris Buytaert @krisbuytaert Pipeline all the Dashboards as Code ? November , 2021
  • 2. • I used to be a developer • Then I became an Ops person • Chief Trolling/Travel/Technical Officer @ Inuits.eu • Everything is a Freaking DNS Problem • DNS : devops needs sushi • Buiding Clouds since before the Bookstore • Organiser of #devopsdays, #cfgmgmtcamp, #loadays, ... Who am I ? @krisbuytaert
  • 3. • Operational Metrics • Application Metrics • Business Metrics • Travel time to home during Traffic Jams • Time between last conference • Legobricks ordered • Sandwiches ordered by the team Dashboard all the things @krisbuytaert
  • 4. • People edit a Dashboard • People clone a Dashboard • People create a new Dashboard • People "improve" other people's Dashboards • People delete other people's Dashboards class {'chaos': ensure => present } Dashboards Sprawl @krisbuytaert
  • 5. • No more hacking in production No more manual changes? @krisbuytaert
  • 6. What do we want @krisbuytaert
  • 7. Jsonnet is a DSL to build JSON Data, JSON On steroids Jsonnet is dead Jsonnet is alive Grafonet GrafanaLib Dashboard as Code @krisbuytaert
  • 8. Look a Squirrel ! @krisbuytaert
  • 9. We are all JSON engineers We are all YAML engineers The average end user who wants to create his own dashboard is not a devoops YAML Engineer This is just too complex Problems with Dashboard as Code @krisbuytaert
  • 10. • A dev Grafana • Dashboard as Code • Dashboard for Dirty Clickers • A prod Grafana (read only) • A way to promote from dev to prod What we really need @krisbuytaert
  • 11. https://github.com/inuits/dashboard-manager A command line utility to manage and promote dashboards between Grafana instances, coupled with gitlab-ci. Dashboard Manager for Grafana @krisbuytaert
  • 12. grafana_instances_output: - api_key_file: production-secret url: http://127.0.0.1:3000 name: prod grafana_instances_input: - api_key_file: dev-secret url: https://remote-dev.example.com/ name: dev http_client: # Configured like alertmanager http client: # https://prometheus.io/docs/alerting/latest/configuration/#http_conf tls_config: insecure_skip_verify: true Example Configuration @krisbuytaert
  • 13. fetch --output-directory=OUTPUT-DIRECTORY Fetch dashboards from input grafana. compare --dashboards-directory=DASHBOARDS-DIRECTORY --results=RESULTS Compare dashboards. upload --dashboards-directory=DASHBOARDS-DIRECTORY --input-instance=INPUT-I --dashboards=DASHBOARDS Upload dashboards. Usage @krisbuytaert
  • 14. Step 1 : User creates Dashboard in dev @krisbuytaert
  • 15. Step 2 : Trigger the pipeline @krisbuytaert
  • 16. Step 3 : Check downstream Created Jobs @krisbuytaert
  • 17. Step 4 : Promote the (individual) Dashboard @krisbuytaert
  • 18. Step 5 : New dashboard is in prod @krisbuytaert
  • 19. • Usable for End Users • Version controlled • Reproducable • Preventing dashboard Sprawl • Can still be used for dashboards from "real" code. to do the promotions Conclusion @krisbuytaert