安装 BR¶
本文介绍裸机部署情况下的 BR 安装。
安装说明¶
使用 BR 工具备份和恢复 NebulaGraph 时,需要安装 NebulaGraph Agent 服务。Agent 是集群中每台机器的一个守护进程,用于启停 NebulaGraph 服务和上传、下载备份文件。BR 工具和 Agent 插件的安装方式如下文。
版本兼容性¶
NebulaGraph | BR 社区版 | Agent |
---|---|---|
3.5.x ~ 3.6.0 | 3.6.0 | 3.6.x ~ 3.7.0 |
3.3.0 ~ 3.4.x | 3.3.0 | 0.2.0 ~ 3.4.0 |
3.0.x ~ 3.2.x | 0.6.1 | 0.1.0 ~ 0.2.0 |
安装 BR¶
使用二进制文件安装¶
-
下载 BR。
wget https://github.com/vesoft-inc/nebula-br/releases/download/v3.6.0/br-3.6.0-linux-amd64
-
修改文件名称为
br
。sudo mv br-3.6.0-linux-amd64 br
-
授予 BR 执行权限。
sudo chmod +x br
-
执行
./br version
查看 BR 版本。[nebula-br]$ ./br version Nebula Backup And Restore Utility Tool,V-3.6.0
使用源码安装¶
使用源码安装 BR 前,准备工作如下:
- 安装 Go 1.14.x 或更新版本。
- 安装 make。
-
克隆
nebula-br
库至机器。git clone https://github.com/vesoft-inc/nebula-br.git
-
进入
br
目录。cd nebula-br
-
编译 BR。
make
用户可以在命令行输入bin/br version
,如果返回以下内容,则认为编译成功。
[nebula-br]$ bin/br version
NebulaGraph Backup And Restore Utility Tool,V-3.6.0
安装 Agent¶
NebulaGraph Agent 以二进制形式存在各个机器的安装目录中,通过 RPC 协议对 BR 工具提供服务。
在每台机器中,进行以下操作:
-
下载 Agent。
wget https://github.com/vesoft-inc/nebula-agent/releases/download/v3.7.0/agent-3.7.0-linux-amd64
-
修改 Agent 的名称为
agent
。sudo mv agent-3.7.0-linux-amd64 agent
-
授予 Agent 可执行权限。
sudo chmod +x agent
-
执行以下命令启动 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 地址,否则 Agent 无法启动。 -
连接服务并查看 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
参数是否正确。