我从谷歌云市场安装了neo4j企业版,它可以从Kubernetes网络内部访问,但我想从不在同一网络上的外部应用程序访问它。遵循this guide from Neo4j,我可以使用端口转发来连接浏览器;
MY_CLUSTER_LEADER_POD=mygraph-neo4j-core-0
kubectl port-forward $MY_CLUSTER_LEADER_POD 7687:7687 7474:7474在用户指南中,他们建议我不应该在服务器端使用负载均衡器。我应该分别公开集群中的每个pod,并使用应用程序中的bolt+routing处理请求路由。本指南的Limitations部分对此进行了说明。
它应该是使用Nodeports公开的,但我无法正确地这样做。我试过这样做;
kubectl expose pod neo-cluster-neo4j-core-0 --port=7687 --name=neo-leader-pod但是我无法使用这个暴露的IP连接。我不擅长云技术,所以我不知道我做错了什么。
我通读了这篇文章Neo4j Considerations in Orchestration Environments,告诉我应该做什么,但不是怎么做。它假设对gcloud/kubernaties有先验知识。
有人能给我指引正确的方向吗?谢谢
发布于 2019-10-07 16:45:27
如果我没记错的话,您可以为neo4j企业创建一个GKE集群。
它在集群网络内部工作得很好,但不能在外部工作。
检查是否已打开这些端口的防火墙。
要创建规则或查看现有规则,请执行以下操作:
如果不存在,请转到cloud.google.com
查看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
:)
https://stackoverflow.com/questions/58144609
复制相似问题