This project has retired. For details please refer to its Attic page.
Chukwa -

Chukwa Quick Start Guide

Purpose

Chukwa is a system for large-scale reliable log collection and processing with Hadoop. The Chukwa design overview discusses the overall architecture of Chukwa. You should read that document before this one. The purpose of this document is to help you install and configure Chukwa.

Pre-requisites

Chukwa should work on any POSIX platform, but GNU/Linux is the only production platform that has been tested extensively. Chukwa has also been used successfully on Mac OS X, which several members of the Chukwa team use for development.

The only absolute software requirements are Java 1.6 or better, ZooKeeper 3.4.x, HBase 0.96.x and Hadoop 1.x.

The Chukwa cluster management scripts rely on ssh; these scripts, however, are not required if you have some alternate mechanism for starting and stopping daemons.

Installing Chukwa

A minimal Chukwa deployment has five components:

  • A Hadoop and HBase cluster on which Chukwa will process data (referred to as the Chukwa cluster).
  • One or more agent processes, that send monitoring data to HBase. The nodes with active agent processes are referred to as the monitored source nodes.
  • Data analytics script, summarize Hadoop Cluster Health.
  • HICC, the Chukwa visualization tool.
Chukwa 0.6.0 Architecture

First Steps

  • Obtain a copy of Chukwa. You can find the latest release on the Chukwa release page.
  • Un-tar the release, via tar xzf.
  • Make sure a copy of Chukwa is available on each node being monitored.
  • We refer to the directory containing Chukwa as CHUKWA_HOME. It may be useful to set CHUKWA_HOME explicitly in your environment for ease of use.

Setting Up Chukwa Cluster

Configure Hadoop

  1. Copy Chukwa files to Hadoop directory:
    cp $CHUKWA_CONF_DIR/hadoop-log4j.properties $HADOOP_CONF_DIR/log4j.properties
    cp $CHUKWA_HOME/etc/chukwa/hadoop-metrics2.properties $HADOOP_CONF_DIR/hadoop-metrics2.properties
    cp $CHUKWA_HOME/share/chukwa/chukwa-0.6.0-client.jar $HADOOP_HOME/share/hadoop/lib
    cp $CHUKWA_HOME/share/chukwa/lib/json-simple-1.1.jar $HADOOP_HOME/share/hadoop/lib
  2. Restart your Hadoop Cluster. General Hadoop configuration is available at: Hadoop Configuration
  3. Make sure HBase is started. General HBASE configuration is available at: HBase Configuration
  4. After Hadoop and HBase are started, run:
    bin/hbase shell < CHUKWA_HOME/etc/chukwa/hbase.schema

    This procedure initializes the default Chukwa HBase schema.

Configuring And Starting Chukwa Agent

  1. Edit CHUKWA_HOME/etc/chukwa/chukwa-env.sh. Make sure that JAVA_HOME, HADOOP_HOME, HADOOP_CONF_DIR, HBASE_HOME, and HBASE_CONF_DIR are set correctly.
  2. In CHUKWA_HOME, run:
    bin/chukwa agent

Setup Cluster Aggregation Script

For data analytics with Apache Pig, there are some additional environment setup. Apache Pig does not use the same environment variable name as Hadoop, therefore make sure the following environment are setup correctly:

  1. Download and setup Apache Pig 0.9.1.
  2. Define Apache Pig class path:
    export PIG_CLASSPATH=$HADOOP_CONF_DIR:$HBASE_CONF_DIR
  3. Create a jar file of HBASE_CONF_DIR, run:
    jar cf $CHUKWA_HOME/hbase-env.jar $HBASE_CONF_DIR
  4. Setup a cron job or Hudson job for analytics script to run periodically:
    pig -Dpig.additional.jars=${HBASE_HOME}/hbase-0.90.4.jar:${HBASE_HOME}/lib/zookeeper-3.3.2.jar:${PIG_PATH}/pig.jar:${CHUKWA_HOME}/hbase-env.jar ${CHUKWA_HOME}/script/pig/ClusterSummary.pig

Start HICC

The Hadoop Infrastructure Care Center (HICC) is the Chukwa web user interface.

  1. To start HICC, do the following:
    bin/chukwa hicc

Data Visualization

  1. Once the webcontainer with HICC has been started, point your favorite browser to:
    http://<server>:4080/hicc/
  2. The default user name and password is "admin" without quotes.
  3. Metrics data collected by Chukwa Agent will be browsable through Graph Explorer widget.