Sidebar

Zabbix Summit 2022
Register for Zabbix Summit 2022

Table of Contents

ODBC テンプレート操作

ODBC モニタリングを介してメトリックを収集するテンプレートが正しく動作することを確認するための手順:

  1. 必要な ODBC ドライバーが Zabbix サーバーまたはプロキシーにインストールされていることを確認してください。
  2. リンク テンプレートをターゲット ホストに送信します (Zabbix インストールでテンプレートを使用できない場合は、最初にテンプレートの .xml ファイルをインポートする必要がある場合があります) - 手順についてはすぐに使えるテンプレート セクションを参照してください
  3. 必要に応じて必須マクロの値を調整します。 マクロ値に配置されたパスワードにセミコロン (;) が含まれている場合は、中かっこで囲む必要があります。詳細については、ODBC モニタリングを参照してください。
  4. 監視対象のインスタンスを構成して、Zabbix とデータを共有できるようにします。追加の手順/コメント 列の手順を参照してください。

このページには、適切なテンプレート操作に必要な最小限のマクロ セットとセットアップ手順のみが含まれています。 マクロ、項目、およびトリガーの完全なリストを含む、テンプレートの詳細な説明は、テンプレートの Readme.md ファイル (テンプレート名をクリックするとアクセスできます) にあります。

テンプレート 必須マクロ 追加の手順/コメント
MSSQL by ODBC {$MSSQL.DSN} - システム データ ソース名 (デフォルト: <Put your DSN here>)
{$MSSQL.PORT} - Microsoft SQL Server の TCP ポート (デフォルト: 1433)
{$MSSQL.USER}, {$MSSQL.PASSWORD} - Microsoft SQL ログイン資格情報 (デフォルト: 未設定)
監視用の Microsoft SQL ユーザーを作成し、そのユーザーに次の権限を付与します: サーバー状態表示、 任意の定義表示(詳細はMicrosoft SQL ドキュメント参照)

"Service's TCP port state" 項目は、{HOST.CONN} および {$MSSQL.PORT} マクロを使用して、Microsoft SQL インスタンスの可用性をチェックします。
MySQL by ODBC {$MYSQL.DSN} - システム データ ソース名 (デフォルト: <Put your DSN here>)
{$MYSQL.USER}, {$MYSQL.PASSWORD} - MySQL ログイン資格情報。 パスワードは空白にすることができます (デフォルト: 未設定)
監視に使用される MySQL ユーザーに必要な権限を付与するには次を実行します:
GRANT USAGE,REPLICATION CLIENT,PROCESS,SHOW DATABASES,SHOW VIEW ON %% *.* TO '<username>'@'%';%%

詳細についてはMYSQL ドキュメント を参照してください。
Oracle by ODBC {$ORACLE.DSN} - システム データ ソース名 (デフォルト:<Put your DSN here>)
{$ORACLE.PORT} - Oracle DB の TCP ポート (デフォルト: 1521)
{$ORACLE.USER}, {$ORACLE.PASSWORD} - Oracle ログイン資格情報 (デフォルト: 未設定)
1. 監視用の Oracle ユーザーを作成するには次を実行します:
CREATE USER zabbix_mon IDENTIFIED BY <PASSWORD>;
-- zabbix_mon ユーザーにアクセス権を付与します
GRANT CONNECT, CREATE SESSION TO zabbix_mon;
GRANT SELECT ON V_$instance TO zabbix_mon;
GRANT SELECT ON V_$database TO zabbix_mon;
GRANT SELECT ON v_$sysmetric TO zabbix_mon;
GRANT SELECT ON v$recovery_file_dest TO zabbix_mon;
GRANT SELECT ON v$active_session_history TO zabbix_mon;
GRANT SELECT ON v$osstat TO zabbix_mon;
GRANT SELECT ON v$restore_point TO zabbix_mon;
GRANT SELECT ON v$process TO zabbix_mon;
GRANT SELECT ON v$datafile TO zabbix_mon;
GRANT SELECT ON v$pgastat TO zabbix_mon;
GRANT SELECT ON v$sgastat TO zabbix_mon;
GRANT SELECT ON v$log TO zabbix_mon;
GRANT SELECT ON v$archive_dest TO zabbix_mon;
GRANT SELECT ON v$asm_diskgroup TO zabbix_mon;
GRANT SELECT ON sys.dba_data_files TO zabbix_mon;
GRANT SELECT ON DBA_TABLESPACES TO zabbix_mon;
GRANT SELECT ON DBA_TABLESPACE_USAGE_METRICS TO zabbix_mon;
GRANT SELECT ON DBA_USERS TO zabbix_mon;

2. ODBCがセッションパラメータでOracleに接続していることを確認してください:NLS_NUMERIC_CHARACTERS= '.,'

3. odbc.ini に新しいレコードを追加します:
[$ORACLE.DSN]
Driver = Oracle 19 ODBC driver
Servername = $ORACLE.DSN
DSN = $ORACLE.DSN

4. isql 経由で接続を確認します:
isql $TNS_NAME $DB_USER $DB_PASSWORD

5. Oracle ENV を使用するための Zabbix サーバーまたは Zabbix プロキシを設定します。 新しいファイルを編集または追加: /etc/sysconfig/zabbix-server、プロキシの場合: /etc/sysconfig/zabbix-proxy。 次にファイルに以下の行を追加します。
export ORACLE_HOME=/usr/lib/oracle/19.6/client64
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib64:/usr/lib:$ORACLE_HOME/bin
export TNS_ADMIN=$ORACLE_HOME/network/admin

6. Zabbix サーバーまたはプロキシを再起動します。