influxdb相当好用,先夸下,但是官方没有开源的集群方案,比较坑,涉及到高可用比较弱一点。

还好是作为监控的数据库使用,这不就赶上机房搬迁,需要做迁移。。。 头大,因为之前只是用了一台服务器做influxdb使用,配置里面全都是这个服务器的IP,grafna展示也是用这个IP。如果是使用域名就好了,只需要修改下域名的指向,这些部分的都不需要修改了。所以呀,办事还是规范点,不然一天到晚的埋坑 踩坑 填坑。


开始正事,准备迁移

1 在新的服务器上准备好influxdb,主要是安装influxdb了。

前往官网下载安装:

https://www.influxdata.com/

安装步骤省略。。。无非是 yum  rpm 或者是make

然后把配置文件同步过来。

启动服务, 查看是否有报错

然后做域名指向,附加项,这部分完全是为了减轻一会迁移或者维护


到现在为止,已经有了一个新的influxdb,hold on 感觉那里不对,是不对,因为没有数据,不能迁移一下之前的数据都丢了吧。



2  进行数据备份迁移:

迁移的核心步骤为:

备份元数据

1、

influxd backup -host localhost:8088 ./influx_db_backup


备份数据库

2、

influxd backup -database ihome_default -host localhost:8088 ./influx_db_backup


恢复元数据

3、

influxd restore -metadir /var/lib/influxdb/meta/ ./influx_db_backup


恢复数据库

4、

influxd restore -database ihome_default -datadir /var/lib/influxdb/data ./influx_db_backup


修改权限

5、

chown -R influxdb:influxdb /var/lib/influxdb


重启influxdb

6、service influxdb stop

7、service influxdb start


2.1登录influxdb查看数据库:

#influx
>show databases


然后再数据盘上进行备份,注意空间大小

将数据库名字粘贴到:

database.txt


2.2执行备份

然后书写脚本:

# cat backup.sh
#备份元数据
influxd backup  ./influx_db_backup
#恢复元数据
#influxd restore -metadir /var/lib/influxdb/meta/ ./influx_db_backup
while read line
    do
    echo $line
    backdir=$line-backup
    #备份数据库 
    influxd backup -database $line -host localhost:8088  $backdir
    #恢复数据库
    #influxd restore -database $line -datadir /data0/influxdb/data ./$backdir
    done < database.txt

然后执行,在屏幕上回出现执行的进度,逐个库备份,这时候服务器压力会增大,注意干这种事情 尽量在夜深人静的时候


2.3 同步数据,建议直接把备份的数据rsync到新服务器上

命令就忽略了


2.4  恢复数据库,还是刚才的脚本 简单的改吧改吧。

# cat backup.sh
#备份元数据
#influxd backup  ./influx_db_backup
#恢复元数据
influxd restore -metadir /var/lib/influxdb/meta/ ./influx_db_backup
while read line
    do
    echo $line
    backdir=$line-backup
    #备份数据库 
    #influxd backup -database $line -host localhost:8088  $backdir
    #恢复数据库
    influxd restore -database $line -datadir /data0/influxdb/data ./$backdir
    done < database.txt

执行一下 ,屏幕上又是一堆输出,都是正常的。等待导入完成。

建议 导入完成后重新下数据库


2.5  进行善后工作

修改写入位置 主要是写入域名   

修改grafana的调用


2.6 最后检查

检查老influxdb上的日志 查看写入情况 持续修改


至此 迁移工作完成

可以去喝口茶水了 啦啦啦啦啦啦