【问题标题】:Logstash fails to stream data to ES - Elasticsearch appears to be unreachable or downLogstash 无法将数据流式传输到 ES - Elasticsearch 似乎无法访问或关闭
【发布时间】:2021-04-06 08:14:22
【问题描述】:

我遇到了一个非常令人沮丧的错误,我无法解决它。

我正在尝试使用 Logstash 将数据从 SQL Server 流式传输到 ES,但出现以下错误:

尝试向 elasticsearch 发送批量请求,但 Elasticsearch 似乎无法访问或关闭! {:error_message=>"Elasticsearch 无法访问: Elasticsearch 似乎无法访问或关闭

注意事项:

  1. 我注意到错误通常不是立即发生,而是在一段时间后(甚至可能是几个小时)后发生,流式处理在其中起作用。
  2. 集群结构由 3 台 ES 服务器组成。
  3. 貌似,上面提到的错误随机发生在集群的3台服务器之一中。

有人可以帮我解决这个问题吗?

谢谢!

【问题讨论】:

  • 您好,您的 SQL 服务器是安装了 SQL 的 AWS EC2 实例吗? SQL 服务器的操作系统是什么?您是否检查了 ElasticSearch 服务的安全组(如果 SQL 托管在一个中,则检查 EC2)以及 IP 是否允许?

标签: elasticsearch logstash elastic-stack elk


【解决方案1】:

由于没有立即发生,大约一会,尝试查找文件(假设您使用Linux)

/etc/sysctl.conf

像这样更改选项的值(您可能需要其他数字)

sysctl -w vm.max_map_count=262144

参考文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/vm-max-map-count.html

【讨论】:

  • 首先,谢谢!您是指 Logstash 服务器或 ES 服务器中的 sysctl.conf 文件吗?该文件包含以下内容: # sysctl 设置是通过 # /usr/lib/sysctl.d/、/run/sysctl.d/ 和 /etc/sysctl.d/ 中的文件定义的。 # # 供应商设置位于 /usr/lib/sysctl.d/ 中。 # 要覆盖整个文件,请在 # /etc/sysctl.d/ 中创建一个具有相同内容的新文件并将新设置放在那里。要覆盖 # 仅特定设置,请在 /etc/sysctl.d/ 中添加一个具有词法后 # 名称的文件并将新设置放在那里。 # # 更多信息请参见 sysctl.conf(5) 和 sysctl.d(5)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-11
  • 2019-02-06
  • 2018-09-03
  • 1970-01-01
  • 2018-03-21
  • 2013-11-21
相关资源
最近更新 更多