Nebula-CentOS安装与部署

本文参考、提取自Nebula Graph Database官方文档(https://docs.nebula-graph.com.cn/2.6.0)

1.前期准备

环境

· nebula版本:2.6.0
· 主机:CentOS7 64位
· 内存:8GB
· 处理器数量:4
· 处理器内核数:4
· 处理器内核总数:16
· 硬盘:30GB,SSD

硬件要求

· CPU架构:x86_64
· 内存:4GB
· 硬盘:10GB,SSD

软件

软件名称 版本 备注
glibc 2.17及以上 执行ldd --version检查版本
make 任意稳定版本 -
m4 任意稳定版本 -
git 任意稳定版本 -
wget 任意稳定版本 -
unzip 任意稳定版本 -
xz 任意稳定版本 -
redline-devel 任意稳定版本 -
ncurses-devel 任意稳定版本 -
zlib-devel 任意稳定版本 -
gcc 7.5.0及以上 执行命令gcc -v检查版本
gcc-c++ 任意稳定版本 -
cmake 3.9.0及以上 执行命令cmake --version检查版本
gettext 任意稳定版本 -
curl 任意稳定版本 -
redhat-lsb-core 任意稳定版本 -
libstdc++-static 任意稳定版本 仅在CentOS 8+、RedHat 8+、Fedora中需要
libasan 任意稳定版本 仅在CentOS 8+、RedHat 8+、Fedora中需要
bzip2 任意稳定版本 -

需要保证gcccmake的版本足够高,其他第三方软件将在安装(cmake)阶段自动下载并安装到build目录中

2.安装编译

1.安装依赖包

1
$ yum update
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$ yum install -y make \
m4 \
git \
wget \
unzip \
xz \
readline-devel \
ncurses-devel \
zlib-devel \
gcc \
gcc-c++ \
cmake \
gettext \
curl \
redhat-lsb-core \
bzip2
1
$ yum install -y libstdc++-static libasan

安装完成后检查主机的g++cmake版本

1
2
$ g++ --version
$ cmake --version

如果cmakeg++的版本不够,可以先到github克隆nebula仓库

1
2
$ git clone --branch v2.6.0 https://github.com/vesoft-inc/nebula.git
$ cd nebula

执行命令安装cmakeg++

1
2
3
$ ./third-party/install-cmake.sh cmake-install
$ source cmake-install/bin/enable-cmake.sh
$ sudo mkdir /opt/vesoft && sudo chmod -R a+w /opt/vesoft

1
2
$ ./third-party/install-gcc.sh --prefix=/opt
$ source /opt/vesoft/toolset/gcc/7.5.0/enable

最后执行脚本install-third-party.sh

1
$ ./third-party/install-third-party.sh

编译源码

在github克隆nebula仓库后,创建build目录并进入

1
$ mkdir build && cd build

使用cmake生成makefile文件

1
$ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/nebula -DENABLE_TESTING=OFF -DCMAKE_BUILD_TYPE=Release ..

进行编译,为了提高速度,-j参数(并行数量)为min(CPU核数,内存/2),这里选择8/2=4

1
$ make -j4

安装nebula graph

1
$ sudo make install

一切完成以后,来到默认的/usr/local/nebula/etc目录下,将配置文件(nebula-graph.conf.defaultnebula-metad.conf.defaultnebula-storaged.conf.default)后缀的.default删除,即使用默认的配置文件

3.启动Nebula Graph服务端

启动Nebula Graph

直接进行启动、查看状态和关闭服务的命令:

1
2
3
$ sudo /usr/local/nebula/scripts/nebula.service start all
$ sudo /usr/local/nebula/scripts/nebula.service status all
$ sudo /usr/local/nebula/scripts/nebula.service stop all

连接Nebula Graph

进入nebula console下载界面https://github.com/vesoft-inc/nebula-console/releases,找到对应的2.6.0版本,点击Assets找到linux版本,这里选择nebula-console-linux-amd64-v2.6.0


1
$ wget https://github.com/vesoft-inc/nebula-console/releases/download/v2.6.0/nebula-console-linux-amd64-v2.6.0

将下载好的nebula-console-linux-amd64-v2.6.0重命名为nebula-console

为用户授予nebula-console文件的执行权限

1
$ chmod 111 nebula-console

来到nebula-console所在目录下,执行命令连接nebula graph,其中参数分别对应ip地址、服务端的端口号(9669)、nebula用户名和密码

1
$ ./nebula-console -addr 192.168.80.128 -port 9669 -u root -p nebula

成功后进入到nebula console控制台界面(需要提前启动nebula graph)


可以通过console控制台执行命令,进行数据库的查看、编辑等


最后通过exit或者quit命令退出nebula console控制台

4.Nebula Graph Studio客户端

nebula graph studio是一款可以通过 Web 访问的图数据库开源可视化工具,搭配 nebula graph 内核使用,能够提供构图、数据导入、编写 nGQL 查询、图探索等一站式服务

nebula graph studio 版本发布节奏独立于 nebula graph 内核,其命名方式也不参照内核命名的规则,目前仅支持 x86_64 架构

前期准备

· 需要启动nebula graph服务

· 使用的Linux发行版为CentOS,安装有lsof和版本为v10.16.0及以上的Node.js

· 确保7001和8080端口处于未被占用的状态

下载最新版本的node.js:

进入node.js官网,选择linux下64位版本


1
$ wget https://nodejs.org/dist/v16.15.1/node-v16.15.1-linux-x64.tar.xz

下载到本地以后解压缩,将文件重命名为nodejs16,

1
2
$ tar xf  node-v16.15.1-linux-x64.tar.xz
$ mv node-v16.15.1-linux-x64 nodejs16

配置软连接,将nodejs16映射到usr/bin下,使全局可以使用node.js

1
2
$ ln -s /root/nodejs16/bin/node   /usr/bin/ 
$ ln -s /root/nodejs16/bin/npm /usr/bin/

最后可以查看node.js的版本,确认安装完成

1
$ /usr/bin/node -v

安装和部署nebula graph studio

1
2
$ https://oss-cdn.nebula-graph.com.cn/nebula-graph-studio/3.1.0/nebula-graph-studio-3.1.0.x86_64.rpm
$ sudo rpm -i nebula-graph-studio-3.1.0.x86_64.rpm

成功后显示[egg-scripts] egg started on http://0.0.0.0:7001说明客户端正常启动了



刷入前面接口要调用到的数据


要手动关闭和启动服务,可以执行

1
2
$ bash /usr/local/nebula-graph-studio/scripts/rpm/start.sh
$ bash /usr/local/nebula-graph-studio/scripts/rpm/stop.sh

windows访问客户端

查看虚拟机状态,关闭虚拟机防火墙,禁止防火墙的开机启动

1
2
3
$ service iptables status
$ systemctl stop firewalld.service
$ systemctl disable firewalld.service

在浏览器中进入虚拟机本地ip,进入图库,可以检索到前面插入的数据

自启动

进入系统相关配置文件,写入自启动命令和脚本

1
$ vim /etc/rc.d/rc.local

写入启动命令

1
2
3
#nebula-graph
sudo /usr/local/nebula/scripts/nebula.service start all
bash /usr/local/nebula-graph-studio/scripts/rpm/start.sh

Powered by Hexo and Hexo-theme-hiker

Copyright © 2017 - 2024 青域 All Rights Reserved.

UV : | PV :