第 2 章 迁移 Service Registry 数据


将数据迁移到 Service Registry 2.x 需要从现有 1.1 部署导出所有数据,并将其导入到新的 2.x 部署中。如果您使用 Service Registry 作为 Kafka 应用程序的模式 registry,则数据迁移至关重要,因为每个 Kafka 消息传输存储在 Service Registry 中的模式的全局标识符。此标识符必须在 registry 数据迁移过程中保留。

Service Registry 2.x 提供了一个 API,用于批量导入/导出 registry 部署中的所有数据,这样可保证从现有 registry 中导入数据时保留所有标识符。导出 API 下载自定义 .zip 文件,其中包含您的工件的所有信息。导入 API 接受此 .zip,并将所有工件加载到单个批处理中的 registry 中。

Service Registry 1.1 不提供导入/导出 API。但是,版本 2.x 提供了一个与 Service Registry 1.1 兼容的导出工具,可以导出一个 .zip,它可以导入到 2.x registry。此工具使用通用现有 API 来导出 registry 中的所有内容。但是,它的性能小于 2.x 导出 API,并且仅在从 1.1 registry 导出时使用。

先决条件

  • 运行您要从中导出的 1.1 服务器的 Service Registry 实例,以及您要导入的 2.x 服务器。
  • 从红帽客户门户下载 Service Registry exportV1 工具。这是您可以在命令行中运行的 Java 应用程序。

流程

  1. 使用 exportV1 工具导出 Service Registry 1.1 中的所有数据。这会在当前目录中生成 registry-export.zip 文件:

    java -jar apicurio-registry-utils-exportV1-2.5.10.Final-redhat-00001.jar http://old-registry.my-company.com/api
  2. 使用导入 API 将 .zip 文件导入到 Service Registry 2.x 中:

    curl -X POST "http://new-registry.my-company.com/apis/registry/v2/admin/import" \
      -H "Accept: application/json" -H "Content-Type: application/zip" \
      --data-binary @registry-export.zip
  3. 运行以下命令并比较 count 字段,检查所有工件是否已导入到新的 2.x registry 中:

    curl "http://old-registry.my-company.com/api/search/artifacts"
    curl "http://new-registry.my-company.com/apis/registry/v2/search/artifacts"

其他资源

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.