AWS 上的 Logstash + Elasticsearch 的多个实例

AWS 上的 Logstash + Elasticsearch 的多个实例

我已经设置了一个 Cloudformation 模板来启动安装了 Logstash 和 Elasticsearch(未嵌入)的实例。

我在 Logstash 上配置了标准 tcp 输入并将其输出到 Elasticsearch 集群。

当我启动多个实例时,所有 Elasticsearch 实例都会相互查找、选举主实例、同步等。问题是,当我执行以下操作时:

curl -XGET 'http://localhost:9200/_cluster/nodes?pretty=1'

主节点且仅主节点向我显示一个附加节点:

“8kLMLhP-RHGdgcYGlt3dEQ”:{
“名称”:“Bling”,
“传输地址”:“inet[/10.226.186.84:9301]”,
“主机名”:“ip-10-226-186-84”,
“版本”:“0.90.9”,
“属性”:{
“客户端”:“true”,
“数据”:“false”
}

这是在 9301 上运行的 logstash 实例。我不明白它为什么这样做。

答案1

http://logstash.net/docs/1.3.3/outputs/elasticsearch#protocol

默认情况下,logstash 使用协议“node”,以便与 Elasticsearch 通信。它还使实例被视为 ES 节点,但实际上并不存储数据。

使用“传输”协议强制使用“主机”变量,这似乎与集群不兼容。

因此我认为不可能从 ES 集群中删除 logstash 实例,尽管这是无害的。

相关内容