nebulaGraph集群安装部署
mkdir nebula
[root@bigData03 nebula]# pwd
/home/dockerinstall/nebula
wget https://github.com/vesoft-inc/nebula/releases/download/v3.8.0/nebula-graph-3.8.0.el7.x86_64.rpm wget https://github.com/vesoft-inc/nebula/releases/download/v3.8.0/nebula-graph-3.8.0.el7.x86_64.rpm.sha256sum.txt
安装 RPM 包
在每台机器上执行:
bash
sudo rpm -ivh nebula-graph-3.8.0.el7.x86_64.rpm
⚙️ 第二步:修改三台机器的配置文件
配置文件目录:/usr/local/nebula/etc/
每台机器都要修改这三个文件:
nebula-metad.confnebula-storaged.confnebula-graphd.conf
改的效果如下:
vim nebula-metad.conf
1.meta_server_addrs(三台机器完全一致)
text
--meta_server_addrs=192.168.1.243:9559,192.168.1.247:9559,192.168.1.248:9559
2.local_ip(每台机器填自己的 IP)
| 机器 | --local_ip填写 |
|---|---|
| 192.168.1.243 | --local_ip=192.168.1.243 |
| 192.168.1.247 | --local_ip=192.168.1.247 |
| 192.168.1.248 | --local_ip=192.168.1.248 |
提醒:三个配置文件里都要改,
meta_server_addrs三台必须一模一样,local_ip各填各的。
🚀 第三步:按顺序启动
在三台机器上,依次执行(建议先全部启动 metad,再全部启动 storaged,最后全部启动 graphd):
bash
# 1. 三台都启动 metad sudo /usr/local/nebula/scripts/nebula.service start metad # 2. 三台都启动 storaged sudo /usr/local/nebula/scripts/nebula.service start storaged # 3. 三台都启动 graphd sudo /usr/local/nebula/scripts/nebula.service start graphd
检查状态:
bash
sudo /usr/local/nebula/scripts/nebula.service status all
下载 Nebula Console
wget https://ghproxy.net/https://github.com/vesoft-inc/nebula-console/releases/download/v3.8.0/nebula-console-linux-amd64-v3.8.0
chmod +x nebula-console-linux-amd64-v3.8.0 ./nebula-console-linux-amd64-v3.8.0 -addr 192.168.1.247 -port 9669 -u root -p nebula
用 nebula-console 连接任意一台 graphd(比如连本机 9669),执行注册命令:
sql
ADD HOSTS "192.168.1.243":9779,"192.168.1.247":9779,"192.168.1.248":9779;
注册完成后,再执行SHOW HOSTS;确认三台 storaged 都变成ONLINE。
下一步:创建图空间验证
在 console 里执行以下命令,创建一个测试图空间:
sql
CREATE SPACE IF NOT EXISTS test_space (vid_type = FIXED_STRING(32));
等几秒让分区分配完成,再执行:
sql
SHOW HOSTS;
这时你应该能看到Leader count不再为 0,Partition distribution也会显示分区分布。
----------------------------------------
Web 可视化工具(NebulaGraph Studio)
# 用华为云镜像加速拉取(国内速度快)
docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/vesoft/nebula-graph-studio:v3.10.0
# 打标签为官方名称
docker tag swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/vesoft/nebula-graph-studio:v3.10.0 vesoft/nebula-graph-studio:v3.10.0
docker-compose.yml
cd /home/dockerinstall/nebula
docker compose up -d
version: '3.3' services: web: image: vesoft/nebula-graph-studio:v3.10.0 container_name: nebula-graph-studio ports: - "7001:7001" volumes: - ./conf:/usr/local/nebula-graph-studio/conf restart: on-failureNebulaGraph Studio
MATCH (n) RETURN n LIMIT 20;
MATCH (f:Fault)-[r:repair_by]->(rp:Repair)
RETURN f, r, rp LIMIT 20
MATCH (d:Device)-[r:has_component]->(c:Component)
RETURN d, r, c LIMIT 10
MATCH (f:Fault)-[r:repair_by]->(rp:Repair)
RETURN f.name, r, rp.name LIMIT 10