目次

概要

前提

組み込み用Linuxディストリビューション「MontaVista Linux」で動作するZabbix Agentのコンパイル手順。

環境

Hardware玄箱HG
CPUARMv7 Processor rev 4 (v7l)
OSCentOS Linux release 7.2.1511 (Core)
ZABBIXzabbix-3.0.28

導入手順

環境準備

初期状態では開発環境が組み込まれていないため、玄箱付属のCD-ROMからコンパイル済みのバイナリをシステムに組み込む必要がある。

  • 1. 玄箱付属のCD-ROMの「binary」配下を/mnt/share以下にコピーする
  • 2. コピーしたバイナリを展開する(全てが必要という訳ではないが、細かいトラブルを避けるため全て展開する)
    cd /mnt/share/binary

    tar xfvz gcc-2.95.3.tar.gz -C /
    tar xfvz make-3.79.1.tar.gz -C /
    tar xfvz glibc-2.2.3.tar.gz -C /
    tar xfvz ntp-4.0.99g.tar.gz -C /
    tar xfvz g++-2.95.3.tar.gz -C /
    tar xfvz autoconf-2.13.tar.gz -C /
    tar xfvz automake-1.4p4.tar.gz -C /
    tar xfvz binutils-2.10.91.0.2.tar.gz  -C /
    tar xfvz bison-1.28.tar.gz  -C /
    tar xfvz bzip2-1.0.2.tar.gz -C /
    tar xfvz diff-2.7.tar.gz  -C /
    tar xfvz flex-2.5.4.tar.gz -C /
    tar xfvz gdb-5.1.tar.gz -C /
    tar xfvz gettext-0.10.35.tar.gz -C /
    tar xfvz libgdbm-1.7.3.tar.gz -C /
    tar xfvz libstdc++2.10-2.95.3.tar.gz -C /
    tar xfvz m4-1.4.tar.gz -C /
    tar xfvz patch-2.5.4.tar.gz -C /
    tar xfvz perl-5.6.1.tar.gz -C /
    tar xfvz python-2.0.tar.gz -C /
    tar xfvz textutils-2.0.tar.gz -C /

ユーザ作成

エージェントプログラムを稼動させる専用のユーザを作成する。

groupadd -g 300 zabbix
useradd -u 300 -g zabbix -d /usr/local/zabbix -s /sbin/nologin zabbix

ディレクトリ作成

デーモンを動作させる上で必要なディレクトリを作成する。

mkdir /etc/zabbix
mkdir /var/run/zabbix
mkdir /var/log/zabbix
touch /var/log/zabbix/zabbix_agent.log
chown -fR zabbix.zabbix /var/run/zabbix
chown -fR zabbix.zabbix /var/log/zabbix

コンパイル

Zabbixのソースコードは、configure内にエージェントのソースコードも格納されているため、これをコンパイルして使用する。

tar xfvz zabbix-3.2.2.tar.gz
cd zabbix-3.2.2

configureオプションでエージェントのコンパイルのみを指定する。

./configure --enable-agent
make
make install

設定ファイルを所定位置に配置する

cd /usr/local/src/zabbix
cp ./misc/conf/zabbix_agentd.conf /etc/zabbix/

サービス登録

systemd向けの設定は同梱されていないため、手動で作成する。

cat <<EOF > /usr/lib/systemd/system/zabbix-agent.service
   [Unit]
   Description=Zabbix Agentd
   After=network.target
   [Service]
   Type=oneshot
   ExecStart=/usr/local/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf
   PIDFile=/var/run/zabbix/zabbix_agentd.pid
   RemainAfterExit=yes
   [Install]
   WantedBy=multi-user.target
EOF

自動起動を設定。

systemctl enable zabbix-agent.service

起動

エージェントを起動する。

systemctl start zabbix-agent.service
systemctl status zabbix-agent.service

参考

エラー

configure実行時に以下のエラーが出る場合、gccが導入されていない。
yumでgccのパッケージをインストールする。

# ./configure  --enable-agent
checking for a BSD-compatible install... /bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
configure: Configuring Zabbix 3.2.2
checking whether make sets $(MAKE)... (cached) yes
checking build system type... armv7l-unknown-linux-gnueabihf
checking host system type... armv7l-unknown-linux-gnueabihf
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/usr/local/src/zabbix-3.2.2':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS