logstash를 Docker로 이동하여 Elastic Cloud에 데이터를 업로드해 봅니다.
4423 단어 ElasticsearchLogstash
환경
환경: Elasticsearch는 Elastic Cloud 사용
logstash: 7.9.1
metricbeat: 7.9.1
Elastic Cloud는 설정이 끝난 것으로 한다.
Cloud Id, 패스워드도 메모가 끝난 것으로 한다.
각 기능의 관계는 이런 느낌
logstash 이미지 획득
아래에서 최신 이미지의 경로 확인
logstash | Docker @ Elastic
글을 쓸 때 최신이 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로 데이터를 전송하도록 설정을 변경한다.
대상의 색인 이름을 확인합니다.
Endpoint에 다음과 같은 Get을 던져라.
Get
https://xxxxxxxxxxx42b7b40a0773f8801e.us-east-1.aws.found.io:9243/_cat/indices?v
logstash.conf 추가
logstash.conf에 다음과 같은 내용으로 한다.
logstash.confinput {
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의 HOME 화면에서 Visualize and Explore Data → Metrics를 선택
Host Metrics 선택
이런 식으로 표시되면 성공
Reference
이 문제에 관하여(logstash를 Docker로 이동하여 Elastic Cloud에 데이터를 업로드해 봅니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/sugasaki/items/7c049ffde482fde41130
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
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
#output.elasticsearch:
# Array of hosts to connect to.
# hosts: ["localhost:9200"]
output.logstash:
# The Logstash hosts
hosts: ["localhost:5044"]
./metricbeat -e
{
"@timestamp" => 2020-09-22T04:31:06.525Z,
"event" => {
"module" => "system",
"duration" => 74705442,
"dataset" => "system.process"
},
"service" => {
"type" => "system"
},
"metricset" => {
"name" => "process",
"period" => 10000
},
省略
Get
https://xxxxxxxxxxx42b7b40a0773f8801e.us-east-1.aws.found.io:9243/_cat/indices?v
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"
}
}
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의 HOME 화면에서 Visualize and Explore Data → Metrics를 선택
Host Metrics 선택
이런 식으로 표시되면 성공
Reference
이 문제에 관하여(logstash를 Docker로 이동하여 Elastic Cloud에 데이터를 업로드해 봅니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/sugasaki/items/7c049ffde482fde41130텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)