The Katta.Gui is a web based Graphical User Interface to monitor and administrate (work in progress) one or many Katta clusters.
How it works
Katta.Gui is a Grails web application. It is interacting with a katta cluster by communicating with the zookeeper servers of the katta cluster. It does not directly interact with the Katta api. The Application reads information from zookeeper or writes to zookeeper for example to deploy a index. It also subscribe to Metrics updates (see Katta Monitoring). The information are stored within the application database. Beside Metrics data for monitoring the application database also stores configuration data. By default an in JVM HSQL database is used but this should be changed for production. Since the web application does interact via zookeeper with Katta, it can run on any server, though in a production environment it is questionable if the master server would be a good choice.
How to start it
If you download release 0.6 or higher the katta gui is part of the distribution and can be started via command line
$ bin/katta startGui
However if you working with the sources you need to build the web application before you can start it. Since the Katta.Gui is written in Grails you need to have Grails 1.1.1 or later installed. If Grails is installed and the GRAILS_HOME environment variable is set you can build the web application with
$ ant webapp
if this was sucessful you can start it with via command line
$ bin/katta startGui
$ cd $KATTA_HOME/extras/katta.gui
$ grails run-app
What it does
Since in development, the functionality is subject to change. The early alpha version focus on monitoring. The Gui allows to setup one or more katta cluster. It provides a dashboard for each cluster that shows master, nodes and deployed indexes together with metric charts for CPU, Memory, Swat, GC etc. Also a page for each Node is provided, charting different metrics like Memory, GC, Swap etc fot the node. The available data for the charts depends on the Monitor installed at the nodes (see Monitoring Katta for details), which charts are shown also can be configured. (see below)
How to configure the charts
The data that is charted in the dashboad and node page is free configurable. In $KATTA_HOME/extras/katta.gui/grails-app/conf/Config.groovy a section in the end of this file allows to define the sparkline charts on the dashboard or flot diagrams.
See Config.groovy for samples.
How to extend it
Extending the Katta.Gui is incredible easy and contributions are very welcome. Just install Grails and have a look at the Grails Quickstart. To interact with a Katta cluster using zookeeper have a look at the DashboardController and see how it uses the ZkService. All Katta and Zkclient objects are available since the jars ar part of the grails app class path.