Java使用storage client连接不上,metad端口ping不通

  • nebula 版本:3.1.0
  • 部署方式:阿里云
  • 安装方式: Docker
  • 是否上生产环境:N
  • 硬件信息
    • SSD
  • 问题的具体描述:无法访问metad容器的端口,后发现为云端部署问题,使用nebula operator进行部署,服务中metad和storaged没有external ip和内网ip

    e9dff3a26743c3215fc2e2ba08a6c68
    abb23573065b776dffbeb5e203b439f

你的数据库是用的阿里云的,然后 java 客户端是安装在服务器 / 本地,是这样么?

看你的截图配置不是 docker ,而是 k8s operator 部署,meta 和 storage 默认没有暴露出来,可以创建service暴露(注意,meta storage 是有状态的,必须每一个 instance 单独暴露一个

参考:https://gist.github.com/wey-gu/699b9a2ef5dff5f0fb5f288d692ddfd5

另外,当前 storage client 是从 meta 里获取 storage host list,如果 java client 需要访问,还需要用 dns 或者反向代理让它走一样的域名才行,参考 为什么我的 Nebula-Spark-Connector、Nebula-Algorithm 连不上 K8s 部署的 Nebula Graph 集群? - siwei.io

如果可以,把 java client 跑在同一个 k8s 集群(网络命名空间)里会方便很多

cc @MuYi 这里我们的 storage 客户端行为可以考虑改进一下,允许从外部地址访问,或者定义外部和内部地址对应关系

cc @nicole

1 个赞

好的谢谢

此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。