Nas4 freeへzabbix agentを導入してみた

22
NAS4FreeZabbix Agent導入してみた。 kometchtech

description

 

Transcript of Nas4 freeへzabbix agentを導入してみた

Page 1: Nas4 freeへzabbix agentを導入してみた

NAS4FreeにZabbix Agentを導入してみた。

kometchtech

Page 2: Nas4 freeへzabbix agentを導入してみた

Agenda・NAS4Freeとは・Zabbix Agentの導入手順

・FAQ

Page 3: Nas4 freeへzabbix agentを導入してみた

NAS4FreeとはFreeBSD9系をベースとしたNASアプライアンスソフトウェア。元はFreeNASというソフトウェアだったが、FreeBSD8系と9系に別れて、フォークしたのがNAS4Freeです。

http://www.nas4free.org/

Page 4: Nas4 freeへzabbix agentを導入してみた

なにができるの?

GEOMでソフトウェアRAIDを組んだり、ZFSを使用したファイルサーバを構築したり、Webサーバを載せたりすることも出来ます。

Page 5: Nas4 freeへzabbix agentを導入してみた

監視はどうする?

とりあえず標準でSNMPが使用できます。が、ZFSに関してはFreeBSD系のバグ?の関係で容量の取得等がうまくいきません。

Page 6: Nas4 freeへzabbix agentを導入してみた

これじゃあZabbixから監視するのも楽しくないよね?

Page 7: Nas4 freeへzabbix agentを導入してみた

というわけで・・・

Page 8: Nas4 freeへzabbix agentを導入してみた

Zabbix Agentを導入できるか実践してみることにしました。

Page 9: Nas4 freeへzabbix agentを導入してみた

導入環境

hp Microserver N36L Mem: 8GBUSB bootHDD: 1TB *4

Page 10: Nas4 freeへzabbix agentを導入してみた

Zabbix Agentの導入# wget http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.0.7/zabbix-2.0.7.tar.gzwget: Command not found.

なら、wgetを導入すればということでやってみたところ・・・

/: write failed, filesystem is full

Page 11: Nas4 freeへzabbix agentを導入してみた

orz(もしかしたらHDDインストールの場合は状況が違うかもしれません)

Page 12: Nas4 freeへzabbix agentを導入してみた

というわけで直接Zabbix Agentのインストールを実施。# pkg_add -r zabbix2-agentFetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/amd64/packages-9.1-release/Latest/zabbix2-agent.tbz... Done.Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/amd64/packages-9.1-release/All/libiconv-1.14.tbz... Done.===> Creating users and/or groups.Creating group 'zabbix' with gid '122'.Creating user 'zabbix' with uid '122'.

今度は成功。

Page 13: Nas4 freeへzabbix agentを導入してみた

configファイル自体は/usr/local/etc/zabbix2/配下に配置されるので、通常通り設定を編集する。

# ls -l /usr/local/etc/zabbix2/total 8-rw-r--r-- 1 root wheel 1605 Apr 10 20:08 zabbix_agent.conf.sample-rw-r--r-- 1 root wheel 5718 Apr 10 20:08 zabbix_agentd.conf.sample

Page 14: Nas4 freeへzabbix agentを導入してみた

あとはZabbix Server側にホストを追加してあげて、ちゃんと監視が始まったことを確認します。※テンプレートはFreeBSDのものが使えると思います。

Page 15: Nas4 freeへzabbix agentを導入してみた

しかし、ここで一つ問題が!

Page 16: Nas4 freeへzabbix agentを導入してみた

再起動すると、導入したはずのZabbixパッケージから、configファイルまで綺麗サッパリ消えてしまいましたとさ。たぶんこれはUSB Bootのせいだと思いますが、ちゃんと検証していません。

Page 17: Nas4 freeへzabbix agentを導入してみた

ならば、NAS4Free側からスクリプトが呼び出せるので、強引に導入するスクリプトを書けばいいんだ。

Page 18: Nas4 freeへzabbix agentを導入してみた

というわけで書いてみた。

Page 19: Nas4 freeへzabbix agentを導入してみた

#!/bin/sh

# ValiableZBX_CONF=/usr/local/etc/zabbix2/zabbix_agentd.confZBX_RC=/usr/local/etc/rc.dZABBIX_SERVER_IP=""SERVER_NAME=""

# add Zabbix-agent/usr/sbin/pkg_add -r zabbix2-agent

# copy configure/bin/cp ${ZBX_CONF}.sample ${ZBX_CONF}

# Value reWritablesed -i '' -e 's/Server=127.0.0.1/Server='${ZABBIX_SERVER_IP}'/' ${ZBX_CONF}sed -i '' -e 's/ServerActive=127.0.0.1/ServerActive='${ZABBIX_SERVER_IP}'/' ${ZBX_CONF}sed -i '' -e 's/Hostname=Zabbix\ server/Hostname='${SERVER_NAME}'/' ${ZBX_CONF}sed -i '' -e 's/\#\ EnableRemoteCommands=0/EnableRemoteCommands=1/' ${ZBX_CONF}

# auto start configecho "zabbix_agentd_enable=\"YES\"" >> /etc/rc.conf

# Zabbix agent start${ZBX_RC}/zabbix_agentd start

Page 20: Nas4 freeへzabbix agentを導入してみた

大まかな流れとしては・・・1. zabbix-agentの導入

2. configファイルの書き換え

3. zabbix-agentdの開始

4. 作成したzpoolなどにスクリプトを配置し、NAS4Free側のスクリプトに、作成したスクリプトを登録してあげる。

詳細は、以下のところにあります。https://github.com/kometchtech/zabbix_nas4free

Page 21: Nas4 freeへzabbix agentを導入してみた

こんな感じで監視ができるようになりました。これでsystem.runと合わせて監視したいことができるようになりました。

Page 22: Nas4 freeへzabbix agentを導入してみた

以上でNAS4FreeへのZabbix Agentの導入方法についての発表を終わります。

ご清聴ありがとうございました。