Elasticsearchでチャレンジ その1 (FreeBSD 11.2R、2018/07/04) [FreeBSD]
せっかくElasticsearchが動くようになったのですが、良いログのサンプルがなく、ちょっとしたことを考えてみました。それは私のVPSで動いているipfwのログを、logstashで加工し、Elasticsearchに読み込ませるのです。
Elasticsearch + Kibana:ローカルFreeBSD
↑
logstash:VPS上のFreeBSD
logstashからElasticsearchへは、TCP/IP上でデータを飛ばせるようですが、私のローカルFreeBSDとVPSは直接接続ができないため、OpenVPNを使用し一時的にダイレクト通信できるようにしました。(OpenVPN導入の話はまた今度)
ただlogstashの設定構文は難解で、かなり苦戦しています。(Web上にもサンプルは少ない)
基本的には正規表現等のパターンマッチングを駆使して、ログを切り出していくイメージです。例えば以下のようなFWログだと、<時間>+<ホスト名>+<プログラム名>+<行番号>+<アクション>+<送信元>+<送信先>+<インタフェース>に細分化することができますね。
https://qiita.com/tuneyukkie/items/75cbb4d44f901fec2188
上記を見ていると、logstashで解析・細分化したデータをテキスト形式でデバッグ出力できる方法があるようなので、まずはそちらで試してみます。試したコンフィグはおそらく間違っているので、敢えてアップロードしません。(ちゃんと動くようになってから)
結果は以下のようなログがどばっと30行ほど出て大失敗です。まぁ、ちゃんと理解できていないのでしょうね…
もう一つ大問題があって、私のVPSはメモリが1GBしかありません。(貧乏なので)
Javaを動かすということで、すごくイヤな予感がしていたのですが、logstashだけならなんとかなるかも、という甘い考えは儚くも崩れ去りました。話にならないほどリソースが足りません。
sshのキーレスポンスが悪化するほど、ダメダメな状態でした。ちょっと他の方法を考えますかねぇ。
Elasticsearch + Kibana:ローカルFreeBSD
↑
logstash:VPS上のFreeBSD
logstashからElasticsearchへは、TCP/IP上でデータを飛ばせるようですが、私のローカルFreeBSDとVPSは直接接続ができないため、OpenVPNを使用し一時的にダイレクト通信できるようにしました。(OpenVPN導入の話はまた今度)
ただlogstashの設定構文は難解で、かなり苦戦しています。(Web上にもサンプルは少ない)
基本的には正規表現等のパターンマッチングを駆使して、ログを切り出していくイメージです。例えば以下のようなFWログだと、<時間>+<ホスト名>+<プログラム名>+<行番号>+<アクション>+<送信元>+<送信先>+<インタフェース>に細分化することができますね。
Jul 4 04:27:22 vpshost kernel: ipfw: 2400 Deny TCP 192.168.A.B:6300 10.0.C.D:445 in via em0
https://qiita.com/tuneyukkie/items/75cbb4d44f901fec2188
上記を見ていると、logstashで解析・細分化したデータをテキスト形式でデバッグ出力できる方法があるようなので、まずはそちらで試してみます。試したコンフィグはおそらく間違っているので、敢えてアップロードしません。(ちゃんと動くようになってから)
結果は以下のようなログがどばっと30行ほど出て大失敗です。まぁ、ちゃんと理解できていないのでしょうね…
[2018-07-04T09:39:02,407][ERROR][logstash.agent ] Failed to execute action {:id=>:main, :action_type=>LogStash::ConvergeResult::FailedAction, :message=>"Could not execute action: LogStash::PipelineAction::Create/pipeline_id:main, action_result: false", :backtrace=>nil}
もう一つ大問題があって、私のVPSはメモリが1GBしかありません。(貧乏なので)
Javaを動かすということで、すごくイヤな予感がしていたのですが、logstashだけならなんとかなるかも、という甘い考えは儚くも崩れ去りました。話にならないほどリソースが足りません。
Mem: 578M Active, 10M Inact, 131M Laundry, 228M Wired, 96M Buf, 16M Free Swap: 3072M Total, 436M Used, 2636M Free, 14% Inuse, 224K In, 108K Out PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND 77437 logstash 14 52 0 2489M 357M uwait 0 0:29 103.55% java 78254 root 14 52 0 2483M 336M uwait 1 0:22 95.49% java
sshのキーレスポンスが悪化するほど、ダメダメな状態でした。ちょっと他の方法を考えますかねぇ。
コメント 0