gpt4 book ai didi

powershell - 无法访问 AWS 上的 ElasticSearch

转载 作者:行者123 更新时间:2023-12-03 00:17:56 33 4
gpt4 key购买 nike

我正在尝试在 powershell 中使用 curl 来访问 AWS 实例上的 elasticsearch,但没有成功。

我可以使用 putty 毫无问题地访问实例,并且可以使用 curl 'localhost:9200/_cat/health?v' 在 elasticsearch 上成功运行健康检查.我向 AWS 安全组添加了一条规则,以允许从我的 IP 向端口 9200 发出 TCP 请求,并将以下几行添加到 elasticsearch.yml 文件中:

http.enabled : true
http.cors.enabled : true
http.cors.allow-origin : "*"

我检查了 ip 表,看起来好像没有任何问题:
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpt:wap-wsp flags:FIN,SYN,RST,ACK/SYN
ACCEPT tcp -- anywhere anywhere tcp dpt:wap-wsp flags:FIN,SYN,RST,ACK/SYN

Chain FORWARD (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

我尝试使用 powershell 从我的 Windows 机器发送请求,这是请求和错误:
curl '*{awsPublicIP}*:9200/_cat/health?v'
curl : Unable to connect to the remote server
At line:1 char:1
+ curl '*{awsPublicIP}*:9200/_cat/health?v'
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-WebRequest], WebExc
eption
+ FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeWebRequestCommand

我也在chrome中试过这个,导致“连接被拒绝”错误:
http://*{AWSPublicIP}*:9200/_cat/health?v

我在启动 ssh 连接的实例时确实创建了一个 .pem 文件,我是否必须以某种方式包含它?我哪里错了?

最佳答案

默认情况下,ES 只监听 loopback 接口(interface)。
请阅读 ES 文档中的这篇文章:

https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-network.html

我有同样的问题,我通过编辑 elasticsearch.yml 文件解决了这个问题。
只需取消注释带有“network.host”的行并将其更改为:
网络主机:_eth0_
当 eth0 是您想要用于连接到 ES 的所需 NIC 时。

关于powershell - 无法访问 AWS 上的 ElasticSearch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34383539/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com