QNAPにZabbixを載せてみるテスト(その1:アプライアンス編)

 

QNAPにZabbixアプライアンス(バージョン4.4)を入れてみました(パッケージ版を入れてみた件については別記事とします)。


一部嵌まった箇所(シャットダウン時にZabbixエンジンが停止出来ず、ハングアップしたように見える)があったので、記録として残しておきます。

注意

  • イメージの展開にかなり時間がかかる場合がありますので、余裕を持った構築スケジュールとして下さい

  • 構築作業中はQNAP本体からインターネットが見える必要があります

  • VNC画面からだとキーボード配列の問題があるため、IP reachable になった時点でsshクライアントから作業した方が良いと思います

  • QNAPのファームウェアバージョンは 4.4.1 で確認しています

  • snmp関係パッケージはインストール不要です
    Web上で検索すると手動で入れるようにと出て来る場合もありますが、パッケージに含まれていますので入れないで下さい

  • DHCPでIPアドレスが拾えるようにしておいて下さい
    あとで変更可能です

構築手順

  1. サポートされるNASの型式を確認しておきます
    https://www.qnap.com/solution/virtualization-station-3/ja-jp/

  2. QNAP本体のファームウェアを最新に上げておきます

  3. AppCenter から Virtualization Station をインストールします

  4. Zabbix公式から Zabbix Appliance のISOイメージファイルをダウンロードします
    ダウンロードしたイメージファイルはNAS(QNAP)の適当なフォルダに置いておきます。

  5. ISOイメージファイルをQNAPの VirtualizationStation 3 にマウントさせ、VMを作ります
    各パラメータの例は以下の通り。
    1. fig01_一般


    2. fig02_起動オプション


    3. fig03_ネットワーク


    4. fig04_ストレージ


    5. fig05_CD/DVD


    6. fig06_ビデオ


    7. fig07_音声


    8. fig08_コンソール操作


    9. fig09_USB


    10. fig10_その他


  6. インストール完了後、VirtualizationStation からVMのコンソールにアクセスします
    ログインプロンプトが出ていない場合は、コンソール画面内をクリックしてフォーカスを与えたあと、『Alt』+『F2』等でttyセッションを切り替えてみて下さい。

  7. Ubuntu CUIへのログイン
    ID/PWは appliance / zabbix です。
    rootには sudo su – で昇格できます(パスワードはzabbix)。

  8. 以後の作業はrootに昇格して行います

  9. Ubuntu起動時のスプラッシュ画面は不要なので、/etc/default/grub を変更します
    vi /etc/default/grub
    GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash”
    行を
    GRUB_CMDLINE_LINUX_DEFAULT=””
    に変更、保存、update-grub2 にて反映させます
  10. 一旦再起動

  11. タイムゾーン変更
    cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
  12. VMゲストエージェントのインストール
    apt update
    apt install -y qemu-guest-agent
  13. Zabbix アプライアンスのIPアドレス確認
    コンソールから ifconfig -a で見ることもできますが、上の手順でエージェントを有効化したため、Virtualization Station の概要→Zabbix→ギアアイコン→右側ペインの『ネットワーク』にても確認出来ます。

  14. Zabbixが描画するグラフの文字化け対策
    日本語フォントをIPAゴシックにします。
    cd ~
    apt install -y unzip
    wget https://ipafont.ipa.go.jp/IPAfont/ipag00303.zip
    cd /usr/share/fonts
    unzip ~/ipag00303.zip
    rm /etc/alternatives/zabbix-frontend-font
    ln -s /usr/share/fonts/ipag00303/ipag.ttf /etc/alternatives/zabbix-frontend-font
  15. Zabbixのタイムゾーンの変更
    vi /etc/apache2/conf-available/zabbix.conf
    php_value date.timezone Europe/Riga

    php_value date.timezone Asia/Tokyo
    ※2箇所あります
  16. Zabbiサーバーが動作していません対策
    vi /etc/zabbix/web/zabbix.conf.php
    $ZBX_SERVER = ‘localhost’;

    $ZBX_SERVER = ‘127.0.0.1’;
  17. シャットダウン時のハングアップ対策(ZBX-15602/ZBX-16708)をします
    vi /etc/systemd/system/multi-user.target.wants/zabbix-server.service
    # [Unit]ブロックのAfterを変更
    After=syslog.target
    After=network.target
    ↓
    After=syslog.target network.target mysql.service
    
    # 保存して終了
    # serviceファイルの変更を反映させます
    systemctl daemon-reload
    systemctl restart zabbix-server
  18. 念のため再起動
    systemctl stop zabbix-server
    shutdown -r now
  19. GUIログイン
    ブラウザから http://[IPアドレス]/zabbix/ でログインします。
    ログインID/PWは admin / zabbix です。

  20. IPアドレス変更(192.168.0.10/24 GW192.168.0.1 DNS192.168.0.2にする場合)
    vi /etc/network/interfaces
    iface XXXX inet dhcp
    ↓
    iface XXXX inet static
    address 192.168.0.10
    netmask 255.255.255.0
    gateway 192.168.0.1
    dns-nameservers 192.168.0.2
    vi /etc/resolv.conf
    # 適切に編集・保存ください
  21. 機器監視テスト
    機器監視用のテンプレートは Template Module ICMP Ping を使って下さい。

  22. トラフィック量グラフ生成テスト
    テンプレートは Template Net Network Generic Device SNMPv1 が良いと思います。
    ホストを追加してからグラフに値が載ってくるまでは、ある程度時間がかかります(設定→ホスト、の一覧の『グラフ』に、検出されたグラフ数が出ます)。

  23. メール発報設定
    1. 管理→メディアタイプ→Emailを更新
    2. 管理→ユーザー→対象ユーザ名→メディア→追加で追加
    3. 設定→アクション→Report problems to Zabbix administrators→新規条件を追加し、有効をクリックし、更新メール発報の設定

その他

  • Zabbixシャットダウン時
    VMに入って shutdown -h now するか、VirtualizationStationからシャットダウン信号を送って下さい。
    時間的余裕があるなら、OSを落とす前に systemctl stop zabbix-server をしてもよいと思います。

  • Zabbix本体のデータ収集を有効にしているときの不具合
    VM起動時にシステムからZabbixサーバに渡される時刻の関係で、Zabbix起動時のデータは『9時間未来』となります。
    次にZabbixサーバがJSTな時刻を取得した時点で、巻き戻りが発生するため、見かけ上いまいまのデータは9時間後まで欠落します。
    Zabbix本体は『無効』にしておくか、データが繋がるまで数時間待って下さい。

  • データ収集が途切れた場合
    systemctl stop zabbix-agent
    systemctl restart zabbix-server
    systemctl start zabbix-agent

    して下さい。

以上です。