nebula-http-gateway不定时的宕机

提问参考模版:

  • nebula 版本:3.0.1
  • 部署方式:分布式
  • 安装方式: RPM
  • 是否为线上版本: N
  • 硬件信息
    • 磁盘( 推荐使用 SSD)
    • CPU、内存信息
  • 问题的具体描述
    使用nebula-http-gateway调用api,比如/api/db/connect、/api/db/exec、/api/db/disconnec的api,但是nebula-httpd的服务总是不定时的宕机,也很简单如下:
> 2022/04/03 00:21:38.502 [I] [main.go:94]  server is shutting down
> 2022/04/03 00:21:38.502 [C] [app.go:231]  ListenAndServe:  http: Server closed
> 2022/04/03 00:21:38.503 [I] [main.go:110]  server closed
1 个赞

宕机前有执行什么接口调用么,另外是不是以类似 ./nebula-httpd 这种非后台的方式启动服务,然后服务器 ssh 退出了

1 个赞

没任何接口的时候也会宕机,nohup的启动方式的,nebula-http-gateway的安装方式是下载tar包,按照github上的方式安装的,图片中是4月4日的日志记录,启动一分钟后就宕机了

哪个版本的 tar 包呢,我本地复现下试试。启动时候做过什么配置,是不是 example-config.yaml 里做了自定义配置

最新版的nebula-http-gateway,单独部署的这个,这里面没有example-config.yaml 这个配置文件吧???

哦哦,我以为你是在 studio 里出现宕机
那 nohup 后面有带 & 后台形式启动 (nohup ./nebula-httpd & )么,没有的话是不是有类似 control + c 这种退出或者登出服务器的操作

studio是用的3.2.3版本的,这个版本没nebula-http-gateway吧,启动后肯定是没有类型ctrl+c的操作的

部署在哪,虚拟机还是本机

centos 7 虚拟机

换一台虚拟机可以复现吗,我本地没复现出来。具体启动命令是啥。还有 app 下的配置有做什么修改

这个故障出现没啥规律,宕机后昨天早上启动,下午六点又宕机了,后面有合适的时间换虚拟机试试看。启动命令是: nohup ./nebula-http-gateway-2.2.0/nebula-httpd &;app.conf的配置文件的sessionkey改成这个样子了sessionkey = “nsid”;其他没改

studio 3.2.3中是没gateway网关模块了吧?如果是:集群方式部署了三台的数据库,怎么部署nebula-http-gateway实现http方式访问数据库???

宕机的问题我们再尝试复现下。studio 3.2.3 已经在二进制的 server 文件里内置了用 golang 开发的 server 模块,里面引用了 gateway。所以无需再部署独立的 gateway了,启动 server 即可

1、server中引用的gateway怎么使用?2、尝试用studio的7001端口以api的方式去访问数据库,需要Authorization授权,这个头部token参数怎么获取

直接访问 server 就可以了。authorization 授权就是在 header 里添加 Authorization 字段,值为 Bearer ${Base64.encode(${username}:${password})}, 具体可以看 studio 的登录逻辑代码

但是我刚才试了几个错误的密码都能登录,你可以试试看

那是你的 nebula 内核没有开启用户验证,这里的用户名密码是由内核验证的,studio 或者 server 端只是隐藏了明文传递

studio的中的gateway有提供释放session的api吗???

disconnect 就是呀

数据库部署在三个服务器,其中一台有安装studio,有使用studio中的http接口查询数据,安装studio这台服务的graph节点会出现宕机,graph宕机与studio有没有关系?studio会把请求转发到其他的节点么?