重要说明:

IBM Cloud Pak® for Data 4.6 版本将于 2025 年 7 月 31 日结束支持(EOS)。 如需了解更多信息,请参阅 IBM Cloud Pak for Data 版本 4.X 的停止服务公告

在 IBM Cloud Pak for Data 4.6 版本支持结束之前,升级到 IBM Software Hub 5.1 版本。 更多信息,请参阅 IBM Software Hub 版本 5.1 文档中的升级 IBM Software Hub。

迁移目录资产 (Watson Knowledge Catalog)

使用 cpd-cli 命令可在单个 Cloud Pak for Data 集群中或不同集群之间导出和导入目录资产。

以下 Cloud Pak for Data 版本支持目录资产迁移:

  • 从 Cloud Pak for Data 3.0, 3.5和 4.0 及更高版本导出目录资产
  • 将目录资产导入到 Cloud Pak for Data 4.0 和更高版本

限制

  • 资产票据无法迁移。
  • 资产审查和评级无法迁移。

可以导入和导出以下目录资产:

  • connection
  • data_asset
  • data_definition
  • data_flow
  • data_intg_flow
  • data_intg_subflow
  • data_rule("IBM Cloud Pak for Data、"4.6.3"及更高版本支持 "
  • data_rule_definition("IBM Cloud Pak for Data、"4.6.3"及更高版本支持 "
  • do_decision_asset
  • environment
  • folder_asset
  • hardware_specification
  • job
  • metadata_import
  • notebook
  • package_extension
  • parameter_set
  • script
  • shiny_asset
  • software_specification
  • wml_experiment
  • wml_function
  • wml_model
  • wml_model_definition
  • wml_pipeline
必需的许可权
要完成此任务,您必须是部署了 Watson Knowledge Catalog 服务的项目 (名称空间) 的管理员,以及 Red Hat OpenShift 项目的管理员。

先决条件

必须安装 cpd-cli 命令行界面和相关模块。 有关更多信息,请参阅 安装产品元数据备份和迁移服务

必须注册 catalog-api-aux 模块。 要验证模块是否可用,请运行以下命令:

cpd-cli list aux-modules


应在命令输出中列出模块。

导出目录资产

要从 Watson Knowledge Catalog 服务导出目录资产,请完成以下任务:

  1. 确定导出的作用域。 如果要从所有目录,项目和空间中导出所有资产,请转至下一步。 如果要选择要导出的资产,请创建具有导出规范的 YAML 文件。 使用以下结构创建 export.yaml 文件:
catalog-api-aux:
  # exportspec specifies which assets to export
  exportspec: 'EXPORT_JSON_STRING'

EXPORT_JSON_STRING 变量替换为指定要导出的资产的 JSON 字符串。 例如:

catalog-api-aux:
  exportspec: '{"catalog": {    "container_specs": [{   "guids": ["08f248d3-0c5f-4193-a16d-e3c0cc7f7d94"], "all_assets": true}  ]} }'

JSON 字符串必须放在一行中,并使用单引号字符进行包装。 以下示例显示了仅为了清晰起见才在多行上添加的 JSON 字符串。

  • 从指定目录,项目或空间的列表中导出所有资产:
'{
  "project": { <<---- this is the type of asset container: catalog, project, or space
    "container_specs": [
      {
        "guids": [
          "00cf5b102-17b3-4638-95df-309a2a443137",  <<---- these are the ids of asset containers
          "e14a187d-4fc8-4a5d-aee1-e2ad4ec60b29"
        ],
        "all_assets": true
      }
    ]
  },
  "catalog": { <<---- this is the type of asset container: catalog, project, or space
    "container_specs": [
      {
        "guids": [
          "ab3d18a4-015f-4bb1-ae13-4ee9faf0382a"  <<---- these are the ids of asset containers
        ],
        "all_assets": true
      }
    ]
  }
}'
  • 从指定目录,项目或空间的列表中导出特定资产:
'{
  "space": { <<---- this is the type of asset container: catalog, project, or space
    "container_specs": [
      {
        "guids": [
          "4b014869-fc0e-4919-bc93-3fa8c40bcd37"  <<---- this is the id of asset container
        ],
        "asset_specs": {
          "asset_ids": [
            "e14a187d-4fc8-4a5d-aee1-e2ad4ec60b29",  <<---- these are the ids of assets
            "e2395865-5503-49da-b708-cfbf2fb1b646"
          ]
        }
      }
    ]
  }
}'
  • 从指定目录,项目或空间的列表中导出特定类型的资产:
'{
  "space": { <<---- this is the type of asset container: catalog, project, or space
    "container_specs": [
      {
        "guids": [
          "4b014869-fc0e-4919-bc93-3fa8c40bcd37",  <<---- these are the ids of asset containers
          "866613f8-4102-4cd2-be6e-ee46ea6c468b"
        ],
        "asset_specs": {
          "asset_types": [
            "data_asset",  <<---- these are the types of assets
            "notebook"
          ]
        }
      }
    ]
  }
}'
  1. 转至 cpd-cli 命令行界面的安装目录并运行 export 命令:
./cpd-cli -n Namespace export create Export_name \
  --component catalog-api \
  --values Override_yaml_file_location

请替换下列值:

  • 名称空间 替换为部署了 Watson Knowledge Catalog 服务的名称空间。
  • Export_name 替换为导出任务的名称。
  • Override_yaml_file_location 替换为具有导出规范的 YAML 文件的路径。 如果要导出所有目录资产,请勿包含此变量。

示例:

./cpd-cli -n Namespace export create export-test --component catalog-api --values /root/export.yaml
  1. 等待导出完成。 您可以使用以下命令来检查导出状态:

    ./cpd-cli -n Namespace export status Export_name
    

    如步骤 2 中所述替换值。

    示例:

    ./cpd-cli -n Namespace export status export-test
    
  2. 下载导出结果:

    ./cpd-cli -n Namespace export download Export_Name
    

    如步骤 2 中所述替换值。

    示例:

    ./cpd-cli -n Namespace export download export-test
    

    导出的包的名称具有以下格式: cpd-exports-<export_name>-<timestamp>-data.tar

导入目录资产

要将目录资产导入到 Watson Knowledge Catalog 服务,请完成以下任务。 如果要从其他集群上创建的导出进行导入,请将导出的归档复制到当前集群,然后登录到当前集群。

  1. 转至 cpd-cli 命令行界面的安装目录并上载导出的软件包:
./cpd-cli -n Namespace export upload \
-f Export_archive_file_name

请替换下列值:

  • 名称空间 替换为部署了 Watson Knowledge Catalog 服务的名称空间。
  • Export_archive_file_name 替换为导出的软件包的位置。

示例:

./cpd-cli -n Namespace export upload \
-f /root/cpd-exports-export-test-20211025081052-data.tar
  1. 运行以下命令以将数据导入到 Watson Knowledge Catalog 服务:
./cpd-cli -n Namespace import create Import_name \
 --from-export Export_name

请替换下列值:

  • 名称空间 替换为部署了 Watson Knowledge Catalog 服务的名称空间。
  • Import_name 替换为导入任务的名称。
  • Export_name 替换为导出任务的名称。

示例:

./cpd-cli -n Namespace import create import-test \
--from-export export-test
  1. 等待导入完成。 您可以使用以下命令来检查导入状态:

    ./cpd-cli -n Namespace import status Import_name
    

    如步骤 2 中所述替换值。

    示例:

     ./cpd-cli -n Namespace import status import-test
    

重要信息: 完成导入目录资产之后,请确认 IMAM 中是否存在两个 IADB 连接。 如果是,那么必须删除旧的 IADB 连接,否则将导致自动发现或快速扫描失败。 例如,旧的 IADB 连接可能是 jdbc:db2/is:xmeterdocker:50000/IADB ,必须在保留 jdbc:db2/c-db2oltp-iis-db2u:50000时除去。

如果导入失败,或者您想在导入后因为意外删除某些资产而重新导入,则必须在再次运行导入之前,手动从目录中删除之前导入的资产,因为重新导入本地上传的文件(例如带有本地附件的数据资产)会导致资产丢失附件,并且资产无法正常运行。

了解更多

父主题: 管理 Watson Knowledge Catalog