将数据直接从 Filebeats 推送到 AWS ES 托管服务
Push data directly from Filebeats to AWS ES managed service
我的问题是我正在尝试将数据从 Filebeat 流式传输到 AWS ElasticSearch。
我通过在 beats 输出条目中提供 AWS 端点来解决这个问题。
80 端口和 443 端口都试过了,没用。
我检查了 this post,据此我认为可以直接推送到 AWS,但仍然不知道如何操作。
如果你们中的任何人都经历过这个并且可以阐明一些问题,那将非常有帮助!
谢谢!
原来是权限问题。
确保 filebeat 尝试流式传输的日志具有与 filebeat.yml 相同的权限。
您可以简单地向两个文件发出 chmod 777。
最后,确保在 AWS ES 端点之后添加 :443。
我使用的是 7.10 版本的 Filebeat 和 Logstash。
帮我很多。
步骤如下:
Open filebeat.yml in any editor of your choice from location
/etc/filebeat/ on Linux or
C:\Program Files\filebeat-7.10.0 on windows
filebeat:
inputs:
– paths:
– E:/nginx-1.20.1/logs/.log
input_type: log
filebeat.config.modules:
enabled: true
path: ${path.config}/modules.d/*.yml
output:
logstash:
hosts: [“localhost:5044”]
Logstash Configuration
input {
beats {
port => 5044
ssl => false
}
}
filter {
grok {
match => [ “message” , “%{COMBINEDAPACHELOG}+%{GREEDYDATA:extra_fields}”]
overwrite => [ “message” ]
}
mutate {
convert => [“response”, “integer”]
convert => [“bytes”, “integer”]
convert => [“responsetime”, “float”]
}
geoip {
source => “clientip”
target => “geoip”
add_tag => [ “nginx-geoip” ]
}
date {
match => [ “timestamp” , “dd/MMM/YYYY:HH:mm:ss Z” ]
remove_field => [ “timestamp” ]
}
useragent {
source => “agent”
}
}
output {
elasticsearch {
hosts => [“https://arun-learningsubway-ybalglooophuhyjmik3zmkmiq4.ap-south-1.es.amazonaws.com:443”]
index => “arun_nginx”
document_type => “%{[@metadata][type]}”
user => “myusername”
password => “mypassword”
manage_template => false
template_overwrite => false
ilm_enabled => false
}
}
我的问题是我正在尝试将数据从 Filebeat 流式传输到 AWS ElasticSearch。
我通过在 beats 输出条目中提供 AWS 端点来解决这个问题。
80 端口和 443 端口都试过了,没用。
我检查了 this post,据此我认为可以直接推送到 AWS,但仍然不知道如何操作。
如果你们中的任何人都经历过这个并且可以阐明一些问题,那将非常有帮助!
谢谢!
原来是权限问题。
确保 filebeat 尝试流式传输的日志具有与 filebeat.yml 相同的权限。
您可以简单地向两个文件发出 chmod 777。
最后,确保在 AWS ES 端点之后添加 :443。
我使用的是 7.10 版本的 Filebeat 和 Logstash。
帮我很多。
步骤如下:
Open filebeat.yml in any editor of your choice from location
/etc/filebeat/ on Linux or
C:\Program Files\filebeat-7.10.0 on windows
filebeat:
inputs:
– paths:
– E:/nginx-1.20.1/logs/.log
input_type: log
filebeat.config.modules:
enabled: true
path: ${path.config}/modules.d/*.yml
output:
logstash:
hosts: [“localhost:5044”]
Logstash Configuration
input {
beats {
port => 5044
ssl => false
}
}
filter {
grok {
match => [ “message” , “%{COMBINEDAPACHELOG}+%{GREEDYDATA:extra_fields}”]
overwrite => [ “message” ]
}
mutate {
convert => [“response”, “integer”]
convert => [“bytes”, “integer”]
convert => [“responsetime”, “float”]
}
geoip {
source => “clientip”
target => “geoip”
add_tag => [ “nginx-geoip” ]
}
date {
match => [ “timestamp” , “dd/MMM/YYYY:HH:mm:ss Z” ]
remove_field => [ “timestamp” ]
}
useragent {
source => “agent”
}
}
output {
elasticsearch {
hosts => [“https://arun-learningsubway-ybalglooophuhyjmik3zmkmiq4.ap-south-1.es.amazonaws.com:443”]
index => “arun_nginx”
document_type => “%{[@metadata][type]}”
user => “myusername”
password => “mypassword”
manage_template => false
template_overwrite => false
ilm_enabled => false
}
}