Skip to content

Latest commit

 

History

History
203 lines (146 loc) · 7.76 KB

README_zh-CN.md

File metadata and controls

203 lines (146 loc) · 7.76 KB

Nebula Graph Docker 部署


概述

在本文档中,我们将指导您使用 DockerDocker Compose 来部署 Nebula Graph 集群。我们将向您展示如何查看 Nebula Graph 的服务状态和端口,如何查看集群数据和日志, 以及如何停止 Nebula Graph 服务

前提条件

在开始部署 Nebula Graph 集群前,确保您已部署最新版本的 DockerDocker Compose

注意:如果您没有 Dockerroot 权限,请参考 如何设置 Docker 的 root 权限

要部署的 Nebula Graph 服务

在本指南中我们将部署以下 Nebula Graph 服务:

  • 3 副本 nebula-metad 服务
  • 3 副本 nebula-storaged 服务
  • 1 副本 nebula-graphd 服务

部署 Nebula Graph 集群

您可以通过以下命令部署 Nebula Graph 集群:

  1. nebula-docker-compose 库拷贝到您的本地电脑。
$ git clone https://github.com/vesoft-inc/nebula-docker-compose.git
  1. 把当前路径更改为 nebula-docker-compose 路径。
$ cd nebula-docker-compose/
  1. 启动所有 Nebula Graph 服务。
$ docker-compose up -d

显示以下信息表明服务已启动:

Creating nebula-docker-compose_metad2_1 ... done
Creating nebula-docker-compose_metad1_1 ... done
Creating nebula-docker-compose_metad0_1 ... done
Creating nebula-docker-compose_storaged2_1 ... done
Creating nebula-docker-compose_graphd_1    ... done
Creating nebula-docker-compose_storaged0_1 ... done
Creating nebula-docker-compose_storaged1_1 ... done
  1. vesoft/nebula-console:nightly 镜像下拉到您的本地电脑。
$ docker pull vesoft/nebula-console:nightly

国内从 Docker Hub 拉取镜像有时会遇到困难,此时可以配置加速镜像。例如:

对于 Linux 用户,请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件):

{
  "registry-mirrors": [
    "https://dockerhub.azk8s.cn",
    "https://reg-mirror.qiniu.com"
  ]
}

对于 macOS 用户,请点击任务栏中 Docker Desktop 图标 -> Preferences -> Daemon -> Registry mirrors。在列表中添加 https://dockerhub.azk8s.cnhttps://reg-mirror.qiniu.com。修改完成后,点击 Apply & Restart 按钮,重启 Docker。

注意

a. 我们将使用 nebula-console docker 容器来连接 Nebula Graph 的图服务。

b. 如果您之前拉取了 vesoft/nebula-console 镜像,使用以下命令先删除该镜像然后再拉取:

  • docker rm $(docker ps -qa -f status=exited) # cleanup exited containers
  • docker rmi vesoft/nebula-console:nightly

c. 如果您之前拉取了 Nebula Graph 镜像,您可以通过以下命令更新镜像:

$ docker-compose pull
  1. 连接到 Nebula Graph 的图服务。
$ docker run --rm -ti --network=host vesoft/nebula-console:nightly --addr=127.0.0.1 --port=3699

如果未开启权限管理开关,则使用默认用户和密码登录,此外无需指定;如果开启权限管理,则必须指定用户及密码。例如:

/usr/local/nebula/etc/nebula-graphd.conf 文件中的 enable_authorize 设置为 true 打开权限开关。此时需指定用户及密码进行连接。

$ docker run --rm -ti --network=host vesoft/nebula-console:nightly -u <user> -p <password> --addr=127.0.0.1 --port=3699

显示以下信息表明您已成功连接到 Nebula Graph

Welcome to Nebula Graph (Version 5d10861)

([email protected]) [(none)]>

注意: 现在您可以通过创建空间、tag、space 等操作来使用 Nebula Graph。 获取详细信息,请参考 快速入门

查看 Nebula Graph 服务状态和端口

您可以在终端输入以下命令把所有 Nebula Graph 服务以列表的形式显示出来并查看其暴露的端口:

$ docker-compose ps

显示以下信息:

Name                     Command                       State                                                   Ports
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
nebula-docker-compose_graphd_1      ./bin/nebula-graphd --flag ...   Up (health: starting)   0.0.0.0:32867->13000/tcp, 0.0.0.0:32866->13002/tcp, 3369/tcp, 0.0.0.0:3699->3699/tcp
nebula-docker-compose_metad0_1      ./bin/nebula-metad --flagf ...   Up (health: starting)   0.0.0.0:32865->11000/tcp, 0.0.0.0:32864->11002/tcp, 45500/tcp, 45501/tcp
nebula-docker-compose_metad1_1      ./bin/nebula-metad --flagf ...   Up (health: starting)   0.0.0.0:32863->11000/tcp, 0.0.0.0:32862->11002/tcp, 45500/tcp, 45501/tcp
nebula-docker-compose_metad2_1      ./bin/nebula-metad --flagf ...   Up (health: starting)   0.0.0.0:32861->11000/tcp, 0.0.0.0:32860->11002/tcp, 45500/tcp, 45501/tcp
nebula-docker-compose_storaged0_1   ./bin/nebula-storaged --fl ...   Up (health: starting)   0.0.0.0:32879->12000/tcp, 0.0.0.0:32877->12002/tcp, 44500/tcp, 44501/tcp
nebula-docker-compose_storaged1_1   ./bin/nebula-storaged --fl ...   Up (health: starting)   0.0.0.0:32876->12000/tcp, 0.0.0.0:32872->12002/tcp, 44500/tcp, 44501/tcp
nebula-docker-compose_storaged2_1   ./bin/nebula-storaged --fl ...   Up (health: starting)   0.0.0.0:32873->12000/tcp, 0.0.0.0:32870->12002/tcp, 44500/tcp, 44501/tcp

注意: 可以看到映射到 nebula-docker-compose_graphd_1 容器的 3699 的暴露端口是 3699。

查看集群数据和日志

Nebula Graph 的所有服务数据和日志分别存储在您本地目录 nebula-docker-compose/datanebula-docker-compose/logs

目录结构如下所示:

nebula-docker-compose/
  |-- docker-compose.yaml
  |-- data
  |     |- meta0
  |     |- meta1
  |     |- meta2
  |     |- storage0
  |     |- storage1
  |     `- storage2
  `-- logs
        |- meta0
        |- meta1
        |- meta2
        |- storage0
        |- storage1
        |- storage2
        `- graph

停止 Nebula Graph 服务

您可以通过以下命令停止 Nebula Graph 的服务:

$ docker-compose down -v

显示以下信息表明您已成功停止 Nebula Graph 服务:

Stopping nebula-docker-compose_storaged1_1 ... done
Stopping nebula-docker-compose_storaged0_1 ... done
Stopping nebula-docker-compose_graphd_1    ... done
Stopping nebula-docker-compose_storaged2_1 ... done
Stopping nebula-docker-compose_metad0_1    ... done
Stopping nebula-docker-compose_metad1_1    ... done
Stopping nebula-docker-compose_metad2_1    ... done
Removing nebula-docker-compose_storaged1_1 ... done
Removing nebula-docker-compose_storaged0_1 ... done
Removing nebula-docker-compose_graphd_1    ... done
Removing nebula-docker-compose_storaged2_1 ... done
Removing nebula-docker-compose_metad0_1    ... done
Removing nebula-docker-compose_metad1_1    ... done
Removing nebula-docker-compose_metad2_1    ... done
Removing network nebula-docker-compose_nebula-net

注意: 由于您的数据存储在您的本地电脑上,所以即使您停止 Nebula Graph 服务,数据也会保留在您的本地电脑。