如何从“s3”迁移到“cluster-s3”?

阿里尔Kabov
2023-01-22十一10

相关版本:Artifactory 5 & 6。

本文将介绍从“s3”模板切换到类似“cluster-s3”的链模板的步骤和过程。
要深入了解它们及其区别,请前往:
//www.si-fil.com/knowledge-base/what-is-the-difference-between-s3-and-cluster-s3-filestore-chains/

*本文主要以S3为例,而所提到的信息也与“S3”之间的差异有关。google storage& "cluster-google-storage”、“azure-blob-storage& "cluster-azure-blob-storage"和"s3-storage-v3& "cluster-s3-storage-v3”。

“s3”和“cluster-s3”的主要区别是“s3”使用最终的供应商,而“cluster-s3”使用Eventual-Cluster提供者.更准确地说,下面提到的步骤与从使用最终的供应商的链Eventual-Cluster提供者

在从独立服务器转换到HA集群?首先迁移到“cluster-s3”,然后再向集群中添加其他节点会更容易。

迁移一个独立的Artifactory服务器

  1. 确保Artifactory垃圾收集将不会在此过程中运行。
  2. 在Artifactory仍在运行时,更新美元ARTIFACTORY_HOME / etc / binarystore.xml与期望的最终配置。
  3. 将服务器从网络中移除以阻止新的上传。
  4. 监控“_add目录(默认在ARTIFACTORY_HOME /数据/最终/ _add /美元).
  5. 一旦“_add目录为空,重新启动Artifactory。
  6. 将服务器返回到网络并恢复GC配置。
  7. 确认两者EVENTUAL_DIR / _add /美元而且EVENTUAL_DIR / _delete /美元是空的。如果其中一个不为空,则运行以下引用的"转换脚本”。

迁移HA Artifactory集群

  1. 确保Artifactory垃圾收集将不会在此过程中运行。
  2. 在Artifactory仍在运行时,更新美元ARTIFACTORY_HOME / etc / binarystore.xml主要的具有所需最终配置的节点。确认配置更改已成功传播到所有其他集群节点。
  3. 对于每个节点,如果已配置,请删除“artifactory.ha.data.dir”ARTIFACTORY_HOME / etc /美元ha-node.properties
  4. 断开网络,关闭所有成员节点。
  5. 将主节点从网络中移除以阻止新的上传。
  6. 监控“_add目录(在先前配置的$ artifactory.ha.data.dir /最终/ _add /).
  7. 一旦“_add目录为空,重启主节点。
  8. 将主节点返回网络并进行恢复GC配置。
  9. 每次启动每个节点,并将其添加回网络。
  10. 确认两者$ artifactory.ha.data.dir /最终/ _add /而且$ artifactory.ha.data.dir /最终/ _delete /是空的。如果其中一个不为空,则运行以下引用的"转换脚本(任意节点上)。
  11. 共享挂载可能不再需要了,您可以删除/禁用它。

转换脚本

在迁移之前,当Artifactory使用“最终”提供程序时,它有两个目录,通过这些目录将事件发送到云提供程序,最终/ _add /美元而且最终/ _delete /美元

一旦使用了“最终集群”,Artifactory就不会检查上面的目录,而是检查最终/ _queue /美元目录中。以防有什么剩菜_add或“_delete,我们需要将它们移到_queue目录,以便处理这些事件。
这里的主要困难在于期望的文件名格式不同。

为了克服这个问题,您可以运行一个脚本,以预期的格式将文件移动/复制到目标目录。
运行脚本后,Artifactory将自动从“_queue”文件夹中。不需要重新启动。

eventual2cluster
重要!在运行脚本之前,请务必查看README注释。