升级到v5.6.1之后的操作

创建时间:2024-04-02 最近修改时间:2024-04-02

#1. 升级到v5.6.1之后的操作

  • v5.6.0到v5.6.1的tsdb数据迁移

    • 登录所有数据节点执行以下操作
      # 停止当前数据库,备份数据,并启动备份数据库,然后再启动当前数据库
      tsdb_issu_561.sh
      
      # 请等待备份数据库启动成功, 若如下命令成功返回,则表示备份数据库启动成功
      tsdb-dump -p 30044
      
      # 将数据从备份数据库,迁移到当前数据库
      influx-migrate-561
      # 迁移日志: /var/log/influxdb/influx_migrate.log
      # 注意: 默认限制每秒迁移10000条记录, 可通过`/etc/influxdb/influxdb_migrate.yaml`的`limit-write-rate`调整.
      
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
    • 迁移结束, 验证业务正常后, 清理原数据
      # 停止备份数据库
      tsdb_issu_561.sh stop
      # 删除备份数据
      tsdb_issu_561.sh clean
      
      1
      2
      3
      4
  • v5.6.1已不再支持共享服务器类型的采集器(数据节点对应的采集器),需要在系统-采集器页面手动删除这部分采集器, 若这部分采集器在接收交换机镜像流量或NetFlow/sFlow,需要再手动录入为专属服务器类型的采集器。

  • cloud-agent.yaml添加新配置项

    • 华为私有云新加zones配置项,用于限制对接的资源范围
      huawei_private:
        zones:
        # - az_name1
        # - az_name2
      
      1
      2
      3
      4
    • Kubernetes新加token配置项,支持用token对接资源;新加port_name_regex配置项,用于学习节点上符合正则的端口
      kubernetes:
        token: ''
        port_name_regex: '^(?=(cni|flannel|cali|tunnel))'
      
      1
      2
      3
  • 5.6.1开始全景图数据保留时长改为在页面配置,请确认页面显示的时长与所有数据节点中InfluxDB的时长一致

    • 在数据节点上执行tsdb-dump可查看到所有数据库,全景图数据包含flow_flowvtap_packetvtap_wan开头的所有数据库
    • 依次对数据库查询保留时长的信息,脚本如下:
      dbs=(vtap_flow vtap_flow_edge vtap_flow_edge_port vtap_flow_port vtap_packet vtap_packet_edge vtap_wan vtap_wan_port)
      for db in  ${dbs[*]} ; do
          echo $db
      tsdb-dump -d $db -e rp
      done
      # 结果示例:
      # Influxdb rp_1m: http://127.0.0.1:20044
      # name    duration shardGroupDuration replicaN default
      # ----    -------- ------------------ -------- -------
      # autogen 0s       168h0m0s           1        false
      # rp_1m   168h0m0s 17h0m0s            1        true
      # rp_1s   36h0m0s  3h0m0s             1        false
      
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
    • rp_1m所在行duration列表示分钟数据保存时长,rp_1s所在行表示秒数据保存时长
    • 若不一致,需要从页面上修改存储时间保留时长直至InfluxDB显示正确
    • 若页面初始显示为7天且希望保留7天,需要先修改为6然后再改为7
    • rp_1m所在行shardGroupDuration列的值是否处于17h~24h, 若不在该范围,请在数据节点执行如下脚本改正。
      dbs=(vtap_flow vtap_flow_edge vtap_flow_edge_port vtap_flow_port vtap_packet vtap_packet_edge vtap_wan vtap_wan_port)
      for db in  ${dbs[*]} ; do
          echo $db
          tsdb-dump -e "alter retention policy rp_1m on $db shard duration 17h"
      tsdb-dump -d $db -e rp
      done
      
      1
      2
      3
      4
      5
      6
    • 删除/etc/roze.yaml中的influxdb-default-retention-policy配置项的所有内容。