Db2 または Db2 Warehouse サービス・インスタンスのアップグレードの失敗のトラブルシューティング
Db2またはDb2 Warehouseを5.0.xから5.2.0にアップグレードした後、Db2またはDb2 Warehouseサービス・インスタンスのアップグレード時に障害シナリオが発生する可能性があります。
症状
- Db2 または Db2 Warehouse に対して cpd-cli service-instance status コマンドを実行します。
cpd-cli service-instance status ${INSTANCE_NAME} \ --profile=${CPD_PROFILE_NAME} \ --service-type=db2oltpcpd-cli service-instance status ${INSTANCE_NAME} \ --profile=${CPD_PROFILE_NAME} \ --service-type=db2wh以下の例は、Db2 Warehouseの出力例を示しています。Namespace Service type Version ID Name Provision status Service status --------- ------------- --------------- --------------- -------------------------------- ----------------- ---------------- thanos db2wh 11.5.9.0-cn1-amd64 1748927344077963 db2wh_smp_nondedicated_separate_4k UPGRADE_IN_PROGRESS FAILED 以下の環境変数の値を設定します。 以下の例は、前の出力から割り当てられた値を持つ環境変数を示しています。
CURRENT_DB_VERSION=11.5.9.0-cn1UPGRADING_DB_VERSION=12.1.2.0INSTANCE_ID=db2wh-1748927344077963PROJECT_CPD_INST_OPERANDS=thanos- アップグレード・ジョブのログを確認します。
以下のメッセージが表示されます。HA Management could not be started:oc logs $(oc get po -n ${PROJECT_CPD_INST_OPERANDS} | grep c-${INSTANCE_ID}-${CURRENT_DB_VERSION}-to-${UPGRADING_DB_VERSION} | cut -f1 -d' ') -n ${PROJECT_CPD_INST_OPERANDS} | grep "start wolverine service" -A20[2025-06-04 22:29:38,068] - INFO: start wolverine service Traceback (most recent call last): File "/usr/local/bin/db2_update_upgrade", line 33, in <module> sys.exit(load_entry_point('db2u_containers==1.0.0.dev1', 'console_scripts', 'db2_update_upgrade')()) File "/usr/local/lib/python3.9/site-packages/cli/db2_update_upgrade.py", line 20, in main EngineUpdateUpgrade().execute( File "/usr/local/lib/python3.9/site-packages/upgrade/builder.py", line 103, in execute uu.do_execute(instance=instance, databases=databases, post_upgrade=post_upgrade) File "/usr/local/lib/python3.9/site-packages/upgrade/update_upgrade.py", line 114, in do_execute self.execute(instance=instance, databases=databases, post_upgrade=post_upgrade) File "/usr/local/lib/python3.9/site-packages/upgrade/update_upgrade.py", line 138, in execute self.post_update_upgrade() File "/usr/local/lib/python3.9/site-packages/upgrade/update_upgrade.py", line 227, in post_update_upgrade self._instance._wolverine.init() File "/usr/local/lib/python3.9/site-packages/utils/wolverine/wolverine.py", line 45, in init self._cmdr.execute("wvcli system init --force") File "/usr/local/lib/python3.9/site-packages/utils/command_runner/command.py", line 124, in execute raise CommandException( utils.command_runner.command.CommandException: Command failed to run:Command returned a non-zero returncode: stdout: ok: down: wolverine: 1s Stopping HA Management on node 'c-db2wh-1748927344077963-db2u-0'... Starting HA Management on node 'c-db2wh-1748927344077963-db2u-0'... Waiting for HA Management to come online... Error: timeout reached. HA Management could not be started. See ha.log for details. , stderr: and returncode: 1 command terminated with exit code 1
問題の解決方法
Db2またはDb2 Warehouseサービス・インスタンスのアップグレードの失敗の問題を解決するには、以下の手順を実行します。
- db2u ポッドに入ることで
HA Management状態を確認します。
以下の例は、コマンドの出力を示しています。oc rsh c-${INSTANCE_ID}-db2u-0 bashDefaulted container "db2u" out of: db2u, init-labels (init), init-kernel (init) [db2uadm@c-${INSTANCE_ID}-db2u-0 /]$ su - db2inst1 Last login: Fri Jun 6 14:42:31 UTC 2025 [db2inst1@c-${INSTANCE_ID}-db2u-0 - Db2U db2inst1]$ wvcli system status HA Management is RUNNING at 2025-06-06 14:42:42.568.HA ManagementがRUNNING状態の場合は、ステップ 3 にナビゲートします。 HA ManagementがRUNNING状態でない場合は、wolverine を再始動します。`wvcli system init --force` check the databases is active `db2 list active databases`.spec.resource_configs.m.env.upgrade/podname: 11.5.9.0-cn1-to-12.1.2.0行を削除して形成を終了できるように、形成にパッチを適用します。oc patch formation ${INSTANCE_ID} -n ${PROJECT_CPD_INST_OPERANDS} --type=json -p='[{"op": "remove", "path": "/spec/resource_configs/m/env", "value": "upgrade/podname"}]'- Db2uCluster または Db2uInstance の状況が
Ready状態に変わったことを確認します。oc get db2ucluster ${INSTANCE_ID} -n ${PROJECT_CPD_INST_OPERANDS}oc get db2uinstance ${INSTANCE_ID} -n ${PROJECT_CPD_INST_OPERANDS} - cpd-cli service-instance status コマンドを再度実行して、サービス・インスタンスが
UPRGRADEDであることを確認します。