IBM Knowledge Catalog のアップグレードの準備

IBM Knowledge Catalog をバージョン 5.3 にアップグレードし、すべての IBM Knowledge Catalog データをバージョン 5.3 で使用される EDB ネイティブ・PostgreSQL データベースにマイグレーションする前に、いくつかの検査タスクと準備タスクを実行します。

重要: この情報は、バージョン 5.1 からのアップグレードにのみ適用されます。

始める前に

以下のタスクのコマンドは環境変数を使用するため、記載されているとおりにコマンドを実行できます (『インストール環境変数の設定』を参照)。

アップグレード前タスク

アップグレードを開始する前に、以下のタスクを実行します。

  1. cpd-cliRed Hat® OpenShift® Container Platform・クラスターにログインします。
    ${CPDM_OC_LOGIN}
    注意: CPDM_OC_LOGIN は、cpd-cli manage login-to-ocp コマンドの別名です。
  2. Db2U StatefulSetおよびポッドの状況を確認します。
    oc get sts c-db2oltp-wkc-db2u -n ${PROJECT_CPD_INST_OPERANDS}
    oc get pods c-db2oltp-wkc-db2u-0 -n ${PROJECT_CPD_INST_OPERANDS}
  3. マイグレーションする必要のある Db2 データベースが接続されていることを確認します。
    kubectl exec -i -n ${PROJECT_CPD_INST_OPERANDS} c-db2oltp-wkc-db2u-0 -- ksh -l -c "db2 connect to LINEAGE"
    kubectl exec -i -n ${PROJECT_CPD_INST_OPERANDS} c-db2oltp-wkc-db2u-0 -- ksh -l -c "db2 connect to WFDB"
    kubectl exec -i -n ${PROJECT_CPD_INST_OPERANDS} c-db2oltp-wkc-db2u-0 -- ksh -l -c "db2 connect to ILGDB"
    kubectl exec -i -n ${PROJECT_CPD_INST_OPERANDS} c-db2oltp-wkc-db2u-0 -- ksh -l -c "db2 connect to BGDB"
  4. IBM Knowledge Catalog 5.3の場合、4 つの別個のPostgreSQLインスタンスがデプロイされます。 各インスタンスは、個別のスキーマと個別の永続ボリューム要求 (PVC) を使用して構成されます。

    現行の Db2 データベースのサイズを確認して、PostgreSQL インスタンスに必要なストレージを計算します。

    現在のデータベース・サイズを取得します。 コマンドを 1 行で指定します。

    BGDB
    このデータベースは、ビジネス・グロッサリーを保持します。
    kubectl exec -i -n ${PROJECT_CPD_INST_OPERANDS} c-db2oltp-wkc-db2u-0 -- ksh -l -c "db2 connect to BGDB > /dev/null; db2 \"SELECT TABSCHEMA, SUM(DATA_OBJECT_P_SIZE + INDEX_OBJECT_P_SIZE + LONG_OBJECT_P_SIZE + LOB_OBJECT_P_SIZE) AS TOTAL_SCHEMA_SIZE_KB FROM SYSIBMADM.ADMINTABINFO WHERE TABSCHEMA = 'BG' GROUP BY TABSCHEMA\" | awk '/BG/ { printf \"%s: %.2f GB\\n\", \$1, \$NF / (1024 * 1024) }'"
    WFDB
    このデータベースは、ワークフロー・データを保持します。
    kubectl exec -i -n ${PROJECT_CPD_INST_OPERANDS} c-db2oltp-wkc-db2u-0 -- ksh -l -c "db2 connect to WFDB > /dev/null; db2 \"SELECT TABSCHEMA, SUM(DATA_OBJECT_P_SIZE + INDEX_OBJECT_P_SIZE + LONG_OBJECT_P_SIZE + LOB_OBJECT_P_SIZE) AS TOTAL_SCHEMA_SIZE_KB FROM SYSIBMADM.ADMINTABINFO WHERE TABSCHEMA = 'DB2INST1' GROUP BY TABSCHEMA\" | awk '/DB2INST1/ { printf \"%s: %.2f GB\\n\", \$1, \$NF / (1024 * 1024) }'"
    リネージュ
    このデータベースは、アクティビティー・リネージュ・データを保持します。
    kubectl exec -i -n ${PROJECT_CPD_INST_OPERANDS} c-db2oltp-wkc-db2u-0 -- ksh -l -c "db2 connect to LINEAGE > /dev/null; db2 \"SELECT TABSCHEMA, SUM(DATA_OBJECT_P_SIZE + INDEX_OBJECT_P_SIZE + LONG_OBJECT_P_SIZE + LOB_OBJECT_P_SIZE) AS TOTAL_SCHEMA_SIZE_KB FROM SYSIBMADM.ADMINTABINFO WHERE TABSCHEMA = 'LINEAGE_TENANT_999' GROUP BY TABSCHEMA\" | awk '/LINEAGE_TENANT_999/ { printf \"%s: %.2f GB\\n\", \$1, \$NF / (1024 * 1024) }'"
    DATAQUALITY
    このデータベースには、データ品質情報が保持されます。
    kubectl exec -i -n ${PROJECT_CPD_INST_OPERANDS} c-db2oltp-wkc-db2u-0 -- ksh -l -c "db2 connect to LINEAGE > /dev/null; db2 \"SELECT TABSCHEMA, SUM(DATA_OBJECT_P_SIZE + INDEX_OBJECT_P_SIZE + LONG_OBJECT_P_SIZE + LOB_OBJECT_P_SIZE) AS TOTAL_SCHEMA_SIZE_KB FROM SYSIBMADM.ADMINTABINFO WHERE TABSCHEMA = 'DATAQUALITY' GROUP BY TABSCHEMA\" | awk '/DATAQUALITY/ { printf \"%s: %.2f GB\\n\", \$1, \$NF / (1024 * 1024) }'"

    このデータベースは、デプロイメントでデータ品質機能が有効になっている場合にのみ使用できます。

    ILGDB
    このデータベースには、データ・プライバシー・サービスに関連する情報が保持されます。
    kubectl exec -i -n ${PROJECT_CPD_INST_OPERANDS} c-db2oltp-wkc-db2u-0 -- ksh -l -c "db2 connect to ILGDB > /dev/null; db2 \"SELECT TABSCHEMA, SUM(DATA_OBJECT_P_SIZE + INDEX_OBJECT_P_SIZE + LONG_OBJECT_P_SIZE + LOB_OBJECT_P_SIZE) AS TOTAL_SCHEMA_SIZE_KB FROM SYSIBMADM.ADMINTABINFO WHERE TABSCHEMA = 'DB2INST1' GROUP BY TABSCHEMA\" | awk '/DB2INST1/ { printf \"%s: %.2f GB\\n\", \$1, \$NF / (1024 * 1024) }'"
  5. 前のステップの結果に基づいて PVC を展開します。

    wkc-cr カスタム・リソースを編集します。 これは手動で行うか、oc patch コマンドを実行することができます。 spec セクションで、以下のパラメーターの値を更新します。

    Postgres インスタンスの変数を以下のように設定します。

    指示の数値は、必要最小限の数値と考えてください。 将来の増大を予想している場合は、それに応じて数値を増やしてください。 $BGDBなど、さまざまなデータベースの変数は、前のステップで決定したDb2・スキーマのサイズを参照します。

    DATAQUALITY データベースが存在する場合、dataquality マイグレーションのマイグレーション・ボリュームに必要なスペースは、DATAQUALITY データベースのスペースの 3.5 倍になります。 DATAQUALITY データベースが存在しない場合は、計算で $DATAQUALITY 値が 0 であると想定します。 バージョン 5.3.0 では、wkc-cr カスタム・リソースで ikc_dataquality_postgres_migration_storage_size 変数を設定しないでください。

    $CURRENT_PROFILING_PVC_SIZE変数の値は、wdp-profiling-cloud-native-postgresql-1 PVC のサイズを確認することによって判別できます。

    各ストレージ・サイズのデフォルト値は 50 GB です。 計算の結果、いずれかの項目の値が小さくなった場合は、CR 内の該当する変数を更新する必要はありません。

    CR で設定する変数 影響を受ける PVC の名前 最小値:
    ikc_glossary_workflow_postgres_storage_size ikc-glossary-workflow-postgres $BGDB + $WFDB
    activity_lineage_postgres_storage_size ikc-activity-lineage-postgres $LINEAGE
    wdp_profiling_edb_postgres_storage_size wdp-profiling-cloud-native-postgresql $DATAQUALITY + $CURRENT_PROFILING_PVC_SIZE
    ikc_dp_dps_bidata_mde_mdi_postgres_storage_size ikc-dp-dps-bidata-mde-mdi-postgres $ILGDB + 20 GB (メタデータのインポートとレポート・データを考慮)
    ikc_dataquality_postgres_migration_storage_size ikc-db2-postgres-migration-dataquality $DATAQUALITY*3.5
    ikc_dps_postgres_migration_storage_size ikc-db2-postgres-migration-dps $ILGDB
    ikc_glossary_postgres_migration_storage_size ikc-db2-postgres-migration-glossary $BGDB
    ikc_wdplineage_postgres_migration_storage_size ikc-db2-postgres-migration-wdplineage $LINEAGE
    ikc_workflow_postgres_migration_storage_size ikc-db2-postgres-migration-workflow $WFDB

    変更は、システムをアップグレードすると適用されます。