如何从“s3”迁移到“cluster-s3”?
相关版本: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服务器
- 确保Artifactory垃圾收集将不会在此过程中运行。
- 在Artifactory仍在运行时,更新
美元ARTIFACTORY_HOME / etc / binarystore.xml与期望的最终配置。 - 将服务器从网络中移除以阻止新的上传。
- 监控“
_add目录(默认在ARTIFACTORY_HOME /数据/最终/ _add /美元). - 一旦“
_add目录为空,重新启动Artifactory。 - 将服务器返回到网络并恢复GC配置。
- 确认两者
EVENTUAL_DIR / _add /美元而且EVENTUAL_DIR / _delete /美元是空的。如果其中一个不为空,则运行以下引用的"转换脚本”。
迁移HA Artifactory集群
- 确保Artifactory垃圾收集将不会在此过程中运行。
- 在Artifactory仍在运行时,更新
美元ARTIFACTORY_HOME / etc / binarystore.xml的主要的具有所需最终配置的节点。确认配置更改已成功传播到所有其他集群节点。 - 对于每个节点,如果已配置,请删除“
artifactory.ha.data.dir”从ARTIFACTORY_HOME / etc /美元ha-node.properties. - 断开网络,关闭所有成员节点。
- 将主节点从网络中移除以阻止新的上传。
- 监控“
_add目录(在先前配置的$ artifactory.ha.data.dir /最终/ _add /). - 一旦“
_add目录为空,重启主节点。 - 将主节点返回网络并进行恢复GC配置。
- 每次启动每个节点,并将其添加回网络。
- 确认两者
$ artifactory.ha.data.dir /最终/ _add /而且$ artifactory.ha.data.dir /最终/ _delete /是空的。如果其中一个不为空,则运行以下引用的"转换脚本(任意节点上)。 - 共享挂载可能不再需要了,您可以删除/禁用它。
转换脚本
在迁移之前,当Artifactory使用“最终”提供程序时,它有两个目录,通过这些目录将事件发送到云提供程序,最终/ _add /美元而且最终/ _delete /美元.
一旦使用了“最终集群”,Artifactory就不会检查上面的目录,而是检查最终/ _queue /美元目录中。以防有什么剩菜_add或“_delete,我们需要将它们移到_queue目录,以便处理这些事件。
这里的主要困难在于期望的文件名格式不同。
为了克服这个问题,您可以运行一个脚本,以预期的格式将文件移动/复制到目标目录。
运行脚本后,Artifactory将自动从“_queue”文件夹中。不需要重新启动。
eventual2cluster
重要!在运行脚本之前,请务必查看README注释。
