logstash をDockerで動かして、Elastic Cloudへデータをアップロードしてみる
環境
環境:ElasticsearchはElastic Cloudを使用
logstash: 7.9.1
metricbeat: 7.9.1
Elastic Cloudは設定済みとする。
Cloud Id、パスワードもメモ済みとする。
各機能の関係性はこんな感じです
logstashイメージ取得
以下から最新のイメージのパスを確認
執筆時、最新が7.9.1でした。
docker pull docker.elastic.co/logstash/logstash:7.9.1
起動
docker run --rm -it -p 5044:5044 docker.elastic.co/logstash/logstash:7.9.1
以下が表示されてたら成功
[2020-09-22T02:58:20,563][INFO ][logstash.agent ] Successfully started Logstash API endpoint {:port=>9600}
起動確認
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b8867b83444c docker.elastic.co/logstash/logstash:7.9.1 "/usr/local/bin/dock…" 7 minutes ago Up 7 minutes 0.0.0.0:5044->5044/tcp, 9600/tcp heuristic_mestorf
Metricbeat
Elastic Cloudへデータをアップロードするデータ元をMetricbeatで作成し、Logstashへ送る
Download Metricbeat
Download Metricbeat • Ship Metrics to Elasticsearch | Elastic
metricbeat.ymlの編集
elasticsearchをコメントアウトし、logstashを有効にする
#output.elasticsearch:
# Array of hosts to connect to.
# hosts: ["localhost:9200"]
output.logstash:
# The Logstash hosts
hosts: ["localhost:5044"]
metricbeat.ymlの実行
./metricbeat -e
logstashの確認
logstash側に以下のように表示されたら、metricbeat -> logstashへデータが送信されています。
{
"@timestamp" => 2020-09-22T04:31:06.525Z,
"event" => {
"module" => "system",
"duration" => 74705442,
"dataset" => "system.process"
},
"service" => {
"type" => "system"
},
"metricset" => {
"name" => "process",
"period" => 10000
},
省略
Logstash設定変更
デフォルトでは受信したデータを、標準出力へ出力するだけなので、Elastic Cloudへデータを送信するように設定を変更する。
送信先のIndex名を調べる。
Endpointに以下のようなGetを投げる
Get
https://xxxxxxxxxxx42b7b40a0773f8801e.us-east-1.aws.found.io:9243/_cat/indices?v
logstash.confの追加
logstash.confに以下のような内容にする。
input {
beats {
port => 5044
}
}
output {
elasticsearch {
hosts => ["https://xxxxxxxxxxx42b7b40a0773f8801e.us-east-1.aws.found.io:9243"]
user => "elastic"
password => "xxxxxxxxxxxxxxxxxxxxx"
index => "metricbeat-7.9.1-2020.09.22-000001"
}
}
logstashを再度起動
docker run --rm -it -p 5044:5044 -v /Users/xxxxx/Documents/Logstash:/usr/share/logstash/pipeline/ docker.elastic.co/logstash/logstash:7.9.1
Kibanaで確認
KibanaのHOME画面から、Visualize and Explore Data → Metricsを選択
Host Metricsを選択
こんな感じで表示されれば成功
Author And Source
この問題について(logstash をDockerで動かして、Elastic Cloudへデータをアップロードしてみる), 我々は、より多くの情報をここで見つけました https://qiita.com/sugasaki/items/7c049ffde482fde41130著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .