gpt4 book ai didi

python - 如何插入托管在 Google Clouds (bitnami) 上的 Elasticsearch

转载 作者:行者123 更新时间:2023-11-28 17:29:14 25 4
gpt4 key购买 nike

抱歉,我是 Google Clouds 和 Elasticsearch 的新手,但我没有找到任何关于此的文档。基本上,我们只是使用 Bitnami 在 Google Clouds 上部署了一个 Elasticsearch 节点。但是我无法用 Python 连接到它。我为下面的代码尝试了很多不同的公式(主机是谷歌云节点外部 IP,用户和密码是 Bitnami 要求连接到我的应用程序的)。有人可以让我知道它来自哪里以及正确的语法是什么吗?

from elasticsearch import Elasticsearch

connection_parameters = [{'host': 'http://104.196.x.x', 'port': 80}]
es = Elasticsearch(connection_parameters, http_auth=('user', 'password'))
print(es.info())

这里是错误:

elasticsearch.exceptions.ConnectionError: ConnectionError(<urllib3.connection.HTTPConnection object at 0x7f72e757a090>: Failed to establish a new connection: [Errno -2] Name or service not known) caused by: NewConnectionError(<urllib3.connection.HTTPConnection object at 0x7f72e757a090>: Failed to establish a new connection: [Errno -2] Name or service not known)

非常感谢你能帮我解决这个问题!

最佳答案

看起来问题出在 Google Compute Engine 上的防火墙规则上。您需要明确允许从 Google 外部到您的 ES 节点的流量。

您可以使用 Google Cloud SDK [1] 创建新的防火墙规则:

gcloud compute firewall-rules create allow-traffic-to-es --allow tcp:80,tcp:443 --source-ranges 0.0.0.0/0 --target-tags es

请注意,此规则将允许从 (0.0.0.0/0) 到您的 ElasticSearch 集群的流量,因此您可以实现更严格的 CIDR 范围。

[1] Google Cloud SDK

关于python - 如何插入托管在 Google Clouds (bitnami) 上的 Elasticsearch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35778651/

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