AWS EC2 の Elasticsearch クラスターに出力するように logstash を構成するのに問題があります。
Logstash バージョン 1.1.5 と Elasticsearch 1.19.8 を使用しています。
これは、logstash での私の出力構成です。
output {
stdout { debug => true debug_format => "json"}
elasticsearch {
cluster => "logstash-searcher"
node_name => "logstash-indexer"
}
}
これはelasticsearch.ymlの対応する構成です
cluster.name: logstash-searcher
path.data: /usr/local/elasticsearch/data
path.work: /usr/local/elasticsearch/tmp
path.logs: /usr/local/elasticsearch/logs
path.plugins: /usr/local/elasticsearch/plugins
bootstrap.mlockall: true
cloud.aws.region: eu-west-1
cloud.aws.access_key: --
cloud.aws.secret_key: --
discovery.type: ec2
discovery.ec2.host_type: public_ip
discovery.ec2.groups: elasticsearch
gateway.type: s3
gateway.s3.bucket: es-logstash
transport.tcp.port: 9300-9400
以下を使用してlogstashを開始します。
java -jar logstash-1.1.5-monolithic.jar agent -f shipper.conf
そして、起動してからしばらくすると、次のエラーが発生します。
Failed to index an event, will retry {:exception=>org.elasticsearch.discovery.MasterNotDiscoveredException: waited for [1m],
私の疑いでは、logstash は、elasticsearch クライアントがクラスターを見つけることができるように、cloud-aws のようなものを使用する必要があります。awsで動作する設定例はありますか?