- Table of contents
- Начальная настройка мониторинга Java для Zabbix и GF
Начальная настройка мониторинга Java для Zabbix и GF¶
С выходом Zabbix 2 появилась возможность мониторить состояние сервера GlassFish почти «нативными» средствами. В статье мы исходим из:
- Zabbix 2.0.2. Извините, но установку и настройку собственно системы мониторинга мы описывать не будем. Для Debian доступен в виде пакетов и мы считаем, что сам сервер установлен именно «пакетным» способом
- Zabbix Java Gataway пока не доступен в качестве самостоятельного приложения
- Настройка «Доцеро» производилась на базе SunJDK, примерно, как в статье по установке «Доцеро»
- Статья для вдумчивого выполнения, внимательно смотрите, что делаете :)
Проверка на «вшивость»¶
В пути запуска должны быть доступны приложения из комплекта JDK — java, javac и jar. У нас это реализовано ссылками:
# ls -la /usr/bin/ja* lrwxrwxrwx 1 root root 16 Сен 9 23:16 /usr/bin/jar -> /usr/lib/jvm/jar lrwxrwxrwx 1 root root 17 Фев 19 2012 /usr/bin/java -> /usr/lib/jvm/java lrwxrwxrwx 1 root root 18 Сен 9 23:16 /usr/bin/javac -> /usr/lib/jvm/javac # ls -la /usr/lib/jvm/ja* lrwxrwxrwx 1 root root 19 Сен 9 23:14 /usr/lib/jvm/jar -> jdk1.6.0_31/bin/jar lrwxrwxrwx 1 root root 20 Фев 19 2012 /usr/lib/jvm/java -> jdk1.6.0_31/bin/java lrwxrwxrwx 1 root root 21 Сен 9 23:14 /usr/lib/jvm/javac -> jdk1.6.0_31/bin/javac # java -version java version "1.6.0_31" Java(TM) SE Runtime Environment (build 1.6.0_31-b04) Java HotSpot(TM) 64-Bit Server VM (build 20.6-b01, mixed mode) # jar -version Usage: jar {ctxui}[vfm0Me] [jar-file] [manifest-file] [entry-point] [-C dir] files ... [...Фигня поскипана...] # javac -version javac 1.6.0_31
Собираем Gateway¶
Дальше мы действуем, руководствуясь статьей с официального сайта по Java Gateway Замечания к листингу:
- wget сохраняет с кривым именем, приходится переименовывать
- Поскольку сам сервер zabbix у нас установлен корректно, пакетами Debian, то java gateway в таком виде — явление временное и потом (когда появится самостоятельный пакет) его надо будет снести не засоряя систему. Посему такой префикс для инсталляции.
# cd /usr/local/src # wget http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.0.2/zabbix-2.0.2.tar.gz/download # mv download zabbix-2.0.2.tar.gz # tar zxvf zabbix-2.0.2.tar.gz # zabbix-2.0.2/ # ./configure --enable-java --prefix=/usr/local/zabbix202 # make install
Конфигурируем¶
Проверяем наличие в конфигурационном файле zabbix-сервера (/etc/zabbix/zabbix_server.conf) параметров связи с gateway.
JavaGateway=localhost JavaGatewayPort=10052 StartJavaPollers=2
Залезаем в каталог /usr/local/zabbix202/sbin/zabbix_java . По желанию, можно подкорректировать файлы настроек: lib/logback.xml , lib/logback-console.xml и settings.sh .
Запускаем — ./startup.sh
Проверяем, что работает:
# cat /tmp/zabbix_java.log 2012-09-10 09:29:02.006 [main] INFO com.zabbix.gateway.JavaGateway - Zabbix Java Gateway 2.0.2 (revision 29214) has started 2012-09-10 09:29:02.013 [main] INFO com.zabbix.gateway.JavaGateway - listening on 0.0.0.0/0.0.0.0:10052 # netstat -an |fgrep 10052 tcp6 0 0 :::10052 :::* LISTEN
Дальше все просто, делается по документации к zabbix . Замечание: в GF интерфейс jmx уже настроен. К нему можно подключаться от имени admin.
- создаем JMX интерфейс для нашего хоста
- заводим элемент данных.
- Тип: JMX агент
- Ключ: jmx["java.lang:type=Threading","ThreadCount"] — мониторим количество нитей
- Имя пользователя: admin
- Пароль: соответственно, админа от нашего GF
- Единица измерения: шт. — ну, не в килограммах же... :)
- Цепляем этот элемент к нашему хосту
Наслаждаемся...
Если что не так¶
Ставим в файле lib/logback.xml уровень логгирования повыше и перезапускаем Java Gateway.
<root level="debug"> <appender-ref ref="FILE" /> </root>
Ссылки:
- Установка «Доцеро» на Debian
- Zabbix 2
- Мониторинг JMX
- Установка и настройка Java Gateway