可以使用vbr工具将数据库备份到数据库集群以外的一个或多个机器上。


备份主机需要满足如下条件:

  • 有充足的备份空间;
  • 可以从数据库集群通过ssh访问;
  • 数据库超管账户(默认dbadmin)可以免密ssh访问;
  • 安装了Vertica rpmPython 3.7 和 rsync 3.0.5(或以上版本)
  • 如果使用了防火墙,配置tcp_keepalive_time和tcp_keepalive_intvl 设置,使其值小于防火墙超时时间。


在Db主机上配置TCP转发


vbr基于TCP转发来将数据库主机的连接转发到备份主机。
/etc/ssh/sshd_config  AllowTcpForwarding = Yes

为备份主机创建配置文件


在vbr备份数据库之前,必须准备备份目标文件夹。
使用vbr init来创建备份进程所需的各种清单。
init进程只需要执行一次, 然后Vertica会自动维护这些备份进程所需的清单(manifests )。

[dbadmin@vertica2 ~]$ vbr -t init -c full_backup_vdb2.ini
Initializing backup locations.
Backup locations initialized.

full_backup_vdb2.ini


预估备份主机磁盘需求

    => SELECT SUM(used_bytes) FROM storage_containers WHERE node_name='v_mydb_node0001'; 
    total_size 
    ------------
    302135743 




设置备份主机Accessible


源目标数据库节点和备份目标机器间必须允许ssh连接以及使用50000端口的rsync连接。
备份目标主机运行的rsync和Python版本必须和数据库主机上安装的相关软件版本一致。

设置SSH


为了使vbr可以访问备份主机,数据库超级账户(默认是dbadmin)必须满足两个要求:

  1. 在每个备份主机上都有账户,对备份目录有写权限,
  2. 集群中的机器,连接到对应的备份主机可免密登录 (数据库主机 →  目标备份主机)
  3. 增大备份主机的SSH最大连接设置
    1. sshd_config   MaxStartups  
  • No labels