IBM Cloud Pak® for Data 4.8 版本将于 2025 年 7 月 31 日结束支持(EOS)。 欲了解更多信息,请参阅 IBM Cloud Pak for Data 版本 4.X 的停止服务公告。
在 版本支持结束之前,升级到 版本。 IBM Cloud Pak for Data 4.8 IBM Software Hub 5.1 有关更多信息,请参阅从 IBM Cloud Pak for Data 版本 4.8 升级到 IBM Software Hub 版本 5.1。
重新同步全球搜索 ( IBM Knowledge Catalog )
要开始使用资产和关系的全局搜索索引数据,需要在升级后运行批量同步实用程序。 该程序适用于从 4.7.2 及其后版本升级到更高版本后。
先决条件
必需角色
要完成此任务,您必须具有下列其中一个角色:
- 集群管理员
- 实例管理员
批量同步资产
为资产的全局搜索索引运行批量同步。 确保您以管理员身份或通过命令行登录到集群。
完成程序后,您就可以使用全局搜索栏搜索资产和关系。
将以下脚本作为
cpd_gs_sync.sh复制到本地环境中:#!/bin/bash function prompt_for_namespace(){ read -p "Please provide namespace in which WKC is installed: " NAMESPACE echo "Job will be deployed into \"$NAMESPACE\" namespace" } function all_container_confirmation(){ read -p "ARE YOU SURE YOU WANT TO CONTINUE? THIS WILL AFFECT ALL CONTAINERS, AND MAY TAKE A LONG TIME. TYPE \"YES\" TO PROCEED: " PROCESS_ALL if [[ $PROCESS_ALL != "YES" ]]; then echo "Job run cancelled." exit 0 fi echo "All containers will be processed" } function prompt_for_list_of_catalogs(){ read -p "Please provide the list of containers to synchronize separated by commas, empty list indicates processing all containers(catalog/project/space): " CATALOGS_STRING IFS=', ' read -r -a CATALOGS <<< "$CATALOGS_STRING" if [[ $CATALOGS_STRING == "" ]]; then all_container_confirmation else echo "Following containers will be processed: " for index in "${!CATALOGS[@]}" do echo "$index - ${CATALOGS[index]}" done fi } function construct_db_list_string(){ DB_STRING="[" first=true for index in "${!CATALOGS[@]}" do if [ $first == false ]; then DB_STRING+="," fi first=false DB_STRING+="\"${CATALOGS[index]}\"" done DB_STRING+="]" } function patch_cronjob(){ oc set env -n $NAMESPACE cronjob/wkc-search-reindexing-cronjob dbs_to_sync=$DB_STRING } function spawn_job(){ oc delete job -n $NAMESPACE wkc-search-reindexing-job oc create job -n $NAMESPACE --from=cronjob/wkc-search-reindexing-cronjob wkc-search-reindexing-job } function restore_cronjob(){ oc set env -n $NAMESPACE cronjob/wkc-search-reindexing-cronjob dbs_to_sync=[] } prompt_for_namespace prompt_for_list_of_catalogs construct_db_list_string patch_cronjob spawn_job restore_cronjob使用以下命令从步骤 1 执行代码:
chmod +x ./cpd_gs_sync.sh使用以下命令执行作业:
./cpd_gs_sync.sh根据需要遵循终端中的提示来定制作业。
注: 如果容器列表为空,那么将重新同步所有目录,项目和工作空间。运行以下命令以检查作业 (
wkc-search-reindexing-job) 的状态:oc get jobs -n ${CPD_INSTANCE_PROJECT} -w | grep reindexing作业完成后,将显示状态:
wkc-search-reindexing-job 1/1 3m52s 20m
批量同步关系
从 4.7.2 及其后版本升级到更高版本后,运行关系批量同步,以便能够使用关系的全局搜索索引数据。 确保您以管理员身份或通过命令行登录到集群。
完成操作后,您就可以使用全局搜索栏搜索关系,并在关系表中按项目名称排序。
将以下脚本作为
cpd_gs_sync.sh复制到本地环境中:#!/bin/bash function prompt_for_namespace(){ read -p "Please provide namespace in which WKC is installed: " NAMESPACE echo "Job will be deployed into \"$NAMESPACE\" namespace" } function all_container_confirmation(){ read -p "ARE YOU SURE YOU WANT TO CONTINUE? THIS WILL AFFECT ALL CONTAINERS, AND MAY TAKE A LONG TIME. TYPE \"YES\" TO PROCEED: " PROCESS_ALL if [[ $PROCESS_ALL != "YES" ]]; then echo "Job run cancelled." exit 0 fi echo "All containers will be processed" } function prompt_for_list_of_catalogs(){ read -p "Please provide the list of containers to synchronize separated by commas, empty list indicates processing all containers(catalog/project/space): " CATALOGS_STRING IFS=', ' read -r -a CATALOGS <<< "$CATALOGS_STRING" if [[ $CATALOGS_STRING == "" ]]; then all_container_confirmation else echo "Following containers will be processed: " for index in "${!CATALOGS[@]}" do echo "$index - ${CATALOGS[index]}" done fi } function construct_db_list_string(){ DB_STRING="[" first=true for index in "${!CATALOGS[@]}" do if [ $first == false ]; then DB_STRING+="," fi first=false DB_STRING+="\"${CATALOGS[index]}\"" done DB_STRING+="]" } function patch_cronjob(){ oc set env -n $NAMESPACE cronjob/wkc-search-relationships-cronjob dbs_to_sync=$DB_STRING } function spawn_job(){ oc delete job -n $NAMESPACE wkc-search-relationships-job oc create job -n $NAMESPACE --from=cronjob/wkc-search-relationships-cronjob wkc-search-relationships-job } function restore_cronjob(){ oc set env -n $NAMESPACE cronjob/wkc-search-relationships-cronjob dbs_to_sync=[] } prompt_for_namespace prompt_for_list_of_catalogs construct_db_list_string patch_cronjob spawn_job restore_cronjob使用以下命令从步骤 1 执行代码:
chmod +x ./cpd_gs_sync.sh使用以下命令执行作业:
./cpd_gs_sync.sh根据需要遵循终端中的提示来定制作业。
注: 如果容器列表为空,那么将重新同步所有目录,项目和工作空间。运行以下命令检查任务 (wkc-search-relationships-job) 的状态:
oc get jobs -n ${CPD_INSTANCE_PROJECT} -w | grep relationships作业完成后,将显示状态:
wkc-search-relationships-job 1/1 3m52s 20m作业状态为完成时,运行以下 patch 命令以允许使用全局搜索关系:
oc patch ccs ccs-cr -n ${CPD_INSTANCE_PROJECT} --type=merge --patch='{"spec": {"portal_catalog_is_global_search_relationships_enabled": "true"}}'要确保
portal-catalogpod 已重新启动,请运行以下命令:oc get pod -n ${CPD_INSTANCE_PROJECT} -w | grep portal-catalog
Parent topic: 管理 IBM Knowledge Catalog