Zabbix 2.2.1

公式ページ

Contents

Zabbixについて

 

構成要素


Zabbixの構成要素はいくつかのノードに分けられる。
代表的なものは、サーバ、エージェント、データベース、フロントエンドで、それぞれ以下の役割を持つ。


最も簡単な構成では、サーバ、フロントエンド、データベースは同じホスト上で稼動させる。
他構成次第でプロキシや、Javaゲートウェイなどのノードが使用される。



用語

 

アイテム


Zabbixが各ホストに対して行うデータ監視項目。
整数値、浮動小数値、文字列値等のデータ型、単位、保存期間など各種設定を行うことが出来る。
アイテムのデータの取得はSNMP、Zabbixエージェントなど、いくつかの方法がある。
アイテムはキーによって識別される。

アイテムキー


アイテムを識別する文字列。
CPU使用率やディスク使用量などによって一意に定まる。
一部を変数化可能で、特定のパスのディスク使用量などというように設定可能。

アプリケーション


アイテムをグループ化したもの

タイプ


アイテムの監視方法のこと。
Zabbix Agentによる監視やエージェント不要の監視方法などがある。

ウェブシナリオ


連続したHTTPアクセスにより、特定のWEBページ内を巡回可能かどうかの監視が行える。
これによってログインが必要なサイトでログインし、その後特定のページが閲覧できるかといった監視を行うことが出来る。
1回のHTTPアクセスをウェブステップと呼び、シナリオは複数回のステップにより構成される。

マクロ


{$<文字列>}の形式で定義でき、値の対応を記述することができる。
マクロはホスト単位、テンプレート単位、グローバルで設定可能で、アイテムやトリガーなどで使用することで、
共通の設定を使いつつもホスト毎に使用する値を変えるといったことが可能となる。

テンプレート


アイテムやトリガー、グラフなどを登録しておき、ホスト作成時に適用することで、
テンプレート内で設定したアイテムなどが自動でそのホストでも有効になる。
テンプレート内で定義したアイテムなどは一部を除きテンプレートで設定した統一した共通設定値が利用されるため、
テンプレートを設定変更するとテンプレートを使用する全てのホストに一括反映できる。
共通項目内で個別の値を使用したい場合はマクロを使用すればよい。

ヒストリ


監視データのこと。

トレンド


一定期間のヒストリから算出した最大値や平均などの統計データのこと。

アクション


アイテムが指定した状態になった時にZabbix Serverが行う内容の事。
アラートメールを送ったり、指定したコマンドを実行することができる。
異常状態から復帰した際に再度メールなどメッセージを送ることができるが、
これをリカバリメッセージという。

正規表現


ログ監視で使用する正規表現データ。
正規表現データとして独立させることで、複数のログ監視に割り当てることができる。
正規表現に一致する特定文字列を障害とする、または障害としないことができる。
これはトリガーと目的は同じであるが、トリガーはサーバ側で判断するのに対し、正規表現はクライアント側で判断する。
つまり、正規表現を用いると、サーバ側に転送するログ量を制御できる。
反面、サーバで閲覧可能なログに欠損が発生するので、どちらを使用するかは状況により異なる。

環境

 

 

 

 

サーバの構築

 

MySQLの構築

 

mkfs -T ext4 /dev/xvdb
mount /dev/xvdb /mysql-data

vi /etc/fstab
mysql-data  /mysql-data ext4    defaults        1   2

 

MySQLのインストール

 

  1. mysqlユーザを作成する
    useradd --user-group --no-create-home --shell /sbin/nologin mysql
  2. 関連パッケージをインストールする
    yum install gcc gcc-c++ cmake perl bison ncurses-devel -y
  3. OSにデフォルトでインストールされているMySQLの設定ファイルを削除する
    rm -f /etc/my.cnf
  4. scpやwgetを使用してソースコードをダウンロードする
    wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.15.tar.gz
  5. 展開する
    tar xzfv mysql-*.tar.gz
  6. MySQLディレクトリへ移動する
    cd mysql-*
  7. コンパイル最適化設定を行う
    export CFLAGS="-O3 -m64 -march=native"
    export CXXFLAGS=$CFLAGS
    
    # make時にinclude/mysqld_error.hでIllegal instruction include/mysqld_error.hエラーが出る場合は-march=nativeオプションは外す
  8. MySQLのインストール場所とデータ用ディレクトリを分ける場合は、データ用ディレクトリを作成する
    # MySQLのデータ格納場所を/mysql-dataとする
    mkdir -p -m 774 /mysql-data
    chown mysql:mysql /mysql-data
  9. インストール設定を行う
    cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.6.15 -DMYSQL_DATADIR=/mysql-data 2>&1 | tee cmake.log
  10. インストールする
    make 2>&1 | tee make.log
    make install 2>&1 | tee make_install.log
  11. 起動スクリプトを設定
    cp support-files/mysql.server /etc/init.d/mysqld
    chmod 554 /etc/init.d/mysqld
    chkconfig --add mysqld
    # 登録を確認する
    chkconfig --list mysqld
  12. インストールに使用したパッケージを削除する
    cd ../
    rm -rf mysql-*
  13. MySQLのシンボリックリンクを作成する
    ln -s /usr/local/mysql-5.6.15 /usr/local/mysql
    これによって、複数のバージョンのApacheを同居させ、リンクを切り替えることで、バージョン変更が可能
  14. 共通した環境とするために環境変数を設定する
    export MYSQL_HOME=/usr/local/mysql
    export MYSQL_DATA=/mysql-data
  15. ツール類にパスを通す
    export PATH=$MYSQL_HOME/bin:$PATH
  16. 環境変数を再起動後も有効にする
    vi /etc/bashrc
    # 以下を追記する
    export MYSQL_HOME=/usr/local/mysql
    export MYSQL_DATA=/mysql-data
    export PATH=$MYSQL_HOME/bin:$PATH
  17. 空の設定ファイルを作成する
    echo "[mysqld]" > $MYSQL_HOME/my.cnf
  18. 初期データベースの作成
    cd $MYSQL_HOME
    scripts/mysql_install_db --datadir=$MYSQL_DATA --user=mysql
    rm -f my.cnf
    chown mysql:mysql $MYSQL_DATA
    chown mysql:mysql $MYSQL_DATA/*
    chown mysql:mysql $MYSQL_DATA/*/*
  19. mysql起動
    mysqld_safe &
  20. セキュリティ設定
    以下スクリプトを実行する。対話的に実行されるが、パスワードの入力以外は Y を入力しておけばよい。
    mysql_secure_installation




Zabbixの構築



サーバ・フロントエンドインストール



事前準備としてMySQLなどのデータベースの用意が必要。
依存する関連パッケージが多く、パッケージもソースコードと同じ最新版が用意されているので、
敢えてソースコードからインストールするメリットはない。


パッケージからインストール


参考

  1. 関連パッケージをインストールするためにリポジトリを追加する(バージョンによって異なる)
    rpm -Uvh http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm
    # 古いバージョンのリポジトリが登録されている場合、ここで削除される
  2. インストールする
    zabbix-webをインストールすると、標準DBのPostgreSQLと競合し、zabbix-web-mysqlがインストールできないので、
    zabbix-webは指定してインストールせずに、zabbix-web-mysqlの依存パッケージとしてインストールする。
    yum install -y zabbix-server-mysql zabbix-web-mysql
  3. 必要に応じて以下もインストールする
    yum install zabbix-sender
    yum install zabbix-get

 

ソースコードからインストール


参考(Ver1.8向け)

 

 

サーバ初期設定

 

MySQLの設定

 

 

 

Apacheの設定

 

vi /etc/httpd/conf.d/zabbix.conf

 

# php_value date.timezone XXXXXXX

となっている行があるので、これを以下に修正する。

php_value date.timezone Asia/Tokyo


更に<Directory “/usr/share/zabbix”>ディレクティブ内で以下を修正する。

# 追加
Require all granted

# 削除
Order allow,deny
Allow from all


再起動して設定を反映する。

httpd -k restart

 

ZABBIXの設定

 

vi /etc/zabbix/zabbix_server.conf


以下を追加する。

DBHost=127.0.0.1
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix

ソケット接続する場合は、DBSocketの値を適切に変更する
例:DBSocket=/tmp/mysql.sock

zabbixサーバー起動


zabbix_serverコマンドにより、サーバープロセスを起動することができる。

zabbix_server

また、サービス登録もされているので、serviceコマンドから起動することも出来る。

service zabbix-server start


OS起動時に自動で立ち上げる場合、runlevel3で起動するように設定する。

  1. 現在の設定を確認する
    chkconfig --list zabbix-server
    # zabbix-server   0:off   1:off   2:off   3:off   4:off   5:off   6:off
  2. 起動するように設定する
    chkconfig --level 3 zabbix-server on
  3. 現在の設定を確認する
    chkconfig --list zabbix-server
    # zabbix-server   0:off   1:off   2:off   3:on    4:off   5:off   6:off

 

Web設定


以上までの設定変更を行うとZabbixが使用可能となるので、以下にアクセスする。

http://<ホスト名>/zabbix/

以降はWEBブラウザから設定を行うことが出来る。
管理者ログインはAdmin、zabbixで行う。
ただし、初回アクセス時は初期設定が必要。
DB設定で、ホスト名にlocalhostを使用すると接続がUNIX SOCKETに強制されるが、
UNIX SOCKETはzabbix_server.confファイルの設定に拘わらず、/var/lib/mysql/mysql.sockが使用されるので、
このパスにソケットファイルがない場合は、ここにソケットを作成するか、リンクを作成するか、
TCP/IP接続(127.0.0.1を使用)する必要がある。

言語設定


使用する言語を変更できる。

  1. Administration
  2. Users
  3. ユーザーの設定画面に変更(ドロップダウンボックスの値をUser GroupsからUsersに変更)
  4. Adminユーザを選択
  5. Languageを日本語に変更
  6. 保存

 

メール設定


障害時にアラートメールを送信する設定を行う。
Zabbix Serverと同じホストにSMTPサーバが稼動しているとする。

  1. メールサーバを設定する
    1. 管理
    2. メディアタイプ
    3. Emailを選択する
    4. SMTPサーバー、SMTP heloに「localhost」と入力する
    5. 送信元メールアドレスにメールサーバのドメイン名を使用したメールアドレスを記入する
    6. 保存
    7. 不要であれば、Email以外のメディアタイプを無効にしておく
  2. 宛先を登録する
    1. 管理
    2. ユーザー
    3. ユーザーに画面右部のドロップダウンリストを切り替える
    4. Adminを選択する
    5. 「メディア」タブを開く
    6. 「追加」
    7. 「送信先」に宛先メールアドレスを入力する
    8. 「指定した深刻度のときに使用」欄を必要に応じて選択する
    9. 「追加」ボタンをクリックする
    10. 保存
  3. アクションを設定する
    1. 設定
    2. アクション
    3. 「Report problems to Zabbix administrators」を選択する
    4. 有効にする
    5. デフォルトの件名、デフォルトのメッセージ、復旧通知の件名、リカバリメッセージを適宜修正する
    6. 「アクションの実行内容」タブを開く
    7. 1を変更する
    8. 「次のメディアのみ使用」ドロップダウンボックスをEmailに変更する
    9. 更新
    10. 保存

 

メールのみのアカウント作成


障害時などに通知するメールアドレスはユーザアカウントとひも付けられるため、
WEBログインはしないが障害通知用のメールアドレスを登録する場合、専用のアカウントを作成する必要がある。

  1. 管理
  2. ユーザー
  3. ユーザーに画面右部のドロップダウンリストを切り替える
  4. ユーザーの作成
  5. エイリアスからパスワードまでを入力する
  6. グループに「No access to the frontend」を選択して追加する
  7. メディアタブを開く
  8. 「追加」をクリックし、メールアドレスを追加する
  9. 保存
  10. この作成したアカウントを使用してアクションを作成する

 

Zabbixエージェント


Zabbixエージェントを監視対象のホストにインストールすることで、様々な情報を取得することができる。

エージェントの構築

 

エージェントのインストール

 

  1. リポジトリを追加する(バージョンによって異なる)
    ※CentOS7系の場合はel6をel7にする。
    rpm -Uvh http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm
  2. パッケージをインストールする
    yum install zabbix-agent
  3. 必要に応じて以下もインストールする
    yum install zabbix-sender
    yum install zabbix-get

 

エージェントの起動

 

 

 

設定変更


設定ファイルが以下のパスに存在するので、修正することで設定変更を行うことができる。

/etc/zabbix/zabbix_agentd.conf

設定変更後は再起動が必要。

service zabbix-agent restart

 

設定項目

 

基本設定



 

 

 

 

ログ設定

 

 

 

 

サーバ設定


サーバとして予め設定したホストからの要求しかエージェントは値を返さない。
そのため、サーバのホスト名 / IPアドレスの設定を行う必要がある。

 

 

アクティブチェック

 

 

設定ファイル読み込み


外部に定義した別の設定ファイルをロードすることができる。
ディレクトリを指定した場合は、その直下のファイルがロードされる。



リモートコマンド


サーバからの任意のリモートコマンドによる監視を行う設定をする
監視項目は下記

system.run[command,<mode>]

 

 

 

独自監視項目の作成


特定のスクリプトやコマンドを実行して値を取得することで、その値を監視することができる。



ここで設定したキー名を用いてZabbixサーバのアイテムのキー値に設定する

設定した監視項目が正しく動作するかはzabbix_getコマンドにより確認できる

zabbix_get -s <監視対象> -k <監視項目名>

※存在しない監視項目名を指定したり、Serverで指定しているホスト以外から実行した場合は何も表示されない。Serverで127.0.0.1と指定している場合は、zabbix_get でlocalhostと指定しても何も表示されない。

 

設定例

 

監視サーバ

 

PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=10
DebugLevel=3
Server=127.0.0.1
StartAgents=3
Include=/etc/zabbix/my_zabbix_agentd.linux.conf

 

WEBサーバ

 

PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=10
DebugLevel=3
Server=X.X.X.X
StartAgents=3
Include=/etc/zabbix/my_zabbix_agentd.linux.conf
Include=/etc/zabbix/my_zabbix_agentd.apache.conf

 

Zabbixの運用

 

Web管理画面からの監視設定

 

監視対象ホストの登録



  1. 設定
  2. ホスト
  3. 「ホストの作成」ボタンをクリック
  4. 必要情報を入力する
    • SNMPなど監視方法によって使用するインタフェースを選択し、不要なものは削除する
    • ホスト名とインタフェース項目のIPアドレスは両方入力する必要がある

 

グラフの作成


数値データを監視している場合、自動的に時間軸と値の2軸の折れ線グラフが作られるが、
円グラフや積算グラフを表示させる場合や、複数の項目を1つのグラフ内で表示させる場合はグラフの作成を行う必要がある。

  1. 設定
  2. ホスト
  3. グラフを作成するホストの「グラフ」をクリック
  4.  

 

アプリケーションの作成


アプリケーションはホストやテンプレート単位で作成し、グローバルには設定できない。
従って、テンプレートやホストが異なると、同名のアプリケーションでも再度作成する必要がある。

 

  1. 設定
  2. アイテム追加先の選択(ホスト or テンプレート)
  3. 「アプリケーション」リンクをクリック
  4. アプリケーションの作成
  5. 名前を入力する
  6. 保存



アイテム(監視項目)の作成

 

 

  1. 設定
  2. アイテム追加先の選択(ホスト or テンプレート)
  3. 「アイテム」リンクをクリック
  4. アイテムの作成
  5. 名前、キーなどを入力する
  6. 保存

 

 

 



よく使うZabbixエージェントのアイテム


参考

Linux – CPU Uilization



 

Linux – Memory Available (byte)



 

Linux – Load Average



 

Linux – Disk Free Volume:/ (byte)


マウントポイントで対象ディスクを指定するが、マウントポイントよりディスクで指定したい場合は使用しない

 

Linux – Disk Free Volume:/ (%)


マウントポイントで対象ディスクを指定するが、マウントポイントよりディスクで指定したい場合は使用しない

 

Linux – Running Processes



 

Linux – Network In (Bps)



 

Linux – Network In (bps)



 

Linux – Network Out (Bps)



 

Linux – Network Out (bps)



 

Linux – Disk Read : <ディスク> (ops)



 

Linux – Disk Write : <ディスク> (ops)



 

ログ監視



 

正規表現の設定



正規表現の作成

 

  1. 管理
  2. 一般設定
  3. 正規表現を選択
  4. 正規表現の作成
  5. 正規表現を設定する
    1. 名前を入力する
    2. 条件式を設定する
      1. 条件式の新規をクリックする
      2. 条件式に正規表現を入力する
      3. 条件式の形式を選択する
        • 文字列が含まれる
        • いずれかの文字列が含まれる
        • 文字列が含まれない
        • 結果が真
        • 結果が偽
      4. 必要であれば大文字小文字を区別するかにチェックを入れる
      5. 追加
    3. テスト文字列に文字列を入力しテストをクリックすることでテストができる
    4. 保存



正規表現の割り当て


ログ監視に作成した正規表現を割り当てるには、アイテムキーの第二引数に@と正規表現名を入力する

  1. ログ監視用のアイテムの設定画面を開く
  2. タイプに「Zabbixエージェント」を選択する
  3. キーに次の書式で入力する
    log[<監視対象ファイルパス>,@<正規表現名>]
  4. データ型に「ログ」を選択する
  5. その他は任意に設定し、保存する

 

トリガーの設定


トリガーは監視データに条件を設定し、その条件を満たした場合に発生させるアラートを定義する。
監視データはアイテムとして定義され、取得中のものでなければならない。
トリガーの条件式にアイテムキーを記載することで、自動でアイテムとトリガーの関連付けが行われる。

トリガーの記法

 


トリガーの書式は次のとおりである。

{<サーバー/テンプレート名>:<アイテムキー>.<関数>}<比較演算子><比較値>

 

比較演算子

 

 

その他の演算子

 

 

イベント生成

 

 



関数

 

 

count


過去指定回数分のデータを一定ルールで比較し、合致数を返す。
CPUの一時的な急騰時にアラート発生を避けるなどのために使用可能。

 



last


直近の値を取得する

 

regexp


大文字小文字を無視した正規表現に一致するかどうか。
一致した場合、1を返す。

iregexp


大文字小文字を無視しない正規表現に一致するかどうか
一致した場合、1を返す。

トリガーの例


サーバ名はいずれもtest_serverとする

Ping監視


Ping監視は成功が1、失敗が0と記録される。




ユーザ権限の変更


ユーザごとに監視対象の設定の書き込み、監視の値の読み込み権限を設定できる。
権限設定はユーザが所属するグループごとに行う。

  1. 管理
  2. ユーザー
  3. 権限を変更するグループを選択する
  4. 権限タブを開く
  5. 「権限の編集」欄の「追加」ボタンをクリックする
  6. 追加したい項目を選択する
  7. 「選択」ボタンをクリックする
  8. 「保存」ボタンをクリックする

 

テンプレート

 

テンプレートのエクスポート

 

  1. 設定
  2. テンプレート
  3. 対象テンプレートにチェックを入れる
  4. 選択をエクスポート
  5. 実行
  6. XMLファイルがダウンロードされる

 

テンプレートのインポート

 

  1. 設定
  2. テンプレート
  3. テンプレートのインポート
  4. ローカルのファイルを選択する
  5. インポート

 

Web管理画面からの監視情報閲覧

 

監視データを閲覧する

 

  1. 監視データ
  2. 最新データ
  3. 閲覧したいホスト、監視項目を選択して開く

 

データのみを削除


設定は残しつつ、保存されている取得データを削除する。

  1. 設定
  2. ホスト
  3. アイテム
  4. 削除したいアイテムをチェック
  5. 「選択したヒストリを削除」を実行

 

snmpwalkによる確認


snmpwalkコマンドを使用することで、監視対象にSNMPアクセスが可能かどうか確認できる。
snmpwalkがインストールされていない場合は別途インストールが必要。

 

 

snmpwalk -v 2c -c <コミュニティ値> <対象ホスト>

バージョンオプション-vは 1 や 3 も選択可能。

 

監視項目の自動更新

 

  1. WEBサーバを用意し、設定ファイルを設置する
  2. アイテム更新のスクリプトを作成する
    vi /usr/local/bin/zabbix_item_updater.sh
  3. 以下を修正して貼り付ける
    • ITEM_FILES:ダウンロードするファイル
    • ITEM_URL:ダウンロードするURL
      ITEM_FILES=("my_zabbix_agentd.linux.conf" "my_zabbix_agentd.apache.conf")
      ITEM_URL="http://XXXXX"
      UPDATE_COUNT=0
      
      for next in $ITEM_FILES; do
      	UPDATE_COUNT=`expr $UPDATE_COUNT + \`wget "$ITEM_URL""$next" -N -O /etc/zabbix/"$next" 2>&1 | grep saved | wc -l \``
      done
      
      if [ "$UPDATE_COUNT" -gt 0 ]; then
      	/etc/init.d/zabbix-agent restart
      fi
  4. 実行権限を付与する
    chmod 774 /usr/local/bin/zabbix_item_updater.sh
  5. cronに登録する(30分間隔)
    echo "*/30 * * * * root /usr/local/bin/zabbix_item_updater.sh" > /etc/cron.d/zabbix



自作アイテム


変更後は再起動が必要

service zabbix-agent restart

 

Linux

 

ディスク使用量

 

 

 

ディスク使用率

 

 

 

ディスク残量

 

 

 

ディスク残量率

 

 

 

ディスク読み込み (bps)


sysstatパッケージが必要

 

 

ディスク書き込み (bps)


sysstatパッケージが必要

 

 

TCP/UDPコネクション数 (IPv4)

 

 

 

メモリ使用率

 

 

 

メモリ残量率

 

 

 

メモリ使用量

 

 



Apache


apachectl fullstatusコマンドが使用できる必要できるようディレクティブを設定しておく必要がある。
また、apachectlスクリプトを一部修正する。

vi `which apachectl`

旧:LYNX=”/usr/bin/links -dump”
新:LYNX=”/usr/bin/links -dump -no-home”

Requests / Second



 

 

Processing Workers

 

 

 

Idle Workers

 

 

 

CPU使用率

 

 

 

最大応答時間


アクセスログに応答時間を出力している必要がある。
またaccess_log読み取れるよう、ディレクトリに実行権限をつける。
※実行ユーザはzabbixではないため、apacheグループにzabbixユーザを入れる対応は出来ない。

chmod o+rx /etc/httpd/logs

 

 

 

 

プロセス数

 

 

 

Memcahced

 

CPU使用率

 

 

 

メモリ使用率

 

 

 

データ使用率

 

 

 

コネクション数

 

 



memcached-toolによる各種値

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 



API

 

APIの概要

 

 

使用方法


以下の形式のJSONを送信し、結果をJSON形式で受信する

{
	"jsonrpc": "2.0",
	"method": "<メソッド名>",
	"params": {
		"<パラメータ名>": "<パラメータ値>",
		"<パラメータ名>": "<パラメータ値>",
		、、、
	},
	"id": <リクエスト識別番号>,
	"auth": "<認証トークン>"
}

 

 

 

 




データベースの直接利用

 

テーブル

 

hosts

 

 

interface

 

 

hosts_groups

 

CREATE TABLE `hosts_groups` (
  `hostgroupid` bigint(20) unsigned NOT NULL,
  `hostid` bigint(20) unsigned NOT NULL,
  `groupid` bigint(20) unsigned NOT NULL,
  PRIMARY KEY (`hostgroupid`),
  UNIQUE KEY `hosts_groups_1` (`hostid`,`groupid`),
  KEY `hosts_groups_2` (`groupid`),
  CONSTRAINT `c_hosts_groups_2` FOREIGN KEY (`groupid`) REFERENCES `groups` (`groupid`) ON DELETE CASCADE,
  CONSTRAINT `c_hosts_groups_1` FOREIGN KEY (`hostid`) REFERENCES `hosts` (`hostid`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

hosts_templates

 

CREATE TABLE `hosts_templates` (
  `hosttemplateid` bigint(20) unsigned NOT NULL,
  `hostid` bigint(20) unsigned NOT NULL,
  `templateid` bigint(20) unsigned NOT NULL,
  PRIMARY KEY (`hosttemplateid`),
  UNIQUE KEY `hosts_templates_1` (`hostid`,`templateid`),
  KEY `hosts_templates_2` (`templateid`),
  CONSTRAINT `c_hosts_templates_2` FOREIGN KEY (`templateid`) REFERENCES `hosts` (`hostid`) ON DELETE CASCADE,
  CONSTRAINT `c_hosts_templates_1` FOREIGN KEY (`hostid`) REFERENCES `hosts` (`hostid`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

items

 

CREATE TABLE `items` (
  `itemid` bigint(20) unsigned NOT NULL,
  `type` int(11) NOT NULL DEFAULT '0',
  `snmp_community` varchar(64) NOT NULL DEFAULT '',
  `snmp_oid` varchar(255) NOT NULL DEFAULT '',
  `hostid` bigint(20) unsigned NOT NULL,
  `name` varchar(255) NOT NULL DEFAULT '',
  `key_` varchar(255) NOT NULL DEFAULT '',
  `delay` int(11) NOT NULL DEFAULT '0',
  `history` int(11) NOT NULL DEFAULT '90',
  `trends` int(11) NOT NULL DEFAULT '365',
  `status` int(11) NOT NULL DEFAULT '0',
  `value_type` int(11) NOT NULL DEFAULT '0',
  `trapper_hosts` varchar(255) NOT NULL DEFAULT '',
  `units` varchar(255) NOT NULL DEFAULT '',
  `multiplier` int(11) NOT NULL DEFAULT '0',
  `delta` int(11) NOT NULL DEFAULT '0',
  `snmpv3_securityname` varchar(64) NOT NULL DEFAULT '',
  `snmpv3_securitylevel` int(11) NOT NULL DEFAULT '0',
  `snmpv3_authpassphrase` varchar(64) NOT NULL DEFAULT '',
  `snmpv3_privpassphrase` varchar(64) NOT NULL DEFAULT '',
  `formula` varchar(255) NOT NULL DEFAULT '1',
  `error` varchar(128) NOT NULL DEFAULT '',
  `lastlogsize` bigint(20) unsigned NOT NULL DEFAULT '0',
  `logtimefmt` varchar(64) NOT NULL DEFAULT '',
  `templateid` bigint(20) unsigned DEFAULT NULL,
  `valuemapid` bigint(20) unsigned DEFAULT NULL,
  `delay_flex` varchar(255) NOT NULL DEFAULT '',
  `params` text NOT NULL,
  `ipmi_sensor` varchar(128) NOT NULL DEFAULT '',
  `data_type` int(11) NOT NULL DEFAULT '0',
  `authtype` int(11) NOT NULL DEFAULT '0',
  `username` varchar(64) NOT NULL DEFAULT '',
  `password` varchar(64) NOT NULL DEFAULT '',
  `publickey` varchar(64) NOT NULL DEFAULT '',
  `privatekey` varchar(64) NOT NULL DEFAULT '',
  `mtime` int(11) NOT NULL DEFAULT '0',
  `flags` int(11) NOT NULL DEFAULT '0',
  `filter` varchar(255) NOT NULL DEFAULT '',
  `interfaceid` bigint(20) unsigned DEFAULT NULL,
  `port` varchar(64) NOT NULL DEFAULT '',
  `description` text NOT NULL,
  `inventory_link` int(11) NOT NULL DEFAULT '0',
  `lifetime` varchar(64) NOT NULL DEFAULT '30',
  `snmpv3_authprotocol` int(11) NOT NULL DEFAULT '0',
  `snmpv3_privprotocol` int(11) NOT NULL DEFAULT '0',
  `state` int(11) NOT NULL DEFAULT '0',
  `snmpv3_contextname` varchar(255) NOT NULL DEFAULT '',
  PRIMARY KEY (`itemid`),
  UNIQUE KEY `items_1` (`hostid`,`key_`),
  KEY `items_3` (`status`),
  KEY `items_4` (`templateid`),
  KEY `items_5` (`valuemapid`),
  KEY `items_6` (`interfaceid`),
  CONSTRAINT `c_items_4` FOREIGN KEY (`interfaceid`) REFERENCES `interface` (`interfaceid`),
  CONSTRAINT `c_items_1` FOREIGN KEY (`hostid`) REFERENCES `hosts` (`hostid`) ON DELETE CASCADE,
  CONSTRAINT `c_items_2` FOREIGN KEY (`templateid`) REFERENCES `items` (`itemid`) ON DELETE CASCADE,
  CONSTRAINT `c_items_3` FOREIGN KEY (`valuemapid`) REFERENCES `valuemaps` (`valuemapid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;




準備




ホストの追加




ツール

 

zabbix_get


Zabbix Agentに対し、特定監視項目の現在の値の取得を行う。
ただし、Zabbix Agent設定で指定しているサーバからしか取得できない。
これにはローカルホストも含まれる。


Notice: Trying to get property 'queue' of non-object in /usr/local/wordpress/wp-includes/script-loader.php on line 2876

Warning: Invalid argument supplied for foreach() in /usr/local/wordpress/wp-includes/script-loader.php on line 2876