Raspberrypi 2B + zabbix2.4.4 |
---|
概要 Raspberrypiに4コア1GBメモリとクロックアップした2Bモデルがリリースされた事で従来よりパフォーマンスアップが期待できましたので、小規模のサーバ監視用にzabbix2.4.4を載せました。 サーバ上ではzabbix-server,zabbix-agent,mysql,php5,apache2が動作しています。 Raspberrypiは安価な上に小型で少電力で動作しますので、場所もとらず物理サーバの増設も簡単です。 zabbixはオープンソースでバージョンアップの度に機能も追加されていますので最新版のソース2.4.4からコンパイルします。 ![]() Raspberrypi設定 Raspberrypiは2用のRASPBIANをDownloadします。 http://www.raspberrypi.org/downloads/ ![]() ディスクイメージはwindowsからWin32Diskimager.exeを使ってmicroSDに書き込みます。 raspbianの初期設定ではusbキーボードマウス、EtherCable,HDMIモニタを接続した上で書き込んだmicroSDからbootします。 起動すると初期メニュー画面(raspi-config)が表示されますので、SSH Server Enableを設定、Expand File Systemを設定しrebootします。 loginは初期ユーザpi,パスワードraspberryです。 startxによりGUIを起動し、Terminalからネットワーク設定を行います。 初期設定はdhcpですのでstatic設定に変更します。 >sudo vi /etc/network/interfaces #iface eth0 inet dhcp iface eth0 inet static address 192.168.1.250 netmask 255.255.255.0 gateway 192.168.1.1 >sudo vi /etc/resolv.conf nameserver 192.168.1.1 >sudo /etc/init.d/networking reloadパッケージ追加 zabbix環境用にパッケージを追加します。 >apt-get update >apt-get install [package list] 以下のパッケージをインストールします。ZABBIX設定 zabbix2.4.4sourcesをダウンロードします。 http://www.zabbix.com/download.php ![]() /usr/local/zabbix-2.4.4に展開します。 >./configureを実行します。 configureには以下必要なオプションを指定します。 --enable-server --enable-agent --enable-proxy --enable-ipv6 --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --with-ssh2 結果を確認後に >make install 結果を確認後に >vi /usr/local/etc/zabbix_server.confを設定します。 DBHost=localhost DBName=zabbix DBUser=zabbix DBpassword=zabbixmysql設定 mysqlにzabbix用dbを設定します >mysql -u root -p mysql>create database zabbix character set utf8 collate utf8_bin; mysql>quit; >mysql -u root -p mysql>grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix'; mysql>flush privileges; mysql>quit; >cd /usr/local/zabbix-2.4.4/database/mysql >mysql -u root zabbix -p <schema.sql >mysql -u root zabbix -p <images.sql >mysql -u root zabbix -p <data.sqlここでzabbix-serverを起動します。 >/usr/local/sbin/zabbix-server FrontEndを設定 zabbixのFrontEndはapacheとphpを設定します >mkdir /var/www/zabbix >cd /usr/local/zabbix-2.4.4/frontend/php >cp -a . /var/www/zabbix hostsを変更 >vi /etc/hosts #127.0.1.1 raspberrypi 192.168.1.250 raspberrypi.localhost raspberrypi zabbixユーザ作成 >adduser zabbix >vi /boot/cmdline.txt elevator=deadline cgroup_enable=memory rootwait apache2設定 >vi /etc/apache2/site-available/default ServerName raspberrypi >service apache2 restartzabbixをブラウザから設定 zabbixのフロントエンドにアクセスしてインストール設定を行います http://192.168.1.250/zabbix failと表示された項目の設定を行います >vi /etc/php5/apache2/php.ini post_max_size 16M max_execution_time 300 max_input_time 300 date.timezone="Asia/Tokyo" >service apache2 restart >chmod 777 /var/www/zabbix >chmod 777 /var/www/zabbix/conf ![]() ここまでの設定が完了するとzabbixのフロントエンドにログインできます。 user=Admin,passwor=Zabbixにてログインして監視設定ができるようになります。 但しこの時点で幾つかの問題がありますので追加の設定を行います。 日本語表示の対応 >apt-get install jfbterm によりフォントを追加します。 >raspi-config メニューを再表示してlocale設定を行いrebootします グラフの文字化け対応 >apt-get install ttf-vlgothic >ln -s /usr/share/fonts/truetype/fonts-japanese-gothic.ttf /var/www/zabbix/fonts/fonts-japanese-gothic.ttf >vi /var/www/zabbix/include/define.inc.php ZBX_GRAPH_FONT=(fonts-japanese-gothic)を設定 サーバ起動時にzabbix-server,zabbix-agentが起動するよう設定を行います。 >apt-get install chkconfig >cp /usr/local/zabbix-2.4.4/misc/init.d/debian/* /etc/init.d >chkconfig zabbix-agent on >chkconfig zabbix-server onzabbixのネットワークディスカバリで使うfpingがインストールされていないので設定します >apt-get install fping >ln -s /usr/bin/fping /usr/sbin/fping >service zabbix-server restart zabbixの監視設定 監視対象のホスト登録は個別に登録する事もできますが、Agentをインストールした場合はアクションを記述し、自動登録するように出来ます。 Agentはzabbixのダウンロードページからwindows用、linux用、sun用など個別にダウンロードしてインストールします。 またAgentを入れない場合ping,ssh,http等をディスカバリ設定を行い、検出したホストを登録しテンプレートを割り当てるアクションを記述して自動登録するように出来ます ![]() ![]() 課題 raspberrypiのストレージに使っているmicroSDカードはブロックの書き換え回数の保障値が1000回程ですので収集データを格納するmysqlのDBのアクセスの為、すぐに寿命となります。 実用とするには対策としてusb接続のhddなどを使う必要があります。 |