我正在尝试将 JSON 文件(263 MB)添加到 elasticsearch 中。我已经使用 Kibana 创建了该文件的映射,现在我正在尝试将其添加到弹性搜索中。我正在 PowerShell 中运行此命令。
C:\Users\Khan> Invoke-RestMethod "http://localhost:9200/mysofindex/_bulk?pretty" -Method Post -ContentType 'application/x-ndjson' -InFile "output.json"
但这给了我一个错误。像这样的:
Invoke-RestMethod : The remote server returned an error: (413) Request Entity Too Large.
At line:1 char:1
+ Invoke-RestMethod "http://localhost:9200/mysofindex/_bulk?pretty" -Me ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-RestMethod], WebE
xception
+ FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeRestMethodCommand
请告诉我如何解决这个问题?
您需要更改
http.max_content_length
中的设置 elasticsearch.yml
,默认值为 100 mb,您需要在配置文件中添加您想要的值并重新启动您的 elasticsearch 节点。
在我们的例子中,我们达到了 AWS openseach 集群中数据节点的网络限制。如果您的数据节点有 10MiB 的限制,可以升级节点以获得更高的限制(100MiB)。
来源 - https://docs.aws.amazon.com/opensearch-service/latest/developerguide/limits.html#network-limits