SlideShare a Scribd company logo
Hawkular
Successor of the JBoss ON (RHQ)
JBoss User Group Korea
tedwon
2017-11-29
Hawkular
● Open source monitoring project
● Next generation monitoring project of JBoss ON (RHQ since 2006)
○ Hawkular started end of 2014
● Apache License v2
● Provide REST services
● Providing a generic solutions to common problems.
○ From collecting rain sensors data and send an SMS on rain,
○ Monitor docker containers
○ Application Performance Monitoring,
● Adopted to the Middleware management solution in the ManageIQ project
For who ?
● IoT entusiast who needs to collect metrics and possibly need to trigger alerts
● Operators who are looking for a solution to store metrics from statsD, collectd,
syslog…​
● Developers of solutions who need long term timeseries database storage
● Users of ManageIQ who are looking for Middleware management
● Users of Kubernetes/Heapster who wants to store docker container metrics in a
long term timeseries database storage
Hawkular Projects
● Hawkular Services & Alerts
○ flagship base project
○ based on WildFly
○ provides services
■ store metrics,
■ alert on metrics,
■ keep a graph view of an inventory
● Hawkular Metrics
○ provide TimeSeries Database (TSDB) services
○ Time Series Metrics Engine based on Cassandra for scalability
○ offers a REST API to store and retrieve metrics.
● Hawkular APM
○ Application Performance Management
○ visualize which layer of an application time is spent
○ deprecated in favor of CNCF's Jaeger
Red Hat Middleware Management with CloudForms
● ManageIQ project
● Middleware Manager for Red Hat Cloudforms Technology Preview
○ https://access.redhat.com/announcements/2820611
● Provide centralized management of all the JBoss middleware products from
within the CloudForms user interface.
● Red Hat Middleware Management 7.0.TechPreview
○ https://access.redhat.com/documentation/en-us/red_hat_middleware_management/7.0.techpr
eview/html-single/installing_red_hat_middleware_management_with_cloudforms/
Hawkular Services Quick Start
Hawkular Services Quick Start
● Let’s run Hawkular
○ http://www.hawkular.org/hawkular-services/docs/quickstart-guide/
● Run Cassandra
○ docker run --name hawkular-cassandra -e CASSANDRA_START_RPC=true -d
cassandra:3.0.9
● Run Hawkular Services
○ docker run --name hawkular-services --link=hawkular-cassandra -e
CASSANDRA_NODES=hawkular-cassandra -p 8080:8080 hawkular/hawkular-services
○ docker exec -it hawkular-services bash
○ http://localhost:8080/
Hawkular Services Quick Start
● STEP 1: ADD METRICS
● STEP 2: READ THE METRICS
● STEP 3: ADD ALERTING
● STEP 4: TEST THE ALERT TRIGGER
● Metrics REST API
○ http://www.hawkular.org/hawkular-metrics/docs/user-guide/
○ http://www.hawkular.org//docs/rest/rest-metrics.html
Hawkular Services Quick Start
● STEP 1: ADD METRICS
○ metrics_day_1.json => weather data collected every 30 min for the whole day of July 15th
2016.
○ curl -v -u jdoe:password -X POST http://localhost:8080/hawkular/metrics/gauges/temperature/raw -d
@metrics_day_1.json -H "Content-Type: application/json" -H "Hawkular-Tenant: myTenant"
Hawkular Services Quick Start - Read Metrics
● STEP 2: READ THE METRICS
● from when to when we want the values, and ordered by time
○ curl -v -u jdoe:password -X GET
"http://localhost:8080/hawkular/metrics/gauges/temperature/raw?start=1468578600000&end=
1468594800001&order=ASC" -H "Content-Type: application/json" -H "Hawkular-Tenant:
myTenant"
Hawkular Services Quick Start - Read Metrics
Hawkular Services Quick Start - Downsampled
● STEP 2: READ THE METRICS
● Want to know the minimum, maximum and average values for buckets that
would last 2 hours
○ curl -v -u jdoe:password -X GET
"http://localhost:8080/hawkular/metrics/gauges/temperature/stats?bucketDuration=2h&start=1
468533600000&end=1468618200001" -H "Content-Type: application/json" -H
"Hawkular-Tenant: myTenant"
Hawkular Services Quick Start - Downsampled
Hawkular Services Quick Start
● STEP 3: ADD ALERTING
○ curl -v -u jdoe:password -X POST http://localhost:8080/hawkular/alerts/import/all -d
@trigger_definition.json -H "Content-Type: application/json" -H "Hawkular-Tenant: myTenant"
Hawkular overview
Hawkular Services Quick Start
● STEP 4: TEST THE ALERT TRIGGER
○ clear console
○ curl -v -u jdoe:password -X POST
http://localhost:8080/hawkular/metrics/gauges/temperature/raw -d @metrics_day_2.json -H
"Content-Type: application/json" -H "Hawkular-Tenant: myTenant"
● In the logs of Hawkular Services, you should see 3 INFO messages showing
that the conditions were met
Hawkular Alerts Quick Start with UI
Hawkular Alerts Quick Start with UI
● You can
○ Add New Trigger
○ Ack Alert
○ Resolve Alert
● Run Hawkular Alerts UI
○ docker stop hawkular-services
○ docker stop hawkular-cassandra
○ docker ps
○ cd hawkular-alerts/examples/tutorial/lessons
○ docker rm lessons_hawkularAlerts_1
○ docker-compose up
○ http://localhost:8080/hawkular/alerts/ui
○ ./tutorial-data.sh => generate random sample data every 5secs
○ https://github.com/hawkular/hawkular-alerts/blob/master/examples/tutorial/lessons/lesson-04-ui.adoc
Hawkular Alert Lifecycle
https://www.slideshare.net/ponceballesteros/hawkular-alerting
Hawkular APM with Jaeger
Hawkular APM with Jaeger
● Want to trace performance issue on distributed polyglot systems e.g. msa
○ Java
○ Go
○ Python
○ Node.js
○ C++
● Hawkular developed own contemporary distributed tracing systems
○ http://www.hawkular.org/blog/2016/09/19/hawkular-apm-on-msa.html
○ for application performance management
○ for distributed & micro-service applications
● e.g., Zipkin, Google Dapper
Hawkular APM with Jaeger
● Hawkular deprecated Hawkular APM project
○ http://www.hawkular.org/blog/2016/09/19/hawkular-apm-on-msa.html
● Instead, Hawkular Team collaborate on the Jaeger project
○ http://www.hawkular.org/blog/2017/04/19/hawkular-apm-jaeger.html
● Uber’s Yuri Shkuro and Red Hat’s Gary Brown, both core contributors to the
Jaeger Distributed Tracing project
○ Hawkular Team contributing to OpenTracing standard
● Distributed tracing based on OpenTracing standard
● OpenTracing is the vendor neutral open standard for distributed tracing
○ Adopted by CNCF (Cloud Native Computing Foundation)
● https://github.com/uber/jaeger
● http://opentracing.io/documentation/pages/quick-start
● https://eng.uber.com/distributed-tracing/
● Run Jaeger
○ docker run -e COLLECTOR_ZIPKIN_HTTP_PORT=9411 -p5775:5775/udp -p6831:6831/udp
-p6832:6832/udp -p5778:5778 -p16686:16686 -p14268:14268 -p9411:9411
jaegertracing/all-in-one:latest
● Jaeger UI
○ http://localhost:16686/
Let’s run Jaeger
Jaeger Example
● Spring Boot App /chaining call => Spring Boot /hello => WildFly Swarm /hello
○ https://github.com/pavolloffay/opentracing-java-examples
○ http://www.hawkular.org/blog/2017/06/9/opentracing-spring-boot.html
○ http://www.hawkular.org/blog/2017/07/opentracing-jaxrs.html
Jaeger Example
Jaeger Example
Jaeger - a Distributed Tracing System
References
● http://www.hawkular.org/
● http://www.hawkular.org/overview/
● https://access.redhat.com/articles/2221611
● http://www.hawkular.org/hawkular-services/docs/installation-guide/
● http://www.hawkular.org/hawkular-services/docs/quickstart-guide/
● http://www.hawkular.org/hawkular-services/docs/user-guide/inventory/
● http://www.hawkular.org/hawkular-services/docs/user-guide/inventory/inventory-v3-details.html
● http://www.hawkular.org/hawkular-apm/
● http://jaeger.readthedocs.io/en/latest/
● http://www.hawkular.org/hawkular-metrics/docs/user-guide/
● http://www.hawkular.org/hawkular-metrics/docs/user-guide/installation.html
● http://www.hawkular.org/hawkular-metrics/docs/user-guide/configuration.html
● https://www.slideshare.net/ponceballesteros/hawkular-alerting
● http://www.hawkular.org/community/docs/developer-guide/alerts-v1.html
● http://www.hawkular.org/community/docs/developer-guide/alerts-v2.html
● https://github.com/ManageIQ/manageiq-providers-hawkular/blob/master/GETTING_STARTED.md
● https://github.com/hawkular/hawkular-alerts/tree/master/examples/hello-world
● http://highscalability.com/blog/2010/4/27/paper-dapper-googles-large-scale-distributed-systems-tracing.html
● http://www.hawkular.org/blog/2016/09/19/hawkular-apm-on-msa.html
● https://eng.uber.com/distributed-tracing/
● https://www.slideshare.net/YuriShkuro/distributed-tracing-at-uber-scale-creating-a-treasure-map-for-your-monitoring-data
● http://www.hawkular.org/blog/2017/03/24/distributed-tracing-with-camel.html
● https://www.cncf.io/blog/2017/09/13/cncf-hosts-jaeger/
● https://blog.openshift.com/openshift-commons-briefing-82-distributed-tracing-with-jaeger-prometheus-on-kubernetes/
Thank you

More Related Content

PPT
Planning For High Performance Web Application
PDF
제3회난공불락 오픈소스 인프라세미나 - MySQL
PDF
Scaling symfony apps
PDF
Cassandra Community Webinar | In Case of Emergency Break Glass
PDF
[오픈소스컨설팅] EFK Stack 소개와 설치 방법
PPTX
Practical Operation Automation with StackStorm
PPTX
Distributed Applications with Apache Zookeeper
PPTX
Understanding DSE Search by Matt Stump
Planning For High Performance Web Application
제3회난공불락 오픈소스 인프라세미나 - MySQL
Scaling symfony apps
Cassandra Community Webinar | In Case of Emergency Break Glass
[오픈소스컨설팅] EFK Stack 소개와 설치 방법
Practical Operation Automation with StackStorm
Distributed Applications with Apache Zookeeper
Understanding DSE Search by Matt Stump

What's hot (15)

PDF
The Best and Worst of Cassandra-stress Tool (Christopher Batey, The Last Pick...
PDF
Spark / Mesos Cluster Optimization
PPTX
Kafka Tutorial: Advanced Producers
PPTX
Meetup on Apache Zookeeper
PDF
Nuvola: a tale of migration to AWS
PPTX
JahiaOne - Performance Tuning
PDF
[262] netflix 빅데이터 플랫폼
PDF
제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나-CRUI
PDF
MHA (MySQL High Availability): Getting started & moving past quirks
PPTX
Introduction to XtraDB Cluster
PPTX
Apache Zookeeper Explained: Tutorial, Use Cases and Zookeeper Java API Examples
PDF
Высокопроизводительный инференс глубоких сетей на GPU с помощью TensorRT / Ма...
PDF
1 sysadmin vs 250 clusters de stockage
PDF
Linux conna kpatch-without-stopmachine-fixed
PDF
Transforming the Ceph Integration Tests with OpenStack
The Best and Worst of Cassandra-stress Tool (Christopher Batey, The Last Pick...
Spark / Mesos Cluster Optimization
Kafka Tutorial: Advanced Producers
Meetup on Apache Zookeeper
Nuvola: a tale of migration to AWS
JahiaOne - Performance Tuning
[262] netflix 빅데이터 플랫폼
제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나-CRUI
MHA (MySQL High Availability): Getting started & moving past quirks
Introduction to XtraDB Cluster
Apache Zookeeper Explained: Tutorial, Use Cases and Zookeeper Java API Examples
Высокопроизводительный инференс глубоких сетей на GPU с помощью TensorRT / Ма...
1 sysadmin vs 250 clusters de stockage
Linux conna kpatch-without-stopmachine-fixed
Transforming the Ceph Integration Tests with OpenStack
Ad

Similar to Hawkular overview (20)

PDF
Top 10 Kubernetes Native Java Quarkus Features
PDF
Crikeycon 2019 Velociraptor Workshop
PDF
Using Docker Platform to Provide Services
PDF
Introduction to Docker and Monitoring with InfluxData
PDF
Best Practices for Developing & Deploying Java Applications with Docker
PPTX
Apache Airflow in Production
PDF
Integrate Openshift with Cloudforms
PDF
Data Science Workflows using Docker Containers
PDF
O'Reilly Software Architecture Conference London 2017: Building Resilient Mic...
PPTX
Troubleshooting containerized triple o deployment
PDF
On-Demand Image Resizing Extended - External Meet-up
PDF
Triangle Devops Meetup 10/2015
PPSX
From Zero to Hero - Nexinto
PDF
Super powered Drupal development with docker
PDF
from Docker to Moby and back. what changed ?
PDF
Getting-Started-with-Containers-and-Kubernetes_-March-2020-CNCF-Webinar.pdf
PPTX
Docker Timisoara: Dockercon19 recap slides, 23 may 2019
PDF
geOrchestra, a free, modular and secure SDI
PDF
2015-09-16 georchestra @ foss4g2015 Seoul
PDF
Magento Docker Setup.pdf
Top 10 Kubernetes Native Java Quarkus Features
Crikeycon 2019 Velociraptor Workshop
Using Docker Platform to Provide Services
Introduction to Docker and Monitoring with InfluxData
Best Practices for Developing & Deploying Java Applications with Docker
Apache Airflow in Production
Integrate Openshift with Cloudforms
Data Science Workflows using Docker Containers
O'Reilly Software Architecture Conference London 2017: Building Resilient Mic...
Troubleshooting containerized triple o deployment
On-Demand Image Resizing Extended - External Meet-up
Triangle Devops Meetup 10/2015
From Zero to Hero - Nexinto
Super powered Drupal development with docker
from Docker to Moby and back. what changed ?
Getting-Started-with-Containers-and-Kubernetes_-March-2020-CNCF-Webinar.pdf
Docker Timisoara: Dockercon19 recap slides, 23 may 2019
geOrchestra, a free, modular and secure SDI
2015-09-16 georchestra @ foss4g2015 Seoul
Magento Docker Setup.pdf
Ad

More from Ted Won (18)

PDF
Undertow RequestBufferingHandler 소개
PDF
JBoss EAP 7 & JDG 7 최신 기술 소개
PDF
JBoss Modules Internal
PDF
오픈 소스 컨트리뷰션 가이드
PDF
Jenkins X Hands-on - automated CI/CD solution for cloud native applications o...
PDF
Jenkins X - automated CI/CD solution for cloud native applications on Kubernetes
PDF
Complex Event Processing with Esper
PDF
JDG 7 & Spark Integration
PDF
지금 핫한 Real-time In-memory Stream Processing 이야기
PDF
Nara - Personalized Web Recommendation Service Quick Review
PDF
JBoss Community's Application Monitoring Platform
PDF
Real-time Big Data Analytics Practice with Unstructured Data
PDF
Red Hat Forum 2012 - JBoss RHQ - Java Application Monitoring & Management Pla...
PDF
Building Real-time CEP Application with Open Source Projects
PDF
JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기
PDF
JBoss RHQ와 Byteman을 이용한 오픈소스 자바 애플리케이션 모니터링
PPT
RHQ 공감 Seminar 6th
PDF
Complex Event Processing with Esper
Undertow RequestBufferingHandler 소개
JBoss EAP 7 & JDG 7 최신 기술 소개
JBoss Modules Internal
오픈 소스 컨트리뷰션 가이드
Jenkins X Hands-on - automated CI/CD solution for cloud native applications o...
Jenkins X - automated CI/CD solution for cloud native applications on Kubernetes
Complex Event Processing with Esper
JDG 7 & Spark Integration
지금 핫한 Real-time In-memory Stream Processing 이야기
Nara - Personalized Web Recommendation Service Quick Review
JBoss Community's Application Monitoring Platform
Real-time Big Data Analytics Practice with Unstructured Data
Red Hat Forum 2012 - JBoss RHQ - Java Application Monitoring & Management Pla...
Building Real-time CEP Application with Open Source Projects
JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기
JBoss RHQ와 Byteman을 이용한 오픈소스 자바 애플리케이션 모니터링
RHQ 공감 Seminar 6th
Complex Event Processing with Esper

Recently uploaded (20)

PDF
Categorization of Factors Affecting Classification Algorithms Selection
PPTX
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
PDF
UNIT no 1 INTRODUCTION TO DBMS NOTES.pdf
PDF
Artificial Superintelligence (ASI) Alliance Vision Paper.pdf
PPTX
Information Storage and Retrieval Techniques Unit III
PDF
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
PPTX
Fundamentals of safety and accident prevention -final (1).pptx
PPTX
Nature of X-rays, X- Ray Equipment, Fluoroscopy
PPT
Introduction, IoT Design Methodology, Case Study on IoT System for Weather Mo...
PPTX
Artificial Intelligence
PDF
EXPLORING LEARNING ENGAGEMENT FACTORS INFLUENCING BEHAVIORAL, COGNITIVE, AND ...
PDF
Visual Aids for Exploratory Data Analysis.pdf
PDF
PPT on Performance Review to get promotions
PDF
86236642-Electric-Loco-Shed.pdf jfkduklg
PDF
R24 SURVEYING LAB MANUAL for civil enggi
PDF
Automation-in-Manufacturing-Chapter-Introduction.pdf
PDF
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
PPT
Occupational Health and Safety Management System
PPTX
UNIT 4 Total Quality Management .pptx
PDF
Soil Improvement Techniques Note - Rabbi
Categorization of Factors Affecting Classification Algorithms Selection
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
UNIT no 1 INTRODUCTION TO DBMS NOTES.pdf
Artificial Superintelligence (ASI) Alliance Vision Paper.pdf
Information Storage and Retrieval Techniques Unit III
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
Fundamentals of safety and accident prevention -final (1).pptx
Nature of X-rays, X- Ray Equipment, Fluoroscopy
Introduction, IoT Design Methodology, Case Study on IoT System for Weather Mo...
Artificial Intelligence
EXPLORING LEARNING ENGAGEMENT FACTORS INFLUENCING BEHAVIORAL, COGNITIVE, AND ...
Visual Aids for Exploratory Data Analysis.pdf
PPT on Performance Review to get promotions
86236642-Electric-Loco-Shed.pdf jfkduklg
R24 SURVEYING LAB MANUAL for civil enggi
Automation-in-Manufacturing-Chapter-Introduction.pdf
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
Occupational Health and Safety Management System
UNIT 4 Total Quality Management .pptx
Soil Improvement Techniques Note - Rabbi

Hawkular overview

  • 1. Hawkular Successor of the JBoss ON (RHQ) JBoss User Group Korea tedwon 2017-11-29
  • 2. Hawkular ● Open source monitoring project ● Next generation monitoring project of JBoss ON (RHQ since 2006) ○ Hawkular started end of 2014 ● Apache License v2 ● Provide REST services ● Providing a generic solutions to common problems. ○ From collecting rain sensors data and send an SMS on rain, ○ Monitor docker containers ○ Application Performance Monitoring, ● Adopted to the Middleware management solution in the ManageIQ project
  • 3. For who ? ● IoT entusiast who needs to collect metrics and possibly need to trigger alerts ● Operators who are looking for a solution to store metrics from statsD, collectd, syslog…​ ● Developers of solutions who need long term timeseries database storage ● Users of ManageIQ who are looking for Middleware management ● Users of Kubernetes/Heapster who wants to store docker container metrics in a long term timeseries database storage
  • 4. Hawkular Projects ● Hawkular Services & Alerts ○ flagship base project ○ based on WildFly ○ provides services ■ store metrics, ■ alert on metrics, ■ keep a graph view of an inventory ● Hawkular Metrics ○ provide TimeSeries Database (TSDB) services ○ Time Series Metrics Engine based on Cassandra for scalability ○ offers a REST API to store and retrieve metrics. ● Hawkular APM ○ Application Performance Management ○ visualize which layer of an application time is spent ○ deprecated in favor of CNCF's Jaeger
  • 5. Red Hat Middleware Management with CloudForms ● ManageIQ project ● Middleware Manager for Red Hat Cloudforms Technology Preview ○ https://access.redhat.com/announcements/2820611 ● Provide centralized management of all the JBoss middleware products from within the CloudForms user interface. ● Red Hat Middleware Management 7.0.TechPreview ○ https://access.redhat.com/documentation/en-us/red_hat_middleware_management/7.0.techpr eview/html-single/installing_red_hat_middleware_management_with_cloudforms/
  • 7. Hawkular Services Quick Start ● Let’s run Hawkular ○ http://www.hawkular.org/hawkular-services/docs/quickstart-guide/ ● Run Cassandra ○ docker run --name hawkular-cassandra -e CASSANDRA_START_RPC=true -d cassandra:3.0.9 ● Run Hawkular Services ○ docker run --name hawkular-services --link=hawkular-cassandra -e CASSANDRA_NODES=hawkular-cassandra -p 8080:8080 hawkular/hawkular-services ○ docker exec -it hawkular-services bash ○ http://localhost:8080/
  • 8. Hawkular Services Quick Start ● STEP 1: ADD METRICS ● STEP 2: READ THE METRICS ● STEP 3: ADD ALERTING ● STEP 4: TEST THE ALERT TRIGGER ● Metrics REST API ○ http://www.hawkular.org/hawkular-metrics/docs/user-guide/ ○ http://www.hawkular.org//docs/rest/rest-metrics.html
  • 9. Hawkular Services Quick Start ● STEP 1: ADD METRICS ○ metrics_day_1.json => weather data collected every 30 min for the whole day of July 15th 2016. ○ curl -v -u jdoe:password -X POST http://localhost:8080/hawkular/metrics/gauges/temperature/raw -d @metrics_day_1.json -H "Content-Type: application/json" -H "Hawkular-Tenant: myTenant"
  • 10. Hawkular Services Quick Start - Read Metrics ● STEP 2: READ THE METRICS ● from when to when we want the values, and ordered by time ○ curl -v -u jdoe:password -X GET "http://localhost:8080/hawkular/metrics/gauges/temperature/raw?start=1468578600000&end= 1468594800001&order=ASC" -H "Content-Type: application/json" -H "Hawkular-Tenant: myTenant"
  • 11. Hawkular Services Quick Start - Read Metrics
  • 12. Hawkular Services Quick Start - Downsampled ● STEP 2: READ THE METRICS ● Want to know the minimum, maximum and average values for buckets that would last 2 hours ○ curl -v -u jdoe:password -X GET "http://localhost:8080/hawkular/metrics/gauges/temperature/stats?bucketDuration=2h&start=1 468533600000&end=1468618200001" -H "Content-Type: application/json" -H "Hawkular-Tenant: myTenant"
  • 13. Hawkular Services Quick Start - Downsampled
  • 14. Hawkular Services Quick Start ● STEP 3: ADD ALERTING ○ curl -v -u jdoe:password -X POST http://localhost:8080/hawkular/alerts/import/all -d @trigger_definition.json -H "Content-Type: application/json" -H "Hawkular-Tenant: myTenant"
  • 16. Hawkular Services Quick Start ● STEP 4: TEST THE ALERT TRIGGER ○ clear console ○ curl -v -u jdoe:password -X POST http://localhost:8080/hawkular/metrics/gauges/temperature/raw -d @metrics_day_2.json -H "Content-Type: application/json" -H "Hawkular-Tenant: myTenant" ● In the logs of Hawkular Services, you should see 3 INFO messages showing that the conditions were met
  • 17. Hawkular Alerts Quick Start with UI
  • 18. Hawkular Alerts Quick Start with UI ● You can ○ Add New Trigger ○ Ack Alert ○ Resolve Alert ● Run Hawkular Alerts UI ○ docker stop hawkular-services ○ docker stop hawkular-cassandra ○ docker ps ○ cd hawkular-alerts/examples/tutorial/lessons ○ docker rm lessons_hawkularAlerts_1 ○ docker-compose up ○ http://localhost:8080/hawkular/alerts/ui ○ ./tutorial-data.sh => generate random sample data every 5secs ○ https://github.com/hawkular/hawkular-alerts/blob/master/examples/tutorial/lessons/lesson-04-ui.adoc
  • 21. Hawkular APM with Jaeger ● Want to trace performance issue on distributed polyglot systems e.g. msa ○ Java ○ Go ○ Python ○ Node.js ○ C++ ● Hawkular developed own contemporary distributed tracing systems ○ http://www.hawkular.org/blog/2016/09/19/hawkular-apm-on-msa.html ○ for application performance management ○ for distributed & micro-service applications ● e.g., Zipkin, Google Dapper
  • 22. Hawkular APM with Jaeger ● Hawkular deprecated Hawkular APM project ○ http://www.hawkular.org/blog/2016/09/19/hawkular-apm-on-msa.html ● Instead, Hawkular Team collaborate on the Jaeger project ○ http://www.hawkular.org/blog/2017/04/19/hawkular-apm-jaeger.html ● Uber’s Yuri Shkuro and Red Hat’s Gary Brown, both core contributors to the Jaeger Distributed Tracing project ○ Hawkular Team contributing to OpenTracing standard ● Distributed tracing based on OpenTracing standard ● OpenTracing is the vendor neutral open standard for distributed tracing ○ Adopted by CNCF (Cloud Native Computing Foundation)
  • 23. ● https://github.com/uber/jaeger ● http://opentracing.io/documentation/pages/quick-start ● https://eng.uber.com/distributed-tracing/ ● Run Jaeger ○ docker run -e COLLECTOR_ZIPKIN_HTTP_PORT=9411 -p5775:5775/udp -p6831:6831/udp -p6832:6832/udp -p5778:5778 -p16686:16686 -p14268:14268 -p9411:9411 jaegertracing/all-in-one:latest ● Jaeger UI ○ http://localhost:16686/ Let’s run Jaeger
  • 24. Jaeger Example ● Spring Boot App /chaining call => Spring Boot /hello => WildFly Swarm /hello ○ https://github.com/pavolloffay/opentracing-java-examples ○ http://www.hawkular.org/blog/2017/06/9/opentracing-spring-boot.html ○ http://www.hawkular.org/blog/2017/07/opentracing-jaxrs.html
  • 27. Jaeger - a Distributed Tracing System
  • 28. References ● http://www.hawkular.org/ ● http://www.hawkular.org/overview/ ● https://access.redhat.com/articles/2221611 ● http://www.hawkular.org/hawkular-services/docs/installation-guide/ ● http://www.hawkular.org/hawkular-services/docs/quickstart-guide/ ● http://www.hawkular.org/hawkular-services/docs/user-guide/inventory/ ● http://www.hawkular.org/hawkular-services/docs/user-guide/inventory/inventory-v3-details.html ● http://www.hawkular.org/hawkular-apm/ ● http://jaeger.readthedocs.io/en/latest/ ● http://www.hawkular.org/hawkular-metrics/docs/user-guide/ ● http://www.hawkular.org/hawkular-metrics/docs/user-guide/installation.html ● http://www.hawkular.org/hawkular-metrics/docs/user-guide/configuration.html ● https://www.slideshare.net/ponceballesteros/hawkular-alerting ● http://www.hawkular.org/community/docs/developer-guide/alerts-v1.html ● http://www.hawkular.org/community/docs/developer-guide/alerts-v2.html ● https://github.com/ManageIQ/manageiq-providers-hawkular/blob/master/GETTING_STARTED.md ● https://github.com/hawkular/hawkular-alerts/tree/master/examples/hello-world ● http://highscalability.com/blog/2010/4/27/paper-dapper-googles-large-scale-distributed-systems-tracing.html ● http://www.hawkular.org/blog/2016/09/19/hawkular-apm-on-msa.html ● https://eng.uber.com/distributed-tracing/ ● https://www.slideshare.net/YuriShkuro/distributed-tracing-at-uber-scale-creating-a-treasure-map-for-your-monitoring-data ● http://www.hawkular.org/blog/2017/03/24/distributed-tracing-with-camel.html ● https://www.cncf.io/blog/2017/09/13/cncf-hosts-jaeger/ ● https://blog.openshift.com/openshift-commons-briefing-82-distributed-tracing-with-jaeger-prometheus-on-kubernetes/