跳转至

安装 BR

本文介绍裸机部署情况下的 BR 安装。对于在 K8s Operator 中 BR 的部署,参见 K8s 中的 br

安装说明

使用 BR 工具备份和恢复 NebulaGraph 时,需要安装 NebulaGraph Agent 服务。Agent 是集群中每台机器的一个守护进程,用于启停 NebulaGraph 服务和上传、下载备份文件。BR 工具和 Agent 插件的安装方式如下文。

版本兼容性

NebulaGraph 社区版 BR 社区版 Agent
3.3.0 ~ 3.4.x 3.3.0 3.4.0、0.2.0
3.0.x ~ 3.2.x 0.6.1 0.1.0 ~ 0.2.0

安装 BR

使用二进制文件安装

  1. 下载 BR。

    wget https://github.com/vesoft-inc/nebula-br/releases/download/v3.3.0/br-3.3.0-linux-amd64
    
  2. 修改文件名称为br

    sudo mv br-3.3.0-linux-amd64 br
    
  3. 授予 BR 执行权限。

    sudo chmod +x br
    
  4. 执行./br version查看 BR 版本。

    [nebula-br]$ ./br version
    Nebula Backup And Restore Utility Tool,V-3.3.0
    

使用源码安装

使用源码安装 BR 前,准备工作如下:

  • 安装 Go 1.14.x 或更新版本。
  • 安装 make。
  1. 克隆nebula-br库至机器。

    git clone https://github.com/vesoft-inc/nebula-br.git
    
  2. 进入br目录。

    cd nebula-br
    
  3. 编译 BR。

    make
    

用户可以在命令行输入bin/br version,如果返回以下内容,则认为编译成功。

[nebula-br]$ bin/br version
NebulaGraph Backup And Restore Utility Tool,V-3.3.0

安装 Agent

NebulaGraph Agent 以二进制形式存在各个机器的安装目录中,通过 RPC 协议对 BR 工具提供服务。

每台机器中,进行以下操作:

  1. 下载 Agent。

    wget https://github.com/vesoft-inc/nebula-agent/releases/download/v3.4.0/agent-3.4.0-linux-amd64
    
  2. 修改 Agent 的名称为agent

    sudo mv agent-3.4.0-linux-amd64 agent
    
  3. 授予 Agent 可执行权限。

    sudo chmod +x agent
    
  4. 执行以下命令启动 Agent。

    Note

    启动 Agent 前,确保已经启动集群中的 Meta 服务,并且 Agent 有对应 NebulaGraph 服务目录和备份目录的读写权限。

    sudo nohup ./agent --agent="<agent_node_ip>:8888" --meta="<metad_node_ip>:9559" > nebula_agent.log 2>&1 &
    
    • --agent:Agent 所在机器的 IP 地址和访问端口。
    • --meta:集群中任一 Meta 服务所在机器的 IP 地址和访问端口。
    • --ratelimit:可选项,限制文件上传和下载的速度,防止带宽被占满导致其他服务不可用。单位:Bytes。

    例如:

    sudo nohup ./agent --agent="192.168.8.129:8888" --meta="192.168.8.129:9559" --ratelimit=1048576 > nebula_agent.log 2>&1 &
    

    Caution

    --agent配置的 IP 地址需要和配置文件中 Meta 和 Storage 服务的地址格式保持一致,即都使用真实 IP 地址或者都使用127.0.0.1,否则 Agent 无法启动。

  5. 连接服务并查看 Agent 的运行状态。

    nebula> SHOW HOSTS AGENT;
    +-----------------+------+----------+---------+--------------+---------+
    | Host            | Port | Status   | Role    | Git Info Sha | Version |
    +-----------------+------+----------+---------+--------------+---------+
    | "192.168.8.129" | 8888 | "ONLINE" | "AGENT" | "96646b8"    |         |
    +-----------------+------+----------+---------+--------------+---------+  
    

常见问题

报错E_LIST_CLUSTER_NO_AGENT_FAILURE

如果操作过程中遇见E_LIST_CLUSTER_NO_AGENT_FAILURE错误,可能是由于 Agent 服务没有启动或者 Agent 服务没有被注册至 Meta 服务。首先执行SHOW HOSTS AGENT查看集群上所有节点的 Agent 服务的状态,当时状态显示为OFFLINE时表示注册 Agent 失败, 然后检查启动 Agent 服务的命令中的--meta参数是否正确。


最后更新: September 4, 2023