Zabbix 4.0エンタープライズレベルの分散監視day07第6章データ収集03

6.7データ収集-ログモニター

ログ監視はアクティブにすることしかできないため、Zabbixエージェントのインストールと設定が必要です。

  • zabbox-agentをインストールしてアクティブを有効にする必要があります。アクティブモードではzabbix_agentのホスト名とzabbix_serverの名前のみが同じで、zabbix_server側がStartTrappersを起動します
  • zabbix-agentを起動する必要があるユーザーには、ログファイルへの読み取り権限があります。
  • 10051ポートは妨げられないようにする必要があります

機能:システムビジネスアプリケーションのログモニタリングにより、
誰かが
Javaアプリケーションでブルートフォースを実行してエラーなどがないかどうかモニタリングします。

データ収集プロセス
zabbix-agentが率先してサーバーから最新の監視項目をプルします。監視項目にログ監視項目がある場合、zabbix-agentは構成に従って対応するログを監視します。キーワードに一致するログの場合、zabbix-agentはzabbix-serverに情報をフィードバックします。一致しない場合、zabbix-agentによって返される情報は空になります
ここに画像の説明を挿入

アイテムの構文:logrtは、ログの切り取りなど、ログの反復をサポートしています。countは一致する行の数です
ここに画像の説明を挿入logrt [ログパス、キーワードの正規表現、ログファイルのエンコード、Zabbixエージェントで処理される行の最大数、モード(スキップは古い行をスキップし、新しい行にのみ焦点を当てます)、ログ監視出力、古いログファイルを無視し、ログ形式に従ってログをカットします]

ログ監視固有の構成

 
手順1:ログ監視の前提条件を
確認するエージェントがインストールされ、起動されていることを確認します
#ps aux | grep zabbix

クライアント構成ファイル/etc/zabbix/zabbix_agentd.confは
、サーバー、ServerActive 、ホスト名、telnetサーバーをチェックします
。10051AllowRoot = 1#1は、zabbix_agentプロセスがルートによって起動されていることを意味します0は、ルートではないことを意味します

サーバー構成ファイル/etc/zabbix/zabbix_server.conf
は、Trapperプロセスがアクティブモードの監視項目の値を受信できるかどうかを確認します

ステップ2:モニタリングテンプレートにログモニタリングアイテムを
作成するクライアントはカスタムログファイルを作成します
[root @ localhost〜]#touch /var/log/monitor_findsec.log

監視ログファイルのキーワードは、エラーログの数を監視および監視するために使用され
ます。監視項目の作成>タイプselect zabbix-agentアクティブモード>キーselect log [書き込みなしでデフォルトを使用]
ここに画像の説明を挿入

クライアントにログを書き込む
ここに画像の説明を挿入

結果:
ここに画像の説明を挿入
 

6.8データ収集-SNMPエージェント

エージェントを使用しない収集方法は数多くありますが、その中で一般的に使用されているSNMP方法
ここに画像の説明を挿入
SNMPは、機器とネットワークの相互作用方法を提供する単純なネットワーク管理プロトコルです。デフォルトでは、UDP 161 162を介して通信します。V3はセキュリティ制御バージョンを提供します。
OIDはオブジェクト識別子であり、各OIDは一意であり、各製造元の接頭辞は異なり、読み取りと書き込みが可能です。
クライアントはOIDを介してネットワークデバイスの情報を照会または変更できます
。OIDは人間の視覚化に役立ちません。MIB(Management Information Foundation)を使用して、OIDの意味のマッピング関係が提供され、OIDのデータ型が説明されます。MIBを使用すると、現在のOIDとその他の基本情報の役割を簡単に知ることができます。

SNMPエージェントは、エージェントでインストールできないネットワークデバイスのSNMPを渡すことができます。プリンター、ルーター、スイッチ、ストレージデバイス、ファイアウォールなど。
ここに画像の説明を挿入
データ収集プロセス
ここに画像の説明を挿入
OID
ここに画像の説明を挿入

手順1:監視対象側のエージェント側にSNMPサービスをインストールして構成する
#yum install net-snmp net-snmp-utils -y

SNMPユーザーを作成します
#net-snmp-create-v3-user

[root@localhost ~]# net-snmp-create-v3-user
Enter a SNMPv3 user name to create: 
zabbix
Enter authentication pass-phrase: 
zabbix@findsec
Enter encryption pass-phrase: 
  [press return to reuse the authentication pass-phrase]
zabbix@findsec
adding the following line to /var/lib/net-snmp/snmpd.conf:
   createUser zabbix MD5 "zabbix@findsec" DES zabbix
adding the following line to /etc/snmp/snmpd.conf:
   rwuser zabbix

MD5认证的,DES加密。检查这两行有加入到配置文件

 
ステップ2:SNMP関連サービスを開始し、
#systemctl start snmpdをテストする

测试
[root @ localhost〜] #snmpwalk -v 3 -u zabbix -a MD5 -A 'zabbix @ findsec' -l authPriv -x DES -X 'zabbix @ findsec' localhost

手順3:Zabbixサーバーが前提条件を満たしているかどうかを確認し
、SNMPサービス開始します。
#yum install net-snmp-utils
[root @ localhost〜]#snmpwalk -v 3 -u zabbix -a MD5 -A'zabbix @ findsec '-l authPriv -x DES -X'zabbix @ findsec '192.168.93.147

手順4:Zabbixフロントエンド管理ページで
SNMP監視を構成する監視対象のSNMPホストにSNMP監視インターフェイスを追加する必要があります。その後、SNMP監視アイテムを作成できます
ここに画像の説明を挿入

创建监控项
[root @ localhost〜] #snmpget -v 3 -u zabbix -a MD5 -A 'zabbix @ findsec' -l authPriv -x DES -X 'zabbix @ findsec' 192.168.93.147 SNMPv2-MIB :: sysName。 0
SNMPv2-MIB :: sysName.0 = STRING:localhost.localdomain

[root @ localhost〜]#snmpwalk -v 3 -u zabbix -a MD5 -A'zabbix @ findsec '-l authPriv -x DES -X'zabbix @ findsec'-O fn 192.168.93.147 SNMPv2-MIB :: sysName。 0
-O fnを使用して、数値タイプOIDを確認します

例に示すように(実際のアドレスは192.168.93.147):
ここに画像の説明を挿入
次の図は、テンプレートでの監視アイテムの作成を示しています。ホストに監視項目を作成すると、より多くのホストインターフェースが存在します

[root @ localhost〜]#snmpwalk -v 3 -u zabbix -a MD5 -A'zabbix @ findsec '
-l authPriv -x DES -X'zabbix @ findsec' 192.168.93.147 |詳細自分の状況に応じて異なるものを選択できますさまざまな監視のためのOID

ここに画像の説明を挿入

結果:
ここに画像の説明を挿入
 

★6.9データ収集-SNMPトラップ

ここに画像の説明を挿入
SNMPトラップは、監視対象のデバイスに問題がある場合、監視デバイスが情報をプルすることなく、管理端末または監視デバイスにアクティブにアラーム情報を送信し、イベントの発生を改善します(高いCPU使用率、ディスクアラームなど)。適時性:エージェントと比較して、データを取得する速度が速すぎるため、監視機器にパフォーマンスの負荷がかかりません。

トラップの利点は、イベントベースの異常イベントをタイムリーに検出できることです。
ポート161および162
161は主にクエリに使用され、
162は主にトラップ通信に使用されます

トラップをサポートするための前提条件:

  • zabbixサーバー側
    1は、コンパイル時にSNMPをサポートする必要があります--with-net-snmp
    2構成StartSNMPTrapperおよびSNMPTrapperFile
    3構成SNMPTサービス
    4構成Perlトラップレシーバー(perlスクリプトは本番環境でより効率的です)
    5 zabbixサーバーと監視対象デバイスを許可161 162ポートudp通信

  • 監視対象デバイス
    により、zabbixサーバーは監視対象デバイスの161 162ポートudpと通信できます(SNMPトラップメッセージ送信の構成)

データ収集プロセス
ここに画像の説明を挿入
構文
snmptrap [regexp]
snmptrap.fallback(一致する情報なしで上記の通常のルールに一致させるために使用されます)

ステップ:

ステップ1:前提条件の構成

監視装置

サーバーサーバー
インストールSNMPトラップサービス、対応する構成ファイルの構成、Zabbixサーバー構成ファイルの構成、SNMPトラッパープロセスとSNMPトラッパーファイルの指定

[root@localhost ~]# yum install -y net-snmp net-snmp-utils net-snmp-perl

Zabbix Server 4.0ソースコードパッケージをダウンロードし、zabbix_trap_receiver.plスクリプトを準備します
https://www.zabbix.com/download_sources#tab:40LTS

root@localhost ~]# wget https://cdn.zabbix.com/zabbix/sources/stable/4.0/zabbix-4.0.20.tar.gz
root@localhost ~]# tar -zxvf zabbix-4.0.20.tar.gz 
[root@localhost ~]# cp zabbix-4.0.20/misc/snmptrap/zabbix_trap_receiver.pl /usr/bin
[root@localhost ~]# chmod +x /usr/bin/zabbix_trap_receiver.pl

SNMPトラップサービスを構成する

[root@localhost ~]# vim /etc/snmp/snmptrapd.conf 
authCommunity log,execute,net public
perl do "/usr/bin/zabbix_trap_receiver.pl"


authCommunity 开头的一行配置了 snmptrapd 的安全设置,表示可以接收 community 为”public”的 SNMP Trap,并且本进程可以有 log,net 和 execute 的权限

リブート

[root@localhost ~]# systemctl restart snmptrapd.service
[root@localhost ~]# systemctl enable snmptrapd.service

Zabbixサーバーの構成ファイルを変更します
まず、zabbix_trap_receiver.plによって処理されたログパスを確認します

[root@localhost ~]# vim /usr/bin/zabbix_trap_receiver.pl 

$ SNMPTrapperFile = '/tmp/zabbix_traps.tmp';
ここに画像の説明を挿入

[root@localhost ~]# vim /etc/zabbix/zabbix_server.conf
SNMPTrapperFile=/tmp/zabbix_traps.tmp
StartSNMPTrapper=1

重启
[root @ localhost〜]#systemctl restart zabbix-server.service

 

監視対象機器

エージェントクライアント
ネットワークデバイスSNMPの場合、ネットワークデバイスの対応するSNMPトラップ情報を設定できます。
#yum install net-snmp-utilsインストールされているかどうかを確認します。

エージェントからサーバーに
snmptrap --help を送信します

[root@localhost ~]# snmptrap -v 2c -c public 192.168.93.145 "hostname snmptraptest" '1.3.6.1.4.1.67' SNMPv2-MIB::sysName.0 s "SNMP Trap Test"

送信された情報は、zabbix-serverの/tmp/zabbix_traps.tmpから表示できます
ここに画像の説明を挿入

手順2:WebでSNMP監視項目を構成する

ログ時間の形式:%H:%M:%S%Y /%m /%d
查看サーバー端的/usr/bin/zabbix_trap_receiver.pl
$ DateTimeFormat = ' %H:%M:%S%Y /%m /% d ';
ここに画像の説明を挿入

トラップ情報がfindsecと一致しない場合、デフォルトでフォールバックによって収集および処理されます
ここに画像の説明を挿入

手順3:クライアントでトラップテストを送信する

findsecキーワードなし
[root @ localhost〜] #snmptrap -v 2c -c public 192.168.93.145 "snmptraptest" '1.3.6.1.4.1.67' SNMPv2-MIB :: sysName.0 s "SNMP Trap Test"
ここに画像の説明を挿入
with findsecキーワード
[root @ localhost〜] #snmptrap -v 2c -c public 192.168.93.145 "snmptraptest" '1.3.6.1.4.1.67' SNMPv2-MIB :: sysName.0 s "SNMP Trap Test findsec"
ここに画像の説明を挿入


ここに画像の説明を挿入


 
findsecに一致する行のみを抽出する場合は、zabbix監視項目の前処理機能を使用します。
ここに画像の説明を挿入
クライアントでいくつかのトラップメッセージを送信した後、結果を確認します。
ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/qq_39578545/article/details/106345790