JFrog Artifactory系统还原失败

伊万·埃尔米洛夫(Ivan Ermilov)

在我们的组织中,我们正在运行Artifactory Pro版,每天将数据导出到NAS驱动器(完整系统导出)。每天晚上运行约4个小时,并写上“系统导出成功”。现在是时候将我们的实例迁移到基于PostgreSQL的时候了(现在在derby上运行)。我读过,您需要使用完整的系统导入来完成此操作。

几个数字:

  • 伪像:将近一百万
  • 数据大小:超过2TB的数据
  • 导出数据量:超过5TB的数据

如果您还在考虑为什么导出数据量比磁盘空间使用量大2倍以上,那么我们的猜测是,将Docker映像存储在Docker注册表中时会进行重复数据删除(每层),但是在导出时不存在重复数据删除。

另外,通过将数据同步到另一台服务器,然后在那里开始完全相同的设置,我也成功地迁移了实例。工作得很好。

在另一台计算机上启动完全相同的设置(全新安装)并运行系统导入时,它将失败,并显示以下日志:

[/data/artifactory/logs/artifactory.log] -   "errors" : [ {
[/data/artifactory/logs/artifactory.log] -     "code" : "INTERNAL_SERVER_ERROR",
[/data/artifactory/logs/artifactory.log] -     "message" : "Unable to import access server",
[/data/artifactory/logs/artifactory.log] -     "detail" : "File '/root/.jfrog-access/etc/access.bootstrap.json' does not exist"
[/data/artifactory/logs/artifactory.log] -   } ]
[/data/artifactory/logs/artifactory.log] - }

完整日志在这里:https : //pastebin.com/ANZBiwHC

/root/.jfrog-access目录是Access主目录(Access也使用derby)。

我在这里想念什么?

伊万·埃尔米洛夫(Ivan Ermilov)

根据Artifactory文档,有些事情我们做错了:

  • 导出不是备份大实例的正确方法。如果使用derby运行Artifactory,则只需将文件存储和derby目录同步到NAS。
  • 不支持在Artifactory的多个版本上进行增量导出。意思是,如果您对4.xx版进行了完全导出,则先升级到5.xx版,再升级到6.xx版,并且在此过程中进行了增量导出...那么您的导出将不会导入到版本中。 6.xx每次版本升级后,必须创建实例的新完整导出。

我通过删除导出并执行整个系统导出(大约30小时)解决了这种情况。完整的系统导出已成功导入到另一个实例(大约12小时)。

PS该错误对我来说仍然是个谜。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章