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 和更高版本
限制
- 资产票据无法迁移。
- 资产审查和评级无法迁移。
可以导入和导出以下目录资产:
connectiondata_assetdata_definitiondata_flowdata_intg_flowdata_intg_subflowdata_rule("IBM Cloud Pak for Data、"4.6.3"及更高版本支持 "data_rule_definition("IBM Cloud Pak for Data、"4.6.3"及更高版本支持 "do_decision_assetenvironmentfolder_assethardware_specificationjobmetadata_importnotebookpackage_extensionparameter_setscriptshiny_assetsoftware_specificationwml_experimentwml_functionwml_modelwml_model_definitionwml_pipeline
- 必需的许可权
- 要完成此任务,您必须是部署了 Watson Knowledge Catalog 服务的项目 (名称空间) 的管理员,以及 Red Hat OpenShift 项目的管理员。
先决条件
必须安装 cpd-cli 命令行界面和相关模块。 有关更多信息,请参阅 安装产品元数据备份和迁移服务。
必须注册 catalog-api-aux 模块。 要验证模块是否可用,请运行以下命令:
cpd-cli list aux-modules
应在命令输出中列出模块。
导出目录资产
要从 Watson Knowledge Catalog 服务导出目录资产,请完成以下任务:
- 确定导出的作用域。 如果要从所有目录,项目和空间中导出所有资产,请转至下一步。 如果要选择要导出的资产,请创建具有导出规范的 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"
]
}
}
]
}
}'
- 转至
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
等待导出完成。 您可以使用以下命令来检查导出状态:
./cpd-cli -n Namespace export status Export_name如步骤 2 中所述替换值。
示例:
./cpd-cli -n Namespace export status export-test下载导出结果:
./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 服务,请完成以下任务。 如果要从其他集群上创建的导出进行导入,请将导出的归档复制到当前集群,然后登录到当前集群。
- 转至
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
- 运行以下命令以将数据导入到 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
等待导入完成。 您可以使用以下命令来检查导入状态:
./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时除去。
如果导入失败,或者您想在导入后因为意外删除某些资产而重新导入,则必须在再次运行导入之前,手动从目录中删除之前导入的资产,因为重新导入本地上传的文件(例如带有本地附件的数据资产)会导致资产丢失附件,并且资产无法正常运行。