0

スタックオーバーフローを使用するのはかなり初めてなので、事前にお詫び申し上げます。私の質問で何かを変更する必要がある場合はお知らせください。

現在、仕事用にログアグリゲーターをセットアップしようとしています。私の計画は、エラスティック スタックとファイルビートを使用してログを収集し、表示することです。このチュートリアルを使用して、初期サーバーをセットアップしました。

https://www.digitalocean.com/community/tutorials/how-to-install-elasticsearch-logstash-and-kibana-elastic-stack-on-ubuntu-18-04

チュートリアルと同じように、filebeat システム モジュールを使用して、システムから syslog を読み取ることができました。次に、すべてのサーバー syslog を読み取らなくても、ジュニパー スイッチから syslog をログに記録できるように、それを無効にしました。

現在、ジュニパー スイッチから仮想マシンにログを取得しようとしています。ポート 9513 の仮想マシンの IP に syslog を送信するようにスイッチを設定しました。tcpdump を使用してポートを監視すると、ログが入ってくるのがわかります。

user@logserver:~$ sudo tcpdump -i ens160 port 9513
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ens160, link-type EN10MB (Ethernet), capture size 262144 bytes
16:42:20.558768 IP ***.***.***.***.syslog > logserver.9513: SYSLOG local7.info, length: 124
16:45:00.571980 IP ***.***.***.***.syslog > logserver.9513: SYSLOG cron.info, length: 79
16:45:00.576370 IP ***.***.***.***.syslog > logserver.9513: SYSLOG cron.info, length: 91
16:47:45.944277 IP ***.***.***.***.syslog > logserver.9513: SYSLOG local7.info, length: 124
16:48:20.568840 IP ***.***.***.***.syslog > logserver.9513: SYSLOG local7.info, length: 64
16:50:00.653082 IP ***.***.***.***.syslog > logserver.9513: SYSLOG cron.info, length: 91
16:50:55.769884 IP ***.***.***.***.syslog > logserver.9513: SYSLOG local7.info, length: 106
16:50:55.777058 IP ***.***.***.***.syslog > logserver.9513: SYSLOG local7.notice, length: 112
16:50:57.704914 IP ***.***.***.***.syslog > logserver.9513: SYSLOG local7.info, length: 101
16:50:57.817315 IP ***.***.***.***.syslog > logserver.9513: SYSLOG local7.notice, length: 112
16:55:00.701165 IP ***.***.***.***.syslog > logserver.9513: SYSLOG cron.info, length: 91
17:00:00.766060 IP ***.***.***.***.syslog > logserver.9513: SYSLOG cron.info, length: 91
17:00:00.777780 IP ***.***.***.***.syslog > logserver.9513: SYSLOG cron.info, length: 79

filebeat を使用してこの入力データを読み取る方法はいくつかあります。1 つは、有効にしたデフォルトの juniper モジュールを使用することです。filebeat.yml 構成ファイルで syslog タイプの入力をセットアップすることもできます。ポート 9513 とポート 514 の両方を使用して、これらの方法の両方を試しました。

filebeat.inputs:

- type: syslog
  protocol.udp:
    host: "localhost:514"
- type: syslog
  protocol.udp:
    host: "localhost:9513"



- module: juniper
  junos:
    enabled: true

    # Set which input to use between udp (default), tcp or file.
      var.input: udp
      var.syslog_host: localhost
      var.syslog_port: 514
- module: juniper
  junos:
    enabled: true

    # Set which input to use between udp (default), tcp or file.
      var.input: udp
      var.syslog_host: localhost
      var.syslog_port: 9513

filebeatはsyslog情報をlogstashに送信していないため、filebeat構成に理解できない何かがあると推測しています。また、ポート 5044 と lo インターフェイス (チュートリアルで filebeat の出力と logstash の入力をセットアップするために使用するポート) で tcpdump を使用しました。これを実行してポート 514 または 9513 のいずれかでスイッチから新しいログを受信すると、次に示すように 5044 経由で何も送信されません。

user@logserver:~$ sudo tcpdump -i lo port 5044
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on lo, link-type EN10MB (Ethernet), capture size 262144 bytes
^C
0 packets captured
0 packets received by filter
0 packets dropped by kernel

filebeat を理解するための助けをいただければ幸いです。よろしくお願いします

4

1 に答える 1