Pull to refresh

Zabbix на OpenShift часть 2 — подключение агента

Reading time 2 min
Views 4.6K
В этой статье хочу продолжить делиться опытом по созданию Zabbix-сервера на хостинге Openshift. О базовой установке и настройке я рассказывал в предыдущей статье «Установка Zabbix 2.4 на RedHat Openshift». В этой статье речь пойдёт о установке zabbix-agent на локальный хост (который будем мониторить) и настройку соединения его с zabbix-server через ssh-туннель.



Для начала надо создать новую пару ключей (для безопасности) и поместить публичный ключ в хранилище ключей OpenShift.
Проверяем,

% ssh 55e9bc400c1e66a589000029@zabbix-chinacoolhacker.rhcloud.com
[zabbix-chinacoolhacker.rhcloud.com 55e9bc400c1e66a589000029]\>

Для проброса туннеля нужно знать свой локальный ip приложения OpenShift.

[zabbix-chinacoolhacker.rhcloud.com 55e9bc400c1e66a589000029]\> export  | grep OPENSHIFT_PHP_IP
declare -x OPENSHIFT_PHP_IP="127.13.151.129"


Теперь создадим скрипт, который будет поддерживать на локальном хосте ssh-туннель:

#!/bin/sh
SSH_DAEMON="/usr/bin/ssh"
SSH_DAEMON_OPTS="-2 -N -f -L"
LOCAL_PREF="10051:<YOUR_LOCAL_OPENSHIFT_IP>:30051"
REMOTE_PREF="<USER>@<YOUR_SERVER>.rhcloud.com"
CONNECT=" $SSH_DAEMON $SSH_DAEMON_OPTS $LOCAL_PREF $REMOTE_PREF"
#
STAT=$(ps auxww | grep "$CONNECT" | grep -v grep | wc -l)
if [ $STAT == 0 ]; then
   $CONNECT
   exit 0;
else
  exit 0;
fi

И поместим его в кронтаб непривилегированного пользователя (например, zabbix) на выполнение раз в минуту.
Проверяем:

user@localhost:~ % telnet localhost 10051
Trying ::1...
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
^]
telnet> quit

Устанавливаем на localhost агента, создаём примерно такой конфиг zabbix_agentd.conf:

LogFile=/tmp/zabbix_agentd.log
LogFileSize=1
Server=127.0.0.1
StartAgents=0
ServerActive=127.0.0.1
Hostname=localhost
RefreshActiveChecks=120
Timeout=10
User=zabbix

Теперь надо добавить localhost как ноду в zabbix



Сразу скажу что красный значок так и останется — работа агента в пассивном режиме не предполагается.
Берём нужный Вам темплейт (например встроенный Template OS Linux), и в настройках Items меняем(проще всего через mass update) тип на zabbix-agent(active).



Если есть сценарии дискаверинга — не забываем и там поставить zabbix-agent(active) тоже.
Через некоторое время данные начнут поступать на сервер.



Если по какой-то причине данные не поступают — смотрим в лог на предмет ошибок.

На этом всё, надеюсь кому-то это будет полезно.
Буду признателен за конструктивную критику.

P.S. Думаю, таким же образом можно прикрутить активную проксю и сливать уже какие угодно данные.
Tags:
Hubs:
+2
Comments 0
Comments Leave a comment

Articles