部署 StudioGraph
本文介绍如何在本地通过 Docker、RPM 和 tar 包部署 Studio。
Note
用户也可以在 Graph 在线试用部分功能。
Docker 部署 StudioGraph
前提条件Graph
在部署 Docker 版 Studio 之前,用户需要确认以下信息:
- NebulaGraph 服务已经部署并启动。详细信息,参考Graph。
- 在即将运行 Docker 版 Studio 的机器上安装并启动 Docker Compose。详细信息参考 Graph。
-
确保在安装开始前,以下端口处于未被使用状态。
端口号 说明 7001 Studio提供的web服务 8080 Nebula-http-gateway,Client的HTTP服务 5699 Nebula importer文件导入工具,数据导入服务
-
(可选)在中国大陆从 Docker Hub 拉取 Docker 镜像的速度可能比较慢,用户可以使用
registry-mirrors
参数配置加速镜像。例如,如果要使用 Docker 中国区官方镜像、网易镜像和中国科技大学的镜像,则按以下格式配置registry-mirrors
参数:{ "registry-mirrors": [ "https://registry.docker-cn.com", "http://hub-mirror.c.163.com", "https://docker.mirrors.ustc.edu.cn" ] }
配置文件的路径和方法因操作系统和/或 Docker Desktop 版本而异。详细信息参考 Graph。
操作步骤Graph
在命令行工具中按以下步骤依次运行命令,部署并启动 Docker 版 Studio,这里我们用 NebulaGraph 版本为 2.5 的进行演示:
-
下载 Studio 的部署配置文件。
安装包 NebulaGraph版本 Graph 2.5.0 -
创建
nebula-graph-studio-v3
目录,并将安装包解压至目录中。mkdir nebula-graph-studio-v3 && tar -zxvf nebula-graph-studio-v3.tar.gz -C nebula-graph-studio-v3
-
解压后进入
nebula-graph-studio-v3
目录。cd nebula-graph-studio-v3
-
拉取 Studio 的 Docker 镜像。
docker-compose pull
-
构建并启动 Studio 服务。其中,
-d
表示在后台运行服务容器。docker-compose up -d
当屏幕返回以下信息时,表示 Docker 版 Studio 已经成功启动。
Creating docker_importer_1 ... done Creating docker_client_1 ... done Creating docker_web_1 ... done Creating docker_nginx_1 ... done
-
启动成功后,在浏览器地址栏输入
http://ip address:7001
。Note
在运行 Docker 版 Studio 的机器上,用户可以运行
ifconfig
或者ipconfig
获取本机 IP 地址。如果使用这台机器访问 Studio,可以在浏览器地址栏里输入http://localhost:7001
。如果在浏览器窗口中能看到以下登录界面,表示已经成功部署并启动 Studio。
RPM 部署 StudioGraph
前提条件Graph
在部署 RPM 版 Studio 之前,用户需要确认以下信息:
- NebulaGraph 服务已经部署并启动。详细信息,参考Graph。
-
使用的 Linux 发行版为 CentOS ,安装有 lsof 和版本为 v10.16.0 + 以上的 Graph。
Note
node
及npm
命令需要安装在/usr/bin/
目录下,以防出现 RPM 安装时 node 命令找不到的情况。 例如nodejs12默认目录为/opt/rh/rh-nodejs12
,用户可以使用以下命令建立软连接:$ sudo ln -s /opt/rh/rh-nodejs12/root/usr/bin/node /usr/bin/node $ sudo ln -s /opt/rh/rh-nodejs12/root/usr/bin/npm /usr/bin/npm
-
确保在安装开始前,以下端口处于未被使用状态。
端口号 说明 7001 Studio提供web服务使用。 8080 Nebula HTTP Gateway Client进行HTTP通信使用。 5699 Nebula Importer导入数据导入使用。
安装Graph
-
根据需要选择并下载RPM包,建议选择最新版本。常用下载链接如下:
安装包 检验和 Nebula版本 Graph Graph 2.5.0 -
使用
sudo rpm -i <rpm>
命令安装RPM包。例如,安装Studio 3.0.0 版本需要运行以下命令:
$ sudo rpm -i nebula-graph-studio-3.0.0-1.x86_64.rpm
当屏幕返回以下信息时,表示 PRM 版 Studio 已经成功启动。
egg started on http://0.0.0.0:7001 nohup: 把输出追加到"nohup.out" --- START OF NEBULA IMPORTER --- [INFO] httpserver.go:80: Starting http server on 5699
-
启动成功后,在浏览器地址栏输入
http://ip address:7001
。如果在浏览器窗口中能看到以下登录界面,表示已经成功部署并启动 Studio。
卸载Graph
用户可以使用以下的命令卸载 Studio。
$ sudo rpm -e nebula-graph-studio-3.0.0-1.x86_64
异常处理Graph
如果在安装过程中自动启动失败或是需要手动启动或停止服务,请使用以下命令
- 手动启动服务
$ bash /usr/local/nebula-graph-studio/scripts/start.sh
- 手动停止服务
$ bash /usr/local/nebula-graph-studio/scripts/stop.sh
如果启动服务时遇到报错报错 ERROR: bind EADDRINUSE 0.0.0.0:7001,用户可以通过以下命令查看端口7001是否被占用。
$ lsof -i:7001
如果端口被占用,且无法结束该端口上进程,用户可以通过以下命令修改Studio服务启动端口,并重新启动服务。
//修改studio服务启动端口
$ vi config/config.default.js
//修改
...
config.cluster = {
listen: {
port: 7001, // 修改这个端口号,改成任意一个当前可用的即可
hostname: '0.0.0.0',
},
};
...
//重新启动npm
$ npm run start
tar 包部署 StudioGraph
前提条件Graph
在部署 tar 包安装的 Studio 之前,用户需要确认以下信息:
- NebulaGraph 服务已经部署并启动。详细信息,参考Graph。
- 使用的 Linux 上安装有版本为 v10.12.0 以上的 Node.js。
-
确保在安装开始前,以下端口处于未被使用状态。
端口号 说明 7001 Studio提供的web服务 8080 Nebula-http-gateway,Client的HTTP服务 5699 Nebula importer文件导入工具,数据导入服务
安装Graph
-
根据需要下载 tar 包,建议选择最新版本。
安装包 Studio 版本 Graph 3.0.0 -
使用
tar -xvf
解压 tar 包。tar -xvf nebula-graph-studio-3.0.0-1.x86_64.tar.gz
部署Graph
Note
根目录 nebula-graph-studio 下一共有三安装包:nebula-graph-studio,nebula-importer 和 nebula-http-gateway。用户需要在同一台机器上分别部署并启动服务,才能完成 Studio 的部署。
-
部署 nebula-importer 并启动。
$ cd nebula-importer $ ./nebula-importer --port 5699 --callback "http://0.0.0.0:7001/api/import/finish" &
-
部署 nebula-http-gateway 并启动。
$ cd nebula-http-gateway $ nohup ./nebula-httpd &
-
部署 nebula-graph-studio 并启动。
$ cd nebula-graph-studio $ npm run start
4.启动成功后,在浏览器地址栏输入 http://ip address:7001
。
如果在浏览器窗口中能看到以下登录界面,表示已经成功部署并启动 Studio。
停止服务Graph
用户可以采用 kill pid
的方式来关停服务:
$ kill $(lsof -t -i :5699) # stop nebula-importer
$ kill $(lsof -t -i :8080) # stop nebula-http-gateway
$ cd nebula-graph-studio
$ npm run stop # stop nebula-graph-studio
后续操作Graph
进入 Studio 登录界面后,用户需要连接 NebulaGraph。详细信息,参考Graph。