首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Neo4j集群:将Neo4j集群暴露给外部世界

Neo4j集群:将Neo4j集群暴露给外部世界
EN

Stack Overflow用户
提问于 2019-09-28 16:24:36
回答 1查看 122关注 0票数 1

我从谷歌云市场安装了neo4j企业版,它可以从Kubernetes网络内部访问,但我想从不在同一网络上的外部应用程序访问它。遵循this guide from Neo4j,我可以使用端口转发来连接浏览器;

代码语言:javascript
复制
MY_CLUSTER_LEADER_POD=mygraph-neo4j-core-0
kubectl port-forward $MY_CLUSTER_LEADER_POD 7687:7687 7474:7474

在用户指南中,他们建议我不应该在服务器端使用负载均衡器。我应该分别公开集群中的每个pod,并使用应用程序中的bolt+routing处理请求路由。本指南的Limitations部分对此进行了说明。

它应该是使用Nodeports公开的,但我无法正确地这样做。我试过这样做;

代码语言:javascript
复制
kubectl expose pod neo-cluster-neo4j-core-0 --port=7687 --name=neo-leader-pod

但是我无法使用这个暴露的IP连接。我不擅长云技术,所以我不知道我做错了什么。

我通读了这篇文章Neo4j Considerations in Orchestration Environments,告诉我应该做什么,但不是怎么做。它假设对gcloud/kubernaties有先验知识。

有人能给我指引正确的方向吗?谢谢

EN

回答 1

Stack Overflow用户

发布于 2019-10-07 16:45:27

如果我没记错的话,您可以为neo4j企业创建一个GKE集群。

它在集群网络内部工作得很好,但不能在外部工作。

检查是否已打开这些端口的防火墙。

要创建规则或查看现有规则,请执行以下操作:

如果不存在,请转到cloud.google.com

  • Go to my Console

  • Choose your

  • Choose Networking > VPC network

  • 选择防火墙规则创建规则。

  • 要将规则应用于选择虚拟机实例,请选择目标>指定的目标标签,并在目标标签中输入标签的名称。此标记将用于将新的防火墙规则应用到您想要的任何实例上。然后,确保实例应用了网络标记。要允许到端口7687的传入TCP连接,请在“协议和端口”中输入tcp:7687

  • Click

查看GKE文档以获得更好的线索:

https://cloud.google.com/solutions/prep-kubernetes-engine-for-prod

https://cloud.google.com/kubernetes-engine/docs/how-to/network-policy

https://cloud.google.com/kubernetes-engine/docs/how-to/exposing-apps

:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58144609

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档