1

I am trying to follow the Apache documentation in order to integrate Prometheus with Apache Hadoop. One of the preliminary steps is to setup Apache Ozone cluster. However, I am finding issues in running the ozone cluster concurrently with Hadoop. It throws a class not found exception for "org.apache.hadoop.ozone.HddsDatanodeService" whenever I try to start the ozone manager or storage container manager.

I also found that ozone 1.0 release is pretty recent and it is mentioned that it is tested with Hadoop 3.1. I have a running Hadoop cluster of version of 3.3.0. Now, I doubt if the version is a problem.

The tar ball for Ozone also has the Hadoop config files, but I wanted to configure ozone with my existing Hadoop cluster. I want to configure the ozone with my existing hadoop cluster.

Please let me know what should be the right approach here. If this can not be done, then please also let me know what is good way to monitor and extract metrics for Apache Hadoop in production.

Olaf Kock
  • 46,930
  • 8
  • 59
  • 90
  • You dont need Ozone to setup the JMX exporter... What steps are you referring to? – OneCricketeer Jan 24 '21 at 11:06
  • I am referring to the following document which talks about the steps to integrate Prometheus with Hadoop. The first step here is to setup a Ozone cluster. https://hadoop.apache.org/ozone/docs/0.4.0-alpha/prometheus.html – Sitakant Mishra Jan 25 '21 at 17:31
  • Okay, that just says Ozone exposes a metrics endpoint that Prometheus can scrape. That being said, if you don't currently have a need for Ozone, then you don't need to run it for getting other Hadoop metrics into Prometheus. That would just be adding the JMX exporter into the `HADOOP_OPTS` variable in `hadoop-env.sh` – OneCricketeer Jan 25 '21 at 17:45
  • I can see metrics data in the JMX exporter through the HTTP endpoint. However, this data is in Json format. Is there a way I can integrate Prometheus or something so that charts can be drawn with this Json data for visualization? – Sitakant Mishra Jan 25 '21 at 22:55
  • The Namenode, Datanode, and YARN has an HTTP `/jmx` JSON endpoint, but that's not the same thing as using the Prometheus JMX Exporter https://grafana.com/blog/2020/06/25/monitoring-java-applications-with-the-prometheus-jmx-exporter-and-grafana/ You could also write code to scrape JSON like this repo https://github.com/shunfei/hadoop_exporter – OneCricketeer Jan 26 '21 at 00:26
  • That is great. Thank you so much. I really appreciate it. – Sitakant Mishra Jan 26 '21 at 16:50

0 Answers0