请教 Nebula Graph 2.0 Docker Compose 安装问题

  • nebula 版本:Nebula Graph 2.0
  • 部署方式(分布式 / 单机 / Docker / DBaaS):Docker
  • 硬件信息
    • 磁盘( 必须为 SSD ,不支持 HDD) 150G SSD
    • CPU、内存信息:8 Intel(R) Xeon(R) CPU E5-4603 v2 @ 2.20GHz
  • 问题的具体描述
    按照官网nebula-docker-compose/README_zh-CN.md at master · vesoft-inc/nebula-docker-compose · GitHub
    执行安装步骤,在第4步连接到 Nebula Graph 时报异常:
    Could not get IPs: lookup graphd on 127.0.0.11:53: no such host

1.docker、docker compose、代码版本 如下图:
1

2.如下图中,按照官方命令执行会报异常:Could not get IPs: lookup graphd on 127.0.0.11:53: no such host ,尝试把ip与端口换成给的提示信息时 又会报认证的错误,根据官网的说明 默认情况下不会开启身份认证的。

docker-compose.yaml文件没有改动过.内容如下:

version: ‘3.4’
services:
metad0:
image: vesoft/nebula-metad:v2-nightly
environment:
USER: root
TZ: “${TZ}”
command:
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
- --local_ip=metad0
- --ws_ip=metad0
- --port=9559
- --ws_http_port=19559
- --data_path=/data/meta
- --log_dir=/logs
- --v=0
- --minloglevel=0
healthcheck:
test: [“CMD”, “curl”, “-sf”, “http://metad0:19559/status”]
interval: 30s
timeout: 10s
retries: 3
start_period: 20s
ports:
- 9559
- 19559
- 19560
volumes:
- ./data/meta0:/data/meta
- ./logs/meta0:/logs
networks:
- nebula-net
restart: on-failure
cap_add:
- SYS_PTRACE

metad1:
image: vesoft/nebula-metad:v2-nightly
environment:
USER: root
TZ: “${TZ}”
command:
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
- --local_ip=metad1
- --ws_ip=metad1
- --port=9559
- --ws_http_port=19559
- --data_path=/data/meta
- --log_dir=/logs
- --v=0
- --minloglevel=0
healthcheck:
test: [“CMD”, “curl”, “-sf”, “http://metad1:19559/status”]
interval: 30s
timeout: 10s
retries: 3
start_period: 20s
ports:
- 9559
- 19559
- 19560
volumes:
- ./data/meta1:/data/meta
- ./logs/meta1:/logs
networks:
- nebula-net
restart: on-failure
cap_add:
- SYS_PTRACE

metad2:
image: vesoft/nebula-metad:v2-nightly
environment:
USER: root
TZ: “${TZ}”
command:
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
- --local_ip=metad2
- --ws_ip=metad2
- --port=9559
- --ws_http_port=19559
- --data_path=/data/meta
- --log_dir=/logs
- --v=0
- --minloglevel=0
healthcheck:
test: [“CMD”, “curl”, “-sf”, “http://metad2:19559/status”]
interval: 30s
timeout: 10s
retries: 3
start_period: 20s
ports:
- 9559
- 19559
- 19560
volumes:
- ./data/meta2:/data/meta
- ./logs/meta2:/logs
networks:
- nebula-net
restart: on-failure
cap_add:
- SYS_PTRACE

storaged0:
image: vesoft/nebula-storaged:v2-nightly
environment:
USER: root
TZ: “${TZ}”
command:
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
- --local_ip=storaged0
- --ws_ip=storaged0
- --port=9779
- --ws_http_port=19779
- --data_path=/data/storage
- --log_dir=/logs
- --v=0
- --minloglevel=0
depends_on:
- metad0
- metad1
- metad2
healthcheck:
test: [“CMD”, “curl”, “-sf”, “http://storaged0:19779/status”]
interval: 30s
timeout: 10s
retries: 3
start_period: 20s
ports:
- 9779
- 19779
- 19780
volumes:
- ./data/storage0:/data/storage
- ./logs/storage0:/logs
networks:
- nebula-net
restart: on-failure
cap_add:
- SYS_PTRACE

storaged1:
image: vesoft/nebula-storaged:v2-nightly
environment:
USER: root
TZ: “${TZ}”
command:
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
- --local_ip=storaged1
- --ws_ip=storaged1
- --port=9779
- --ws_http_port=19779
- --data_path=/data/storage
- --log_dir=/logs
- --v=0
- --minloglevel=0
depends_on:
- metad0
- metad1
- metad2
healthcheck:
test: [“CMD”, “curl”, “-sf”, “http://storaged1:19779/status”]
interval: 30s
timeout: 10s
retries: 3
start_period: 20s
ports:
- 9779
- 19779
- 19780
volumes:
- ./data/storage1:/data/storage
- ./logs/storage1:/logs
networks:
- nebula-net
restart: on-failure
cap_add:
- SYS_PTRACE

storaged2:
image: vesoft/nebula-storaged:v2-nightly
environment:
USER: root
TZ: “${TZ}”
command:
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
- --local_ip=storaged2
- --ws_ip=storaged2
- --port=9779
- --ws_http_port=19779
- --data_path=/data/storage
- --log_dir=/logs
- --v=0
- --minloglevel=0
depends_on:
- metad0
- metad1
- metad2
healthcheck:
test: [“CMD”, “curl”, “-sf”, “http://storaged2:19779/status”]
interval: 30s
timeout: 10s
retries: 3
start_period: 20s
ports:
- 9779
- 19779
- 19780
volumes:
- ./data/storage2:/data/storage
- ./logs/storage2:/logs
networks:
- nebula-net
restart: on-failure
cap_add:
- SYS_PTRACE

graphd:
image: vesoft/nebula-graphd:v2-nightly
environment:
USER: root
TZ: “${TZ}”
command:
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
- --port=9669
- --ws_ip=graphd
- --ws_http_port=19669
- --log_dir=/logs
- --v=0
- --minloglevel=0
depends_on:
- metad0
- metad1
- metad2
healthcheck:
test: [“CMD”, “curl”, “-sf”, “http://graphd:19669/status”]
interval: 30s
timeout: 10s
retries: 3
start_period: 20s
ports:
- “9669:9669”
- 19669
- 19670
volumes:
- ./logs/graph:/logs
networks:
- nebula-net
restart: on-failure
cap_add:
- SYS_PTRACE

graphd1:
image: vesoft/nebula-graphd:v2-nightly
environment:
USER: root
TZ: “${TZ}”
command:
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
- --port=9669
- --ws_ip=graphd1
- --ws_http_port=19669
- --log_dir=/logs
- --v=0
- --minloglevel=0
depends_on:
- metad0
- metad1
- metad2
healthcheck:
test: [“CMD”, “curl”, “-sf”, “http://graphd1:19669/status”]
interval: 30s
timeout: 10s
retries: 3
start_period: 20s
ports:
- 9669
- 19669
- 19670
volumes:
- ./logs/graph1:/logs
networks:
- nebula-net
restart: on-failure
cap_add:
- SYS_PTRACE

graphd2:
image: vesoft/nebula-graphd:v2-nightly
environment:
USER: root
TZ: “${TZ}”
command:
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
- --port=9669
- --ws_ip=graphd2
- --ws_http_port=19669
- --log_dir=/logs
- --v=0
- --minloglevel=0
depends_on:
- metad0
- metad1
- metad2
healthcheck:
test: [“CMD”, “curl”, “-sf”, “http://graphd2:19669/status”]
interval: 30s
timeout: 10s
retries: 3
start_period: 20s
ports:
- 9669
- 19669
- 19670
volumes:
- ./logs/graph2:/logs
networks:
- nebula-net
restart: on-failure
cap_add:
- SYS_PTRACE

networks:
nebula-net:

nebula服务已经启动起来了么?docker-compose ps是什么信息?

另外,v2版本的端口号是9669,把3699=>9699试试

如图所示 状态都是Restarting 并且端口换成了9699或9669 都不行

下面补一张启动的图

这样看还没启动起来,没有输出什么日志么?

我用的磁盘是 sas ,跟这个没关系吧 另外没有任何日志输出.
9

你可以看看 docker-compose logs -f graphd 查看一下 docker 的日志输出看什么报错?同时也看看 metad/storaged 的 docker 日志。

1 个赞

这里怎么报没有权限呀??

容器中对应的 log 文件是映射的本地的 ./logs 目录,你可以查看对应目录的权限是什么?

$ ls -al ./logs

因为我看你用的系统用户是 root,但是 docker 容器内部也是用的 root,理论上应该是有权限的。

你使用的 linux 系统的发行版是什么?

我这里是个虚拟机 CentOS

21

换了个物理机就可以了,看来是不支持

虚拟机

你说明一下你的虚拟机是通过什么软件起的吗?或者怎么做的虚拟化?

因为我们内部用 PVE 的 kvm 开的虚拟机是验证过的。不知道你那边是怎么开的虚拟机?VirtualBox 还是其他的什么?

通过 vmware 来做的虚拟机

好的,后续我们内部验证一下。:slight_smile:

@Shinji-IkariG @George

1 个赞

我使用VirtualBox创建虚拟机,同样也出现这种错误。

请提供物理机docker和docker compose版本截图。
我们目前使用基于kvm技术的虚拟化环境,测试下来是没问题的。
关于vmware环境,我需要在我的个人电脑上进行测试,请耐心等待下

能否提供虚拟机内docker和docker compose版本?

Docker version 20.10.1, build 831ebea
docker-compose version 1.27.4, build 40524192

能否提供docker network ls命令执行的结果