ááá¯á¡áá»áááºááœááºá ELK stack ááá«áá² Kubernetes-based ááá±á¬áá»ááºáá áºáá¯ááᯠá áááºáá°ážááŒáá·áºááẠáááŒá áºááá¯ááºáá±á¬á·áá²á á¡á á¯á¡áá±ážá á¡ááá®áá±ážááŸááºážáá»á¬ážááŸáá·áº á áá áºá¡á áááºá¡ááá¯ááºážááŸá áºáá¯á áá¯á¶ážá ááŸááºáááºážáá»á¬ážááᯠááááºážáááºážáá±ážáá«áááºá áá»áœááºá¯ááºááá¯á·ááááºááœá±á·ááœááºá áá»áœááºá¯ááºááá¯á·ááẠLogstash á¡á á¬áž Fluentd ááŒáá·áº EFK stack ááá¯á¡áá¯á¶ážááŒá¯áááºá
Fluentd ááẠáá±ááºáá®ááŒá®áž áá»ááºáá»ááºááŒáá·áºááŒáá·áº áá±áááºážá á¬ážáá¬áᬠCloud Native Computing Foundation ááŸáá·áº áá°ážáá±á«ááºážáá¬ážáá±á¬ááŒá±á¬áá·áº áááºážáááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯ vector ááᯠKubernetes ááŸáá·áº ááœá²áááºá¡áá¯á¶ážááŒá¯ááẠá¡á¬áá¯á¶á áá¯ááºáá¬ážáááºá
Logstash á¡á á¬áž Fluentd ááá¯á¡áá¯á¶ážááŒá¯ááŒááºážááẠáá±á¬á·ááºáá²áááºáá±á·áá»áºá áá±áá°áá»á¡ááŸá áºáá¬áááᯠáááŒá±á¬ááºážáá²áá±á¬áºáááºážá Fluentd ááẠáááºážááááºá á¯á¶áá¯á¶ážááá¯ááºááŸá¯á០ááœááºáá±á«áºáá¬áá±á¬ áááºážáááá¯ááºááá¯ááºáá°ážááŒá¬ážáá»ááºááŒáá·áº ááœááºááŒááºááá¹ááá¬ááŒá áºáááºá
á¥ááá¬á¡á¬ážááŒáá·áºá áá»áœááºá¯ááºááá¯á·ááẠá¡áá¯ááºáá»á¬ážáá±á¬ ááá±á¬áá»ááºáá áºáá¯ááœáẠEFK ááᯠá áááºá¡áá¯á¶ážááŒá¯áá±á¬á¡áá«ááœááºá Kibana ááœáẠá¡áá»áá¯á·áá±á¬ áááºáá±á·áá»áºáá»á¬ážááᯠá¡ááŒáááºáá»á¬ážá áœá¬ áááºáá«áááºáá« ááŒááá²á·áááºáá°áá±á¬ á¡áá»ááºááŸáá·áº áááºááá¯ááºáá²á·ááááºá áá®áá±á¬ááºážáá«ážááŸá¬ áá¬ááŒá±á¬áá·áº áá®ááŒá áºá ááºááŒá áºááœá¬ážááŒá®áž ááŒá¿áá¬ááᯠááŒá±ááŸááºážáááá²ááá¯áᬠááŒá±á¬ááŒáá«áááºá
á á¬ááœááºá á¬áááºážááœá¬ážááŒááºážááŒá¿áá¬
áá»áœááºá¯ááºááá¯á·áááá±á¬áá»ááºáá»á¬ážááœááºá Fluentd ááᯠDaemonSet ( Kubernetes á¡á á¯á¡áá±ážáá áºáá¯á á®á node áá áºáá¯á á®ááœáẠá á¶ááá°áá¬áá áºáá¯ááŒáá·áº á¡ááá¯á¡áá»á±á¬ááºá áááºáááº) ááŸáá·áº /var/log/containers á¡ááœááºážááŸá stdout container ááŸááºáááºážáá»á¬ážááᯠá á±á¬áá·áºááŒáá·áºá á áºáá±ážáá«áááºá á á¯áá±á¬ááºážááŒááºážááŸáá·áº á á®áá¶áá±á¬ááºááœááºááŒá®ážáá±á¬ááºá JSON á á¬ááœááºá á¬áááºážáá¯á¶á á¶ááŸá ááŸááºáááºážáá»á¬ážááᯠááá±á¬áá»ááºáá¡ááá¯ááºážá¡áá¬ááŸáá·áº á áœááºážáá±á¬ááºáááºááŸáá·áº á¡ááŸá¬ážáá¶ááá¯ááºáááºá¡ááœáẠááá¯á¡ááºáá»ááºáá»á¬ážáá±á«áºáá°áááºá á¡á á¯á¡áá±áž ááá¯á·ááá¯áẠáá®ážááŒá¬ážáá¯á¶á á¶ááŒáá·áº ááŒá¯á á¯áá¬ážááá·áº ElasticSearch ááá¯á· áá±ážááá¯á·áááºááŒá áºáááºá Kibana ááᯠgraphical interface á¡ááŒá Ạá¡áá¯á¶ážááŒá¯áááºá
Fluentd ááᯠoutput buffering ááááºá¡ááºááŒáá·áº á¡áá¯á¶ážááŒá¯áá±á¬á¡áá«á ElasticSearch á¡ááœááºážááŸá á á¬ááœááºá á¬áááºážá¡áá»áá¯á·ááẠá¡ááá¡áá»áá°áá®áá±á¬á¡ááŒá±á¬ááºážá¡áá¬ááŸáááŒá®áž identifier ááœááºáá¬ááœá²ááŒá¬ážááá·áºá¡ááŒá±á¡áá±áá áºáá¯ááᯠáá»áœááºá¯ááºááá¯á·ááŒá¯á¶ááœá±á·áá²á·ááááºá áááºážááẠNginx ááŸááºáááºážááᯠááá°áá¬á¡ááŒá Ạá¡áá¯á¶ážááŒá¯á áááºážááẠáááºáá±á·áá»áº áááºáá«ááá²áá²ááŒá áºááŒá±á¬ááºáž áááºá¡áááºááŒá¯ááá¯ááºáááºá ááŸááºáááºážááá¯ááºááœááºá á€áááºáá±á·áá»áºááẠáá±á¬áºáá®áá áºáá¯áááºážááœáẠááŸááá±áááº-
127.0.0.1 192.168.0.1 - [28/Feb/2013:12:00:00 +0900] "GET / HTTP/1.1" 200 777 "-" "Opera/12.0" -
ááá¯á·áá±á¬áºá á€á á¬áá«ááŸááá±á¬ ElasticSearch ááœáẠá á¬ááœááºá á¬áááºážáá»á¬ážá áœá¬ ááŸááá«áááºá
{
"_index": "test-custom-prod-example-2020.01.02",
"_type": "_doc",
"_id": "HgGl_nIBR8C-2_33RlQV",
"_version": 1,
"_score": 0,
"_source": {
"service": "test-custom-prod-example",
"container_name": "nginx",
"namespace": "test-prod",
"@timestamp": "2020-01-14T05:29:47.599052886 00:00",
"log": "127.0.0.1 192.168.0.1 - [28/Feb/2013:12:00:00 0900] "GET / HTTP/1.1" 200 777 "-" "Opera/12.0" -",
"tag": "custom-log"
}
}
{
"_index": "test-custom-prod-example-2020.01.02",
"_type": "_doc",
"_id": "IgGm_nIBR8C-2_33e2ST",
"_version": 1,
"_score": 0,
"_source": {
"service": "test-custom-prod-example",
"container_name": "nginx",
"namespace": "test-prod",
"@timestamp": "2020-01-14T05:29:47.599052886 00:00",
"log": "127.0.0.1 192.168.0.1 - [28/Feb/2013:12:00:00 0900] "GET / HTTP/1.1" 200 777 "-" "Opera/12.0" -",
"tag": "custom-log"
}
}
ááá¯á·á¡ááŒááºá áááºáá«ááá²áá² ááŸá áºááŒáááºáááºááá¯ááá¯ááºáááºá
Fluentd ááŸááºáááºážáá»á¬ážááœáẠá€ááŒá¿áá¬ááᯠááŒá±ááŸááºážáá±á ááºááœáẠá¡á±á¬ááºáá«á¡ááŒá±á¬ááºážá¡áá¬ááŒáá·áº ááááá±ážáá»ááºá¡áá»á¬ážá¡ááŒá¬ážááᯠáááºááœá±á·ááŒááºááá¯ááºáááº-
2020-01-16 01:46:46 +0000 [warn]: [test-prod] failed to flush the buffer. retry_time=4 next_retry_seconds=2020-01-16 01:46:53 +0000 chunk="59c37fc3fb320608692c352802b973ce" error_class=Fluent::Plugin::ElasticsearchOutput::RecoverableRequestFailure error="could not push logs to Elasticsearch cluster ({:host=>"elasticsearch", :port=>9200, :scheme=>"http", :user=>"elastic", :password=>"obfuscated"}): read timeout reached"
Request_timeout ááá·áºáááºáá»ááºááŒáá·áº áááºááŸááºáá¬ážáá±á¬ á¡áá»áááºá¡ááœááºáž ElasticSearch á០áá±á¬ááºážááá¯áá»ááºáá áºáá¯á¡á¬áž áá¯á¶á·ááŒááºááŸá¯áááŒá¯áá¯ááºááá¯ááºáá±á¬á¡áá«ááœáẠá€ááááá±ážáá»ááºáá»á¬áž ááŒá áºáá±á«áºáá¬áááºá ááá¯á·ááŒá±á¬áá·áº áááºááá·áºáá±ážááá¯á·áá¬ážáá±á¬ ááŒá¬ážáá¶á¡ááá¯ááºážá¡á ááᯠááŸááºážáááºážááááá«á áááºážáá±á¬ááºá Fluentd ááẠááŒá¬ážáá¶á¡ááá¯ááºážá¡á ááᯠElasticSearch ááá¯á· áááºáá¶áá±ážááá¯á·ááẠááŒáá¯ážá á¬ážááŒá®áž ááááºáááᯠá¡ááŒáááºáá±á«ááºážáá»á¬ážá áœá¬ ááŒáá¯ážá á¬ážááŒá®ážáá±á¬ááºá áá¯ááºáá±á¬ááºáá»áẠá¡á±á¬ááºááŒááºá áœá¬ ááŒá®ážáá¯á¶ážááœá¬ážáááº-
2020-01-16 01:47:05 +0000 [warn]: [test-prod] retry succeeded. chunk_id="59c37fc3fb320608692c352802b973ce"
2020-01-16 01:47:05 +0000 [warn]: [test-prod] retry succeeded. chunk_id="59c37fad241ab300518b936e27200747"
2020-01-16 01:47:05 +0000 [warn]: [test-dev] retry succeeded. chunk_id="59c37fc11f7ab707ca5de72a88321cc2"
2020-01-16 01:47:05 +0000 [warn]: [test-dev] retry succeeded. chunk_id="59c37fb5adb70c06e649d8c108318c9b"
2020-01-16 01:47:15 +0000 [warn]: [kube-system] retry succeeded. chunk_id="59c37f63a9046e6dff7e9987729be66f"
ááá¯á·áá±á¬áºáááºážá ElasticSearch ááẠááœáŸá²ááŒá±á¬ááºážáá¬ážáá±á¬ ááŒá¬ážáá¶á¡ááá¯ááºážá¡á áá áºáá¯á á®ááᯠáá°ážááŒá¬ážááá·áºá¡ááŒá Ạááá±á¬áá¬ážááŒá®áž ááœáŸááºážááááºážááŒá¯áá¯ááºáá±á ááºá¡ááœááºáž áááºážááá¯á·ááᯠáá®ážááŒá¬áž _id á¡ááœááºáááºááá¯ážáá»á¬áž áááºááŸááºáá±ážáááºá á€áááºááŸá¬ áááºáá±á·áá»áºáá»á¬ážá áá±á¬áºáá®áá»á¬áž áá±á«áºáá¬áá¯á¶ááŒá áºáááºá
Kibana ááœááºáááºážáááºá€áá²á·ááá¯á·áá±á¬áá¯á¶ááááºá
addressing
á€ááŒá¿áá¬ááá¯ááŒá±ááŸááºážáááºááœá±ážáá»ááºá áá¬áá»á¬ážá áœá¬ááŸááááºá áááºážááá¯á·áá²ááŸáá áºáá¯ááŸá¬ á á¬ááœááºá á¬áááºážáá áºáá¯á á®á¡ááœáẠáá°ážááŒá¬ážáá±á¬ hash áá áºáá¯ááᯠáááºáá®ážáááºá¡ááœáẠáá»áœááºážáá»ááºáá±á¬-plugin-elasticsearch plugin ááœáẠáááºáá±á¬ááºáá¬ážáá±á¬ ááá¹ááá¬ážááŒá áºáááºá á€ááá¹ááá¬ážááᯠáááºá¡áá¯á¶ážááŒá¯áá«áá ElasticSearch ááẠáááºááá·áºááá¯á·ááá·áºá¡ááá·áºááœáẠáááºáá«ááá²áá²áá¯ááºáá±á¬ááºááŸá¯áá»á¬ážááᯠá¡ááá¡ááŸááºááŒá¯ááŒá®áž á á¬ááœááºá á¬áááºážáá»á¬áž áááºáá±ááŒááºážááᯠáá¬ážáá®ážáá«áááºá áá«áá±ááá·áº áá®ááŒá¿áá¬ááᯠááŒá±ááŸááºážáá²á·áááºážáááºážá á á¯á¶á ááºážá á áºáá±ážááŸá¯ááŸá¬ áá¯ááºážáááºáá±áááŒá®áž á¡áá»áááºááá¯ááºáá² á¡ááŸá¬ážá¡ááœááºážááᯠáááºááŸá¬ážááá±ážáá²á·á¡ááœáẠáá»áœááºá¯ááºááá¯á·á áááºážáá²á·á¡áá¯á¶ážááŒá¯ááŸá¯ááᯠá áœáá·áºááœáŸááºááŒá±á¬ááºáž ááá·áºááœááºážá ááºážá á¬ážááá«áááºá
áá±ááá¯ááœááºáááºááŒá¿áá¬áá»á¬áž ááá¯á·ááá¯áẠááŸááºáááºážáááºáá±á¬ááºááŸá¯ ááŒááºážáááºááŸá¯ ááá¯ážáá¬áá±á¬á¡áá«ááœáẠááŸááºáááºážáá¯á¶ážááŸá¯á¶ážááŸá¯ááᯠáá¬ááœááºááẠFluentd á¡ááœááºááœáẠbuffering ááááºá¡ááºááᯠá¡áá¯á¶ážááŒá¯áá«áááºá á¡ááŒá±á¬ááºážááŒáá»ááºáá áºáá¯áá¯ááŒá±á¬áá·áº ElasticSearch ááẠá¡ááœáŸááºážááá¯á· á á¬ááœááºá á¬áááºážáá áºáá¯ááᯠáá»ááºáá»ááºážááá±ážááá¯ááºáá«áá á á¬ááœááºá á¬áááºážááᯠáááºážá á®áá±ááŒá®áž disk ááœáẠááááºážáááºážáá¬ážáááºá ááá¯á·ááŒá±á¬áá·áºá áá»áœááºá¯ááºááá¯á·áá¡ááŒá±á¡áá±ááœááºá á¡áááºááœááºáá±á¬áºááŒáá¬ážáá±á¬ error ááá¯ááŒá áºá á±áá±á¬ááŒá¿áá¬ááááºážááŒá áºááá¯áááºááŸá¬ážáááºá¡ááœááºá Fluentd á¡ááœááºááŒá¬ážáá¶ááẠáá¯á¶áá±á¬ááºáá±á¬á¡ááœááºá¡á á¬ážááŒá áºááŒá®áž buffering áá±á¬ááºáá»á¬ážá¡ááœáẠááŸááºáááºáá±á¬áááºááá¯ážáá»á¬ážááᯠáááºááŸááºáááºááá¯á¡ááºáá«áááºá áá áºáá»áááºáááºážááŸá¬ááẠáá»áá¬ážáá±ážááá·áºá¡áá»áááºá ááŸááºážáááºážááẠá á®áá¶áááºá
á¡á±á¬ááºááœááºáá±á¬áºááŒáá¬ážáá±á¬ ááœá±ážááœá±ážáá¬ážáá±á¬ ááá·áºáááºáá±á¬ááºáá»á¬ážá áááºááá¯ážáá»á¬ážááẠá¡ááœááºááááºá¡ááºáá»á¬ážááœáẠbuffering ááá¯á¡áá¯á¶ážááŒá¯ááá·áº áá®ážááŒá¬ážááá á¹á áááºáá áºáá¯á á®ááœáẠáá áºáá¯áá»ááºážááŒá áºáááºá á¡ááŒá±á¬ááºážá¡áá»ááºáá»á¬ážá áœá¬áá±á«áºááœááºáá°áááºáá±á¬ááŒá±á¬áá·áº áááºážááá¯á·ááẠá¡áá»ááºáá»á¬ážá áœá¬á¡áá±á«áº áá°áááºáááº- áááºáá±á¬ááºááŸá¯áá»á¬ážá¡ááá¯áẠááŸááºáááºážááá¯á· á á¬áá»á¬ážáá±ážáá¬ážááŒááºážáááŒááºážáááºááŸá¯á áá áºááºá áá áºá áœááºážáá±á¬ááºáááºá ááœááºááẠchannel load ááŸáá·áº áááºážá bandwidthá ááá¯á·ááŒá±á¬áá·áºá ááá á¹á áá áºáá¯á á®á¡ááœáẠááá·áºáá»á±á¬áºáá±á¬áºáááºáž áááºááááºáá²á ááŸááºáá»á¬ážáá±á¬ááŸá¬ááœá±ááŸá¯áá»á¬ážááᯠáá»ááºá áá á¯á¶ááŸáááºááŸá±á¬ááºááŸá¬ážááá¯ááºáááºá áááºáááºáá±á ááºá¡ááœááºáž áááºážáááŸááºáááºážááá¯á· Fluentd áá±ážáá±á¬ á¡ááŸá¬ážááŸá¬á¡áá»ááºá¡áááºááᯠáááºá¡áá¯á¶ážááŒá¯ááá¯ááºááŒá®áž ááŸááºáááºáá±á¬áááºááá¯ážáá»á¬ážááᯠáá»ááºááŒááºá áœá¬ááá°áá«á
ááŒá¿áá¬ááᯠááŸááºáááºážáááºááá·áºá¡áá»áááºááœááºá ááœá²á·á ááºážááŸá¯áá¯á¶á á¶ááẠá€áá²á·ááá¯á·ááŒá áºáááº-
<buffer>
@type file
path /var/log/fluentd-buffers/kubernetes.test.buffer
flush_mode interval
retry_type exponential_backoff
flush_thread_count 2
flush_interval 5s
retry_forever
retry_max_interval 30
chunk_limit_size 8M
queue_limit_length 8
overflow_action block
</buffer>
ááŒá¿áá¬ááá¯ááŒá±ááŸááºážáá±á¬á¡áá«á á¡á±á¬ááºáá«áá±á¬ááºáá»á¬ážááááºááá¯ážáá»á¬ážááᯠááá¯ááºááá¯ááºááœá±ážáá»ááºáá²á·áááº-
chunk_limit_size â ááŒá¬ážáá¶ááŸá áááºáá±á·áá»áºáá»á¬ážááᯠááá¯ááºážááŒá¬ážáá¬ážáá±á¬ á¡áá¯á¶ážáá»á¬ážá á¡ááœááºá¡á
á¬ážá
- flush_interval â ááŒá¬ážáá¶ááá¯ááŸááºážáááºážááŒá®ážáá±á¬ááºá¡áá»áááºááŒá¬ážáá¬áá
- queue_limit_length â áááºážá á®ááŸá á¡áá»á¬ážáá¯á¶ážá¡ááá¯ááºážáá»á¬ážá
- Request_timeout ááẠFluentd ááŸáá·áº ElasticSearch á¡ááŒá¬áž áá»áááºáááºááŸá¯ááᯠáááºáá±á¬ááºááá·áº á¡áá»áááºááŒá áºáááºá
áá±ážáá¬ážáá±á¬ á¡ááœááºá¡á á¬ážáá áºáá¯á á®áá«ááŸáááá·áº áááºážá á®á¡ááœááºáž á¡áá»á¬ážáá¯á¶ážá¡áá±á¡ááœááºáá»á¬ážáᯠá¡áááá¹áá¬ááºááœáá·áºááá¯ááá¯ááºááá·áº ááá·áºáááºáá±á¬ááºáá»á¬áž queue_limit_length ááŸáá·áº chunk_limit_size ááᯠááŒáŸá±á¬ááºááŒááºážááŒáá·áº á á¯á á¯áá±á«ááºážááŒá¬ážáá¶á¡ááœááºá¡á á¬ážááᯠááœááºáá»ááºááá¯ááºáááºá ááŒá¬ážáá¶á¡ááœááºá¡á á¬áž ááá¯á¶áá±á¬ááºáá«áá ááŸááºáááºážáá»á¬ážááœáẠá¡á±á¬ááºáá«ááááá±ážáá»áẠáá±á«áºáá¬áá«áááº-
2020-01-21 10:22:57 +0000 [warn]: [test-prod] failed to write data into buffer by buffer overflow action=:block
áá»áá¬ážáá±ážááá·áºá¡áá»áááºá ááŒá¬ážáá¶ááŸááºážáááºážááẠá¡áá»áááºáááŸáá á¡ááŒáá·áºá¡ááááºáá±á¬ááºáá¬áá±á¬ áá±áá¬ááᯠááŒá¬ážáá¶ááááºááá¯á·áá¬ážáá±á¬ááŒá±á¬áá·áº ááŸááºáááºážáá»á¬ážá á¡á áááºá¡ááá¯ááºážáá»á¬áž áá¯á¶ážááŸá¯á¶ážááœá¬ážáááºááŒá áºáááºá
ááŒá¬ážáá¶ááᯠáááºážáááºážááŸá áºáá»áá¯ážááŒáá·áº ááá¯ážááŒáŸáá·áºááá¯ááºáááº- áááºážá á®ááŸá á¡ááœááºáá áºáá¯á á®á á¡ááœááºá¡á á¬ážááᯠááá¯ážááŒáŸáá·áºááŒááºážááŒáá·áº ááá¯á·ááá¯áẠáááºážá á®ááœááºááŸáááá¯ááºááá·áº á¡ááá¯ááºážá¡áá±á¡ááœááºááᯠááá¯ážááŒáŸáá·áºááá¯ááºáááºá
á¡áááºá áááºááẠá¡áá¯á¶ážá¡ááœááºá¡á á¬áž chunk_limit_size ááᯠ32 megabytes áááºááá¯á áááºááŸááºáá«áá ElasticSeacrh ááẠáááºáá¬áá±á¬ áááºáá±á·áá»áºááẠá¡ááœááºááŒá®ážáá±á¬ááŒá±á¬áá·áº áááºážááᯠáááºáá¶áááºááá¯ááºáá«á ááá¯á·ááŒá±á¬áá·áºá á¡áááºá áááºááẠááŒá¬ážáá¶á¡á¬áž áááºáá¶ááá¯ážááŒáŸáá·áºááẠááá¯á¡ááºáá«áá á¡áá»á¬ážáá¯á¶áž áááºážá á®á¡ááŸáẠqueue_limit_length ááᯠááá¯ážááŒáŸáá·áºááŒááºážááẠááá¯áá±á¬ááºážáá«áááºá
ááŒá¬ážáá¶ááẠááŒáá·áºáá»áŸá¶áá±ááŒááºážááᯠáááºááá·áºááá¯ááºááŒá®áž ááá¯á¶áá±á¬ááºáá±á¬ á¡áá»áááºáá¯ááºáá¯á¶ážááŸá¯áᬠáá»ááºááŸááá±áá±á¬á¡áá«á áááºááẠáá±á¬ááºážááá¯ááŸá¯_á¡áá»áááºáá¯áẠááá·áºáááºáá±á¬ááºááᯠá áááºááá¯ááºáááºá ááá¯á·áá±á¬áºá áááºááẠá áá¹ááá·áº 20 áááºááá¯áá±á¬áááºááá¯ážááᯠáááºááŸááºáá«áá á¡á±á¬ááºáá«ááááá±ážáá»ááºáá»á¬ážááᯠFluentd ááŸááºáááºážáá»á¬ážááœáẠá áááºáá±á«áºáá¬áá«áááº-
2020-01-21 09:55:33 +0000 [warn]: [test-dev] buffer flush took longer time than slow_flush_log_threshold: elapsed_time=20.85753920301795 slow_flush_log_threshold=20.0 plugin_id="postgresql-dev"
á€áááºáá±á·áá»áºááẠá áá áºááá¯ááºáá±á¬ááºáá»ááºááᯠáááºááá·áºáááºážááŸáá·áºáá»áŸ áááááá¯ááºá á±áá²á slow_flush_log_threshold ááá·áºáááºáá±á¬ááºáá±á¬ááºá០áááºááŸááºáá¬ážáááºááẠááá¯ááŒá¬ááá·áºááŒá¬ážáá¶á¡áá»áááºááᯠááá¯ááá¯áá«áááºá áááºážááẠá¡ááŸá¬ážááŸá¬ááŒááºááá·áº á¡áá»ááºá¡áááºááŒá áºááŒá®áž áá±á¬ááºážááá¯ááŸá¯_á¡áá»áááºáá¯áẠááá·áºáááºáá±á¬ááºá áááºááá¯ážááᯠááœá±ážáá»ááºááá·áºá¡áá« áááºážááᯠáá»áœááºá¯ááºááá¯á· á¡áá¯á¶ážááŒá¯áá«áááºá
áá±áá°áá»á¡á¬ážááŒáá·áº ááœá±ážáá»ááºááŸá¯ algorithm ááŸá¬ á¡á±á¬ááºáá«á¡ááá¯ááºážááŒá áºááẠá
- áá±á¬ááºážááá¯ááŸá¯_á¡áá»áááºááᯠááá¯á¡ááºáááºááẠááá¯ááŒá®ážáááºáᯠá¡á¬ááá¶áá¬ážáá±á¬áááºááá¯áž (á áá¹ááá·áºáá¬ááŸáá·áºáá»á®) áááºááŸááºáá«á á áá áºááá·áºááœááºážá ááºááœááºá á€ááá·áºáááºáá»ááºá ááŸááºáááºáá±á¬áááºáááºá¡ááœáẠá¡áááá á¶áááºááŸááºáá»ááºááŸá¬ á¡áá»áááºáá¯ááºááœá¬ážááŒááºážáááŸáááá·áºá¡ááœáẠááááá±ážáá»ááºáá»á¬áž áá»á±á¬ááºáá¯á¶ážááœá¬ážáááºááŒá áºáááºá
- slow_flush_log_threshold áááºááŸááºáá»ááºáááºáá»á±á¬áºááœááºááá·áº áááºáá±á·áá»áºáá»á¬ážááᯠá á±á¬áá·áºáá«á elapsed_time á¡ááœááºááŸá ááááá±ážá á¬áá¬ážááẠááŒá¬ážáá¶ááŸááºážáááºážáá¬ážááá·áºá¡áá»áááºááŸáá·áºáááŒá±ážáá®ááŒááááºááŒá áºáááºá
- á á°ážá ááºážáá±á·áá¬áá±ážáá¬áááœáẠáááŸááá±á¬ á¡áá»á¬ážáá¯á¶áž ááŒá¬ááŒáá·áºáá»áááºáááºááá¯ážááẠáá±á¬ááºážááá¯ááŸá¯_á¡áá»áááºááᯠáááºááŸááºáá«á áá±á¬ááºážááá¯ááŸá¯_á¡áá»áááºáá¯ááºáááºááá¯ážááᯠelapsed_time + 50% á¡ááŒá Ạááœááºáá»ááºáá«áááºá
- ááŸááºáááºážá០ááŸááºáá»á¬ážáá±á¬ ááŒá¬ážáᶠááŸáá¯ááºážáá»á¬ážá¡ááŒá±á¬ááºáž ááááá±ážáá»ááºáá»á¬ážááᯠáááºááŸá¬ážáááºá áááºááẠslow_flush_log_threshold á áááºááá¯ážááᯠááŒáŸáá·áºáááºááá¯ááºáááºá á€áááºááá¯ážááᯠelapsed_time + 25% á¡ááŒá Ạááœááºáá»ááºáá«áááºá
á¡á á±á¬ááá¯ááºážááœááºáá±á¬áºááŒáá¬ážááá·áºá¡ááá¯ááºážá á€ááá·áºáááºáá»ááºáá»á¬ážááá±á¬ááºáá¯á¶ážáááºááá¯ážáá»á¬ážááᯠá¡ááŸá¯áá áºáá¯á á®á¡ááœáẠáá áºáŠážáá»ááºážáááŸááá¬ážáá«áááºá á¡áááºáá±á¬áºááŒáá« á¡ááºáááá¯áá®áááºááᯠááá¯ááºáá¬ááŒááºážááŒáá·áºá áááºáá«ááá²áá² áááºáá±á·áá»áºáá»á¬ážáá®ááá¯á· áŠážáááºá á±áá±á¬ á¡ááŸá¬ážááᯠáááºááŸá¬ážáá áºááẠáá»áœááºá¯ááºááá¯á· á¡á¬ááá¶áá«áááºá
á¡á±á¬ááºááœááºáá±á¬áºááŒáá¬ážáá±á¬ááá¬ážááẠáááºáá±á·áá»áºáá»á¬ážáááºááœá¬ážááŒááºážááá¯ááŒá áºá á±ááŒá®áž áá áºáá±á·áá»áŸáẠá¡ááŸá¬ážá¡ááœááºážá¡áá±á¡ááœááºáááºáá»áŸááŸááááºááá¯ááŒááááºá á¡áááºááœááºáá±á¬áºááŒáá¬ážááá·áºáá±á¬ááºáá»á¬ážááááºááá¯ážáá»á¬ážááá¯ááœá±ážáá»ááºááŒááºážáá¯ááºáááºážá ááºááœááºááŒá±á¬ááºážáá²ááŸá¯áá»á¬ážááá¯ááŒááááº-
node-1
node-2
node-3
node-4
ááŸá®ááŒá®ážááŸ
ááŸá®ááŒá®ážááŸ
ááŸá®ááŒá®ážááŸ
ááŸá®ááŒá®ážááŸ
ááŒá¬ážáá¶ááᯠáá»ááºááááá«á
1749/2
694/2
47/0
1121/2
áááºá
ááºážááŒáá·áºáᬠá¡á±á¬ááºááŒááºáááºá
410/2
205/1
24/0
241/2
ááá±á¬áá»ááºááŒá®ážááœá¬ážáá¬áááºááŸáá·áºá¡áá»áŸ ááŸááºáááºážá¡áá±á¡ááœáẠááá¯ážáá¬áááºááŸáá·áºá¡áá»áŸ ááááºáááºáááºáá»á¬ážááẠáááºážááá¯á·ááááºá ááºááŸá¯ááᯠáá¯á¶ážááŸá¯á¶ážááœá¬ážááá¯ááºáááºááᯠáááááŒá¯ááá·áºáááºá á¡áá»áááºááá¯á¶áá±á¬ááºááŒááºážá á¡áááááá¹ááá¬ááŸá¬ slow_flush_log_threshold á¡ááá·áºáááºááŸááºáá»ááºááẠáá»á±á¬áºááœááºáá±ááŒááºážááŒá áºááŒá®ážá ááá¯ááá¯áááºááŸá¬ Fluentd ááŸááºáááºážááá¯á· ááŸááºáá»á¬ážáá±á¬ááŒá¬ážáᶠflush á¡ááŒá±á¬ááºáž áááºáá±á·áá»áºáá»á¬áž ááŒááºáá¬ááŒááºážáááºááŒá áºáááºá á€á¡áá»ááºááŸá áá áá±á¬ááºážááá¯ááŸá¯_á¡áá»áááºáá¯ááºáá¯á¶ážááŸá¯ ááá·áºáááºáá±á¬ááºááᯠááá»á±á¬áºááœááºáá® áá±ážáááºáá±á¬ á¡áá¬ážáááºáá áºáᯠááŸááá±áá«áá±ážáááºá ááá¯á·ááŒá±á¬áá·áº á€á á¬áá»á¬ážááᯠá¡áá»áááºááŸáá·áºáá áºááŒá±ážáá® áá¯á¶á·ááŒááºáááºááŸáá·áº á¡áááºááœááºáá±á¬áºááŒáá¬ážáá±á¬ á¡áá±á¬ááºážáá¯á¶ážáááºáááºáá»á¬ážááᯠááœá±ážáá»ááºááŒááºážáá¯ááºáááºážá ááºááᯠááŒááºáá¯ááºááẠááá¯á¡ááºáá«áááºá
áá±á¬ááºáá»ááº
Fluentd á¡ááœááºááŒá¬ážáá¶ááᯠáá±á¬ááºážá áœá¬áá»áááºááŸáááŒááºážááẠEFK stack ááᯠconfigure áá¯ááºááŒááºážá á¡áááá¡ááá·áºáá»á¬ážáá²á០áá áºáá¯ááŒá áºááŒá®áž áááºážááá¯ááºáá±á¬ááºáá»ááºá áááºááŒáááºááŸá¯ááŸáá·áº á¡ááœáŸááºážááááºážáá»á¬ážááœáẠá á¬ááœááºá á¬áááºážáá»á¬ážá ááŸááºáááºáá±á¬áá±áá¬áá»áá¬ážááŸá¯ááᯠáá¯á¶ážááŒááºááá·áº á¡áááá¡ááá·áºáá»á¬ážáá²ááŸáá áºáá¯ááŒá áºáááºá áá±á¬áºááŒáá¬ážáá±á¬ ááœá²á·á ááºážááŸá¯á áá Ạá¡ááºáááá¯áá®áááºááᯠá¡ááŒá±áá¶á ááŸááºáááºážáá»á¬ážá¡á¬ážáá¯á¶ážááᯠáááºáá«ááá²áá² ááá¯á·ááá¯áẠá¡ááŸá¯á¶ážáááŸááá² ElasticSearch á¡ááœáŸááºážááá¯á· ááŸááºáááºáá±á¬á¡á á®á¡á á¥áºááŒáá·áº áá±ážáá¬ážááŒá±á¬ááºáž áá±áá»á¬á á±ááá¯ááºáá«áááºá
áá»áœááºá¯ááºááá¯á·áááá±á¬á·ááºááŸá á¡ááŒá¬ážáá±á¬ááºážáá«ážáá»á¬ážááá¯áááºáž áááºáá«-
Go ááŸáá·áº Zabbix 5.0 ááẠáá°áááºáá»ááºážááŒá áºáá¬áááºá á¡áá¯ááºááá¯ááºáá² Kubernetes á¡á á¯á¡áá±ážááᯠá¡ááá·áºááŒáŸáá·áºáááºááŒááºážá Kubernetes- á áá áºá¡áááºážá¡ááŒá áºá á®áá¶ááá·áºááœá²ááŸá¯ááᯠá áááºáááºááŸááºááẠá¡áááºááŒá±á¬áá·áº á¡ááœááºá¡áá±ážááŒá®ážááááºážá Docker áá¯á¶áá»á¬ážááá¯áá»á¯á¶á·áááºááá¯ážááŸááºážáá±á¬ááŸáá·áºááœááºáá¯á¶ážáᯠááœá²ááŒá¬ážáá±á¬ áááºááá±á¬áá»ááºáá»á¬ážá áœá¬ááᯠá¡áááºááááºážááŒááºážá
source: www.habr.com