SlideShare a Scribd company logo
13
Most read
15
Most read
16
Most read
VSHN - The DevOps Company
© 2018 VSHN AG
VSHN AG
The DevOps Company
ICINGA Camp - GOLD SPONSOR
VSHN - The DevOps Company
● 42 employees, 25+ MSc. / BSc. in Computer Science
● Owner-managed, no external investors
● SCRUM, KanBan, Agile
● Offices location directly at Zurich HB
● Founded in 2014, cash flow positive since 2015
22
Our Company
Our Values
● Take responsibility and guarantee 100% reliability
● Expert knowledge and Swiss quality in all work steps
● Cost savings through automation and standardization
● Equal Employment Opportunity
● Operation of software on any infrastructure -
whether cloud or in-house
● Collaboration with software developers -
stability despite agility
● Automation of DevOps processes
● First Kubernetes Certified Service Provider in
Switzerland
● ISO27001 certified and FINMA audited
Business & Operations processes
Our Business
Learn more at:
https://vshn.ch/
3
VSHN (pronounced ˈvɪʒn like "vision") is the
leading Swiss partner for DevOps, Docker,
Kubernetes, OpenShift and 24/7 Cloud
Operations.
We look forward to hearing from you.
Follow us on Twitter!
@vshn_ch
VSHN AG - Neugasse 10 - CH-8005 Zurich - Switzerland - +41 44 545 53 00 - https://vshn.ch/ - info@vshn.ch
VSHN - The DevOps Company
Signalilo
Visualizing Prometheus Alerts in Icinga
Simon Gerber, VSHN AG
VSHN - The DevOps Company 55
Monitoring at VSHN
VSHN - The DevOps Company 66
Monitoring OpenShift
● 25 OpenShift Clusters
○ Custom Icinga checks
● Since OpenShift 3.11
○ Prometheus
○ Alertmanager
VSHN - The DevOps Company 77
Signalilo
Alertmanager
OpenShift cluster
Signalilogenerated
alerts
webhook
VSHN
API calls
VSHN - The DevOps Company 88
Prometheus alerts in Icinga
VSHN - The DevOps Company 99
Icinga ApiUser
object ApiUser "signalilo_cluster.appuio.ch" {
password = "<redacted>"
permissions = [
{ permission = "objects/query/*"
filter = {{ host.name == "signalilo_cluster.appuio.ch" }}
},
{ permission = "objects/create/service"
filter = {{ host.name == "signalilo_cluster.appuio.ch" }}
},
{ permission = "objects/modify/service"
filter = {{ host.name == "signalilo_cluster.appuio.ch" }}
},
{ permission = "objects/delete/service"
filter = {{ host.name == "signalilo_cluster.appuio.ch" }}
},
{ permission = "actions/process-check-result"
filter = {{ host.name == "signalilo_cluster.appuio.ch" }}
}, ]
}
VSHN - The DevOps Company 1010
Icinga Host
object Host "signalilo_cluster.appuio.ch" {
display_name = "Signalilo signalilo_cluster.appuio.ch"
check_command = "dummy"
enable_passive_checks = false
enable_perfdata = false
vars.customer = "appuio"
vars.ignore_service_icinga = true
}
VSHN - The DevOps Company 1111
Icinga Heartbeat Service
template Service "signalilo-heartbeat-template" {
vars.dummy_text = {{
var service = get_service(macro("$host.name$"), macro("$service.name$"))
var lastCheck = DateTime(service.last_check).to_string()
return "Missing heartbeat pings from Signalilo. Last ping received at: " + lastCheck
}}
}
object Service "heartbeat" {
import "signalilo-heartbeat-template"
host_name = "signalilo_cluster.appuio.ch"
check_command = "dummy"
check_interval = 300s
max_check_attempts = 1
enable_perfdata = false
vars.dummy_state = 1
}
VSHN - The DevOps Company
Signalilo and Alertmanager Config
1212
containers:
- env:
- name: SIGNALILO_UUID
value: <redacted>
- name: SIGNALILO_ICINGA_HOSTNAME
value: signalilo_cluster.appuio.ch
- name: SIGNALILO_ICINGA_URL
value: https://<vshn icinga>:5665
- name: SIGNALILO_ICINGA_CA
value: |-
-----BEGIN CERTIFICATE-----
<snip>
-----END CERTIFICATE-----
- name: SIGNALILO_ICINGA_USERNAME
value: signalilo_cluster.appuio.ch
- name: SIGNALILO_ICINGA_PASSWORD
value: <redacted> # or from Kubernetes secret
- name: SIGNALILO_ALERTMANAGER_BEARER_TOKEN
value: <redacted> # or from Kubernetes secret
receivers:
- name: default
webhook_configs:
- send_resolved: true
http_config:
bearer_token: <secret>
url: http://signalilo.appuio-monitoring/webhook
Alermanager Signalilo
VSHN - The DevOps Company 1313
Alerts as Services
VSHN - The DevOps Company 1414
Alerts as Services
● Passive service
● Service state updated by Signalilo
● alertname annotation as service
display name
● message annotation as check output
● severity label translated to service
state
VSHN - The DevOps Company 1515
Alerts as Services
● All alert annotations and labels visible as
custom variables
● Services in OK state are GCd by Signalilo
○ state for GC process is stored as custom
variables on alert
VSHN - The DevOps Company 1616
Alerts as Services
● The same alert results in
update to same Icinga service
● Alert identity defined as set of
labels and annotations
○ except for severity label
Signalilo is Open Source
Coming Soon!
https://github.com/vshn/signalilo
17
Come visit us for a coffee!
VSHN AG - Neugasse 10 - CH-8005 Zürich - +41 44 545 53 00 - https://vshn.ch/ - info@vshn.ch
https://vshn.ch/kontakt/
Follow us on Twitter!
@vshn_ch
18

More Related Content

PDF
DevOps monitoring: Best Practices using OpenShift combined with Icinga & Big ...
PDF
STP (spanning tree protocol)
PPT
Multicasting and multicast routing protocols
PDF
MQTT - A practical protocol for the Internet of Things
PPT
CCNA SUMMER TRAINNING PPT
PDF
GRE (generic routing encapsulation)
PDF
PDF
Messaging Standards and Systems - AMQP & RabbitMQ
DevOps monitoring: Best Practices using OpenShift combined with Icinga & Big ...
STP (spanning tree protocol)
Multicasting and multicast routing protocols
MQTT - A practical protocol for the Internet of Things
CCNA SUMMER TRAINNING PPT
GRE (generic routing encapsulation)
Messaging Standards and Systems - AMQP & RabbitMQ

What's hot (20)

PDF
Zero-Downtime Deployment with Kubernetes, SpringBoot & Flyway
PPTX
KEDA Overview
PDF
Postgres index types
PDF
Redis cluster
PPTX
Tutorial: Using GoBGP as an IXP connecting router
PDF
Introduction to AMQP Messaging with RabbitMQ
PDF
Kubermatic CNCF Webinar - start.kubermatic.pdf
PPTX
Ansible Network Automation session1
PDF
Hands on with CoAP and Californium
PDF
Routed networks sydney
PPTX
Kubernetes PPT.pptx
PDF
Prometheus - basics
PDF
CoreOS : 설치부터 컨테이너 배포까지
PDF
Getting Started on Amazon EKS
PDF
Caching Data in OutSystems: A Tale of Gains Without Pain
PDF
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
PPTX
Getting Started with Apache CloudStack
PPTX
AMQP 1.0 introduction
PPTX
Chapter 16 : inter-vlan routing
PDF
Rundeck Overview
Zero-Downtime Deployment with Kubernetes, SpringBoot & Flyway
KEDA Overview
Postgres index types
Redis cluster
Tutorial: Using GoBGP as an IXP connecting router
Introduction to AMQP Messaging with RabbitMQ
Kubermatic CNCF Webinar - start.kubermatic.pdf
Ansible Network Automation session1
Hands on with CoAP and Californium
Routed networks sydney
Kubernetes PPT.pptx
Prometheus - basics
CoreOS : 설치부터 컨테이너 배포까지
Getting Started on Amazon EKS
Caching Data in OutSystems: A Tale of Gains Without Pain
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
Getting Started with Apache CloudStack
AMQP 1.0 introduction
Chapter 16 : inter-vlan routing
Rundeck Overview
Ad

Similar to Signalilo: Visualizing Prometheus alerts in Icinga2 - Icinga Camp Zurich 2019 (20)

PDF
DevSecOps: Bringing security to the DevOps pipeline
PDF
DevSecOps - Security in DevOps
PDF
DevSecOps: Bringing security to the DevOps pipeline
PDF
A guide to modern software development 2018
PDF
DevSecOps: Bringing security to the DevOps pipeline
PDF
IT Governance and Security Architecture in Docker, Kubernetes, OpenShift
PDF
DevOps on AWS
PDF
Automated Server Administration for DevSecOps
PDF
Security in the DevOps pipeline of containerized core application: Case Study...
PDF
Securing DevOps
PDF
Next gen software operations models in the cloud
PDF
Continuous security improvements in the DevOps process
PDF
DevOps for E-Commerce
PDF
Avoid the Vendor Lock-in Trap (with App Deployment)
PDF
DevOps & DevSecOps in Swiss Banking
PDF
Application Portability using Cloud Native Technology: Docker, Kubernetes
PPTX
DevOps for vSphere Admins
PPTX
DevOps Offerings at WhiteHedge
PDF
PDF DevOps with OpenShift 1st Edition Mike Hepburn download
PDF
APPUiO Quick Start (OpenShift > DevOps > App Dev)
DevSecOps: Bringing security to the DevOps pipeline
DevSecOps - Security in DevOps
DevSecOps: Bringing security to the DevOps pipeline
A guide to modern software development 2018
DevSecOps: Bringing security to the DevOps pipeline
IT Governance and Security Architecture in Docker, Kubernetes, OpenShift
DevOps on AWS
Automated Server Administration for DevSecOps
Security in the DevOps pipeline of containerized core application: Case Study...
Securing DevOps
Next gen software operations models in the cloud
Continuous security improvements in the DevOps process
DevOps for E-Commerce
Avoid the Vendor Lock-in Trap (with App Deployment)
DevOps & DevSecOps in Swiss Banking
Application Portability using Cloud Native Technology: Docker, Kubernetes
DevOps for vSphere Admins
DevOps Offerings at WhiteHedge
PDF DevOps with OpenShift 1st Edition Mike Hepburn download
APPUiO Quick Start (OpenShift > DevOps > App Dev)
Ad

More from Icinga (20)

PDF
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023
PDF
Extending Icinga Web with Modules: powerful, smart and easily created - Icing...
PDF
Infrastructure Monitoring for Cloud Native Enterprises - Icinga Camp Milan 2023
PDF
Incident management: Best industry practices your team should know - Icinga C...
PDF
Monitoring Cooling Units in a pharmaceutical GxP regulated environment - Icin...
PDF
SNMP Monitoring at scale - Icinga Camp Milan 2023
PPTX
Monitoring Kubernetes with Icinga - Icinga Camp Milan 2023
PPTX
Current State of Icinga - Icinga Camp Milan 2023
PDF
Efficient IT operations using monitoring systems and standardized tools - Ici...
PPTX
Tornado Complex Event Processing Framework for Icinga - Icinga Camp Zurich 2019
PDF
Moving from Icinga 1 to Icinga 2 + Director - Icinga Camp Zurich 2019
PDF
Icinga Director and vSphereDB - how they play together - Icinga Camp Zurich 2019
PDF
Current State of Icinga - Icinga Camp Zurich 2019
PDF
NetEye 4 based on Icinga 2 - Icinga Camp Milan 2019
PDF
Integrating Icinga 2 and ntopng - Icinga Camp Milan 2019
PPTX
Current State of Icinga - Icinga Camp Milan 2019
PPTX
Best of Icinga Modules - Icinga Camp Milan 2019
PPTX
hallenges of Monitoring Big Infrastructure - Icinga Camp Milan 2019
PPTX
Discover the real user experience with Alyvix - Icinga Camp Milan 2019
PDF
Current State of Logmanagement with Icinga - Icinga Camp Stockholm 2019
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023
Extending Icinga Web with Modules: powerful, smart and easily created - Icing...
Infrastructure Monitoring for Cloud Native Enterprises - Icinga Camp Milan 2023
Incident management: Best industry practices your team should know - Icinga C...
Monitoring Cooling Units in a pharmaceutical GxP regulated environment - Icin...
SNMP Monitoring at scale - Icinga Camp Milan 2023
Monitoring Kubernetes with Icinga - Icinga Camp Milan 2023
Current State of Icinga - Icinga Camp Milan 2023
Efficient IT operations using monitoring systems and standardized tools - Ici...
Tornado Complex Event Processing Framework for Icinga - Icinga Camp Zurich 2019
Moving from Icinga 1 to Icinga 2 + Director - Icinga Camp Zurich 2019
Icinga Director and vSphereDB - how they play together - Icinga Camp Zurich 2019
Current State of Icinga - Icinga Camp Zurich 2019
NetEye 4 based on Icinga 2 - Icinga Camp Milan 2019
Integrating Icinga 2 and ntopng - Icinga Camp Milan 2019
Current State of Icinga - Icinga Camp Milan 2019
Best of Icinga Modules - Icinga Camp Milan 2019
hallenges of Monitoring Big Infrastructure - Icinga Camp Milan 2019
Discover the real user experience with Alyvix - Icinga Camp Milan 2019
Current State of Logmanagement with Icinga - Icinga Camp Stockholm 2019

Recently uploaded (20)

PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
Cloud computing and distributed systems.
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPT
Teaching material agriculture food technology
PPTX
Big Data Technologies - Introduction.pptx
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Encapsulation theory and applications.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
KodekX | Application Modernization Development
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Machine learning based COVID-19 study performance prediction
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
Spectroscopy.pptx food analysis technology
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
Building Integrated photovoltaic BIPV_UPV.pdf
Cloud computing and distributed systems.
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Teaching material agriculture food technology
Big Data Technologies - Introduction.pptx
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
MYSQL Presentation for SQL database connectivity
Encapsulation theory and applications.pdf
Unlocking AI with Model Context Protocol (MCP)
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
KodekX | Application Modernization Development
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Machine learning based COVID-19 study performance prediction
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Advanced methodologies resolving dimensionality complications for autism neur...
Spectroscopy.pptx food analysis technology
“AI and Expert System Decision Support & Business Intelligence Systems”

Signalilo: Visualizing Prometheus alerts in Icinga2 - Icinga Camp Zurich 2019

  • 1. VSHN - The DevOps Company © 2018 VSHN AG VSHN AG The DevOps Company ICINGA Camp - GOLD SPONSOR
  • 2. VSHN - The DevOps Company ● 42 employees, 25+ MSc. / BSc. in Computer Science ● Owner-managed, no external investors ● SCRUM, KanBan, Agile ● Offices location directly at Zurich HB ● Founded in 2014, cash flow positive since 2015 22 Our Company Our Values ● Take responsibility and guarantee 100% reliability ● Expert knowledge and Swiss quality in all work steps ● Cost savings through automation and standardization ● Equal Employment Opportunity ● Operation of software on any infrastructure - whether cloud or in-house ● Collaboration with software developers - stability despite agility ● Automation of DevOps processes ● First Kubernetes Certified Service Provider in Switzerland ● ISO27001 certified and FINMA audited Business & Operations processes Our Business
  • 3. Learn more at: https://vshn.ch/ 3 VSHN (pronounced ˈvɪʒn like "vision") is the leading Swiss partner for DevOps, Docker, Kubernetes, OpenShift and 24/7 Cloud Operations. We look forward to hearing from you. Follow us on Twitter! @vshn_ch VSHN AG - Neugasse 10 - CH-8005 Zurich - Switzerland - +41 44 545 53 00 - https://vshn.ch/ - info@vshn.ch
  • 4. VSHN - The DevOps Company Signalilo Visualizing Prometheus Alerts in Icinga Simon Gerber, VSHN AG
  • 5. VSHN - The DevOps Company 55 Monitoring at VSHN
  • 6. VSHN - The DevOps Company 66 Monitoring OpenShift ● 25 OpenShift Clusters ○ Custom Icinga checks ● Since OpenShift 3.11 ○ Prometheus ○ Alertmanager
  • 7. VSHN - The DevOps Company 77 Signalilo Alertmanager OpenShift cluster Signalilogenerated alerts webhook VSHN API calls
  • 8. VSHN - The DevOps Company 88 Prometheus alerts in Icinga
  • 9. VSHN - The DevOps Company 99 Icinga ApiUser object ApiUser "signalilo_cluster.appuio.ch" { password = "<redacted>" permissions = [ { permission = "objects/query/*" filter = {{ host.name == "signalilo_cluster.appuio.ch" }} }, { permission = "objects/create/service" filter = {{ host.name == "signalilo_cluster.appuio.ch" }} }, { permission = "objects/modify/service" filter = {{ host.name == "signalilo_cluster.appuio.ch" }} }, { permission = "objects/delete/service" filter = {{ host.name == "signalilo_cluster.appuio.ch" }} }, { permission = "actions/process-check-result" filter = {{ host.name == "signalilo_cluster.appuio.ch" }} }, ] }
  • 10. VSHN - The DevOps Company 1010 Icinga Host object Host "signalilo_cluster.appuio.ch" { display_name = "Signalilo signalilo_cluster.appuio.ch" check_command = "dummy" enable_passive_checks = false enable_perfdata = false vars.customer = "appuio" vars.ignore_service_icinga = true }
  • 11. VSHN - The DevOps Company 1111 Icinga Heartbeat Service template Service "signalilo-heartbeat-template" { vars.dummy_text = {{ var service = get_service(macro("$host.name$"), macro("$service.name$")) var lastCheck = DateTime(service.last_check).to_string() return "Missing heartbeat pings from Signalilo. Last ping received at: " + lastCheck }} } object Service "heartbeat" { import "signalilo-heartbeat-template" host_name = "signalilo_cluster.appuio.ch" check_command = "dummy" check_interval = 300s max_check_attempts = 1 enable_perfdata = false vars.dummy_state = 1 }
  • 12. VSHN - The DevOps Company Signalilo and Alertmanager Config 1212 containers: - env: - name: SIGNALILO_UUID value: <redacted> - name: SIGNALILO_ICINGA_HOSTNAME value: signalilo_cluster.appuio.ch - name: SIGNALILO_ICINGA_URL value: https://<vshn icinga>:5665 - name: SIGNALILO_ICINGA_CA value: |- -----BEGIN CERTIFICATE----- <snip> -----END CERTIFICATE----- - name: SIGNALILO_ICINGA_USERNAME value: signalilo_cluster.appuio.ch - name: SIGNALILO_ICINGA_PASSWORD value: <redacted> # or from Kubernetes secret - name: SIGNALILO_ALERTMANAGER_BEARER_TOKEN value: <redacted> # or from Kubernetes secret receivers: - name: default webhook_configs: - send_resolved: true http_config: bearer_token: <secret> url: http://signalilo.appuio-monitoring/webhook Alermanager Signalilo
  • 13. VSHN - The DevOps Company 1313 Alerts as Services
  • 14. VSHN - The DevOps Company 1414 Alerts as Services ● Passive service ● Service state updated by Signalilo ● alertname annotation as service display name ● message annotation as check output ● severity label translated to service state
  • 15. VSHN - The DevOps Company 1515 Alerts as Services ● All alert annotations and labels visible as custom variables ● Services in OK state are GCd by Signalilo ○ state for GC process is stored as custom variables on alert
  • 16. VSHN - The DevOps Company 1616 Alerts as Services ● The same alert results in update to same Icinga service ● Alert identity defined as set of labels and annotations ○ except for severity label
  • 17. Signalilo is Open Source Coming Soon! https://github.com/vshn/signalilo 17
  • 18. Come visit us for a coffee! VSHN AG - Neugasse 10 - CH-8005 Zürich - +41 44 545 53 00 - https://vshn.ch/ - info@vshn.ch https://vshn.ch/kontakt/ Follow us on Twitter! @vshn_ch 18