将InfluxDB OSS实例迁移到InfluxDB Enterprise集群
将正在运行的InfluxDB开源(OSS)实例迁移到InfluxDB企业集群。
迁移将所有用户从OSS实例转移到InfluxDB Enterprise集群。
将OSS实例迁移到InfluxDB Enterprise
完成以下任务,将数据从OSS迁移到InfluxDB企业集群,而不会出现停机或数据丢失。
将InfluxDB OSS和InfluxDB Enterprise升级到最新的稳定版本。
在每个元节点和每个数据节点上,将您的 OSS 实例的 IP 和主机名添加到
/etc/hosts文件中。这将允许节点与 OSS 实例进行通信。在 OSS 实例上,使用 influxd backup 命令和
-portable标志从 OSS 进行便携备份:influxd backup -portable -host <IP address>:8088 /tmp/mysnapshot注意您备份时的当前日期和时间。 有关更多信息,请参见 influxd backup。
通过运行以下命令来恢复集群上的备份:
influxd-ctl restore <path-to-backup-files>注意: InfluxDB企业版使用influxd-ctl工具来备份和恢复数据。有关更多信息,请参见influxd-ctl和
restore。为了避免数据丢失,在完成其余步骤时同时写入OSS和企业版。 这保持了OSS和集群处于活动状态,以便进行测试和验收工作。有关更多信息,请参见 Write data with the InfluxDB API.
从OSS导出数据 从备份时间到双写开始的时间。 例如,如果您在
2020-07-19T00:00:00.000Z进行备份, 并在2020-07-19T23:59:59.999Z开始向企业写入数据, 您将运行以下命令:influx_inspect export -compress -start 2020-07-19T00:00:00.000Z -end 2020-07-19T23:59:59.999Z`有关更多信息,请参见
-export。验证数据是否成功迁移到您的企业集群。见:
接下来,停止对OSS实例的写入,并将其删除。
停止写入并移除OSS
停止对InfluxDB OSS实例的所有写入。
停止
influxdb服务在 InfluxDB OSS 实例服务器上。- Double check that the service is stopped. The following command should return nothing:
ps ax | grep influxd移除 InfluxDB OSS 包。
重新平衡集群
- 使用
ALTER RETENTION POLICY语句将所有现有保留策略的 复制因子 增加到集群中数据节点的数量。 - 手动重新平衡您的集群 以满足现有分片的所需复制因子。
- 如果您正在使用 Chronograf,请将您的企业实例添加为新的数据源。