elasticsearch,Amazon Ec2,Lucene,elasticsearch" /> elasticsearch,Amazon Ec2,Lucene,elasticsearch" />

Amazon ec2 批量查找ES瓶颈(附上bigdesk屏幕截图)

Amazon ec2 批量查找ES瓶颈(附上bigdesk屏幕截图),amazon-ec2,lucene,elasticsearch,Amazon Ec2,Lucene,elasticsearch,更新:注意长帖子 在我做大并转移到一个更大的服务器之前,我想知道这台服务器有什么问题 这是AWS(EC2)中elasticsearch服务器的MVP。两个micro-s,每个只有600mb内存 我想了解这个配置有什么问题。正如您所看到的,在bulk命令中存在瓶颈。操作系统内存非常满,堆内存仍然很低,尽管进程CPU以最大值运行,但操作系统CPU很低 我降低了批量提要中每个文档的复杂性,并将不需要的字段设置为不索引。下面的截图是我最后一次尝试 这是I/O瓶颈吗?我将数据存储在S3存储桶中 服务器

更新:注意长帖子

在我做大并转移到一个更大的服务器之前,我想知道这台服务器有什么问题

这是AWS(EC2)中elasticsearch服务器的MVP。两个micro-s,每个只有600mb内存

我想了解这个配置有什么问题。正如您所看到的,在bulk命令中存在瓶颈。操作系统内存非常满,堆内存仍然很低,尽管进程CPU以最大值运行,但操作系统CPU很低

我降低了批量提要中每个文档的复杂性,并将不需要的字段设置为不索引。下面的截图是我最后一次尝试

这是I/O瓶颈吗?我将数据存储在S3存储桶中

服务器信息: 2个节点(每台服务器一个),每个节点有3个索引,运行2个碎片和1个副本。所以它是一个主节点,有一个正在运行的备份节点。奇怪的是,“钢铁侠”节点从未接管碎片

我使用上述集群状态再次运行馈线,瓶颈似乎出现在两个节点上:

以下是进料器的开始:

初级

二级(二级有瓶颈):


喂食5分钟后:

Primary(现在Primary遇到了瓶颈)

中学(现在中学更好):


我使用的是py elasticsearch,因此请求会在拖缆中自动限制。但是,在下面的大瓶颈之后,它抛出了以下错误:

elasticsearch.exceptions.ConnectionError: 
ConnectionError(HTTPConnectionPool(host='IP_HERE', port=9200): 
Read timed out. (read timeout=10)) caused by: 
ReadTimeoutError(HTTPConnectionPool(host='IP_HERE', port=9200): 
Read timed out. (read timeout=10))
下面是一个关于同一个“批量提要”的非常有趣的屏幕截图。队列达到了20个,python抛出了上面的表达式,
refresh
命令一直运行到我写这篇文章的时候


我的目标是了解哪个源(CPU、RAM、磁盘、网络…)不足以或更好地更有效地使用现有源。

您是否可以对要进行批量索引的索引运行,然后我们可以查看性能是否有所提高。我认为刷新率会降低性能,可能会对集群造成压力,从而导致问题。让我知道,我们可以解决这个问题。

因此Nate的脚本(以及其他脚本)缩短了刷新间隔。我还要补充一些其他发现:

刷新率给集群带来了压力,但我继续搜索,发现了更多的“错误”。其中一个问题是我有一个不推荐的。S3是持久的,但比EC2卷慢

我不仅将S3作为数据存储,而且在另一个区域(ec2 virginia->S3 oregon)。所以通过网络发送文件。我之所以这么说,是因为一些老教程将S3作为云数据存储选项

解决这个问题后,下面的“删除的文档”更好。当我使用S3时,它是30%。这是来自Elasticsearch HQ插件

现在我们已经优化了I/O。让我们看看还能做些什么

我发现CPU是个问题。虽然big desk说工作量很小,但t1.micro是。这意味着,尽管在图表CPU上,它并没有被充分利用,但这是因为Amazon每隔一段时间就对其进行节流,而实际上它们被充分利用了

如果你放一个大的更复杂的文档,它会给服务器带来压力


祝开发人员愉快。

您能提供更多关于集群的信息吗?节点、碎片和副本的数量?@Nate已更新。并提供了更多信息。确实是刷新率。非常感谢!附带问题:是否需要关闭索引,或者是否可以在索引之前和之后“热应用”设置?对于某些选项,关闭索引是必要的,我不记得现在如果更改查询,它会在堆栈跟踪上告诉您什么。很高兴我能帮忙:)