7,166
edits
(47 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
= Elastic stack / ELK (Elasticsearch + Logstash + Kibana) = | = Elastic stack / ELK (Elasticsearch + Logstash + Kibana) = | ||
'''諸般の事情により更新休止します''' | |||
== 久しぶりの追記 == | |||
久しぶりに logstash.conf を修正したら、割と重要な仕様変更がたくさんあり、過去の記述は現在の仕様に合ってないです。ちなみに ruby code を追記したのですが、event.get event.set とかになっている。 | |||
<syntaxhighlight lang="javascript" enclose="div"> | |||
ruby { | |||
code => "event.set('foo',event.get('foo')+ 5.1)" | |||
} | |||
</syntaxhighlight> | |||
こんな感じ。 | |||
その他、認証系強化による仕様の混乱はとりあえずなんとかするしかないw | |||
== splunk のデモをみて、自分の環境に logstash を入れてみた。 :) == | == splunk のデモをみて、自分の環境に logstash を入れてみた。 :) == | ||
:(ELKBの更新が速いので、随時記事をアップデートします。[https://www.elastic.co/downloads/elasticsearch Elasticsearch 6. | :(ELKBの更新が速いので、随時記事をアップデートします。[https://www.elastic.co/downloads/elasticsearch Elasticsearch 7.6.2], [https://www.elastic.co/downloads/logstash Logstash 7.6.2], [https://www.elastic.co/downloads/beats/filebeat Filebeat 7.6.2], [https://www.elastic.co/downloads/kibana Kibana 7.6.2]) | ||
:[http://ja.splunk.com/ splunk] のデモを見て、構造化ロギング・高速検索・可視化の素晴らしさが解ったので、それをオープンソースの Elastic stack (ELK stack) で実現する。 | :[http://ja.splunk.com/ splunk] のデモを見て、構造化ロギング・高速検索・可視化の素晴らしさが解ったので、それをオープンソースの Elastic stack (ELK stack) で実現する。 | ||
Line 10: | Line 23: | ||
::完全に通常の運用につかっているので、アグレッシブな変更はできなくなってるので突っ込んだ記事がかけない^^;;; | ::完全に通常の運用につかっているので、アグレッシブな変更はできなくなってるので突っ込んだ記事がかけない^^;;; | ||
7.6.0 は kibana の index の変換するのだが、elasticseach のサーキットブレーカーが作動して完了しない。 | |||
:一時的に elasticsearch の heap 増やした。(最終的には、今回の件がギリギリ回避できるメモリー量に増やした) | |||
7.6.0 から X-Pack の概念が変わった(なくなった?) | |||
:logstash.yml から xpack の設定をコメントアウト | |||
timelion の位置付けが変わった。 | |||
kibana.ymlに | |||
<syntaxhighlight lang="yaml" enclose="div"> | |||
timelion.ui.enabled: true | |||
</syntaxhighlight> | |||
で元に戻る。設定を確認して、新しいビジュアライズに移行する。 | |||
7.4.1 の logstash がダメっぽい。ヘビー io-wait | |||
:以前よりメモリー食いになってるようで、ES も含めて頑張って使用メモリー削減してかろうじて稼働中 | |||
:: dns filter がぁ failed_cache_size ちゃんと設定しないとまずい。 | |||
'''ようやく 7.x にあげた''' | |||
あら...意外と簡単に入った 7.4.0...でもないぞ。 | |||
よく見たら index 名が変わって Index Lifecycle Management がよしなにしてしまうようで、昔に戻すには elasticsearch output pulgin で | |||
<syntaxhighlight lang="javascript" enclose="div"> | |||
ilm_enabled => false | |||
</syntaxhighlight> | |||
kibana の index pattern を削除したあとトラブル。新しい index pattern 作っているのに index pattern が無いので作れといわれる | |||
解決策は、新しい index pattern を作るときに、advanced options を表示して、Custom index pattern ID に index pattern と同じ文字をいれる。たとえば index pattern が "logstash-*" なら Custom index pattern ID も "logstash-*" とする。 | |||
私は '*' という文字が嫌なので(あとで問題起きそう)、全部 id を書き換えた。 | |||
filebeat.yml で filebeat.registry_file 行削除すること | |||
logstash の elasticsearch-template を変更 | |||
<syntaxhighlight lang="javascript" enclose="div"> | |||
"_default_" : { | |||
**** | |||
} | |||
</syntaxhighlight> | |||
を削除 | |||
python beaver から送られる 'host' を remove | |||
<syntaxhighlight lang="javascript" enclose="div"> | |||
mutate { | |||
rename => { "host" => "my_host" } | |||
} | |||
mutate { | |||
add_field => { "[host][name]" => "%{my_host}" } | |||
} | |||
</syntaxhighlight> | |||
beats が送っていた "host" は host.name に | |||
[host][name] | |||
agent.* が増えた | |||
7.0.0 出た! テストは気力があるときwにします。。。 | 7.0.0 出た! テストは気力があるときwにします。。。 | ||
Line 546: | Line 619: | ||
cd /usr/share/logstash | cd /usr/share/logstash | ||
./bin/logstash-plugin install logstash-output-statsd | ./bin/logstash-plugin install logstash-output-statsd | ||
./bin/logstash-plugin install logstash-filter-throttle | |||
./bin/logstash-plugin install logstash-filter-sleep | |||
systemctl start elasticsearch | systemctl start elasticsearch | ||
systemctl start kibana | systemctl start kibana |