ExaDB-D（ExaCS）でデータベース・ホームの作成に失敗する場合

この記事は、JPOUG Advent Calendar 2023 14日目の記事です。
13日目は、shino|ほかいち さんの記事「Oracle Database をサブスクで利用する（AWS RDS for Oracle・OCI BaseDB）」でした。

ここでは、ExaDB-D（ExaCS）構築のトラブル事例について記載しています。

ExaDB-D（ExaCS）でデータベース・ホームを作成する場合、以下のようなエラーで失敗することがあります。
```
Database job: Failed. [FATAL][DBAAS-60022] Command ‘/var/opt/oracle/dbaastoools/pilot/bin/pilot –plugin
Deplay_dbhome_cloud ORACLE_HOME_VERSION=”19.14.0.0” DBAASAPI_JOB_ID=”e159227d-67a2-4486-be44-bba4809a7539”
-J-Doracle.install.commons.pilot.log.enablePID=true  -lockLocation /var/opt/oracle/dbaas_acfs –LogLevel FINE
-bootstrapLocation /var/opt/oracle/dbaastools_base –logDir /var/opt/oracle/log/dbHome/create –silent
-checkpointDir /var/opt/oracle/log/pilot_checkpoints –jreLoc /usr/java/jdk1.8.0_351-amd64/jre ‘execution has failed on nodes [localnode].
Action: Refer application log file for more information.
Result of node:localnode
[Execution of OH_image_validate failed, [FATAL][DBAAS-60144] Failed to determine image tag for given verstion
’19.14.0.0.0’ and bp “.,*******PLUGIN EXECUTION FAILED *******,Executing jobs which need to be run always...,--------------,
Running OH_creation_release_lock job, Completed OH_creation_release_lock job,---------------,Running
Plugin_cleanup job,Completed Plugin_cleanup job,Completed execution.]
Exit code of the operation:255
```

この場合、ORACLE_HOMEを作成するためには、dbaastoolsを新しくする必要があります。

### dbaastools を最新にする手順
#### 1.現在のdbaastoolsのバージョン確認
```
[root@db01 ~]# rpm -qa|grep -i dbaastools
dbaastools_exa-1.0-1+22.3.1.0.1_220721.1435.x86_64
```

#### 2.運管ネットワークにオブジェクトストレージへのスタティックルートの追加
※すべてのDBノードで実施します。
```
[root@db01 ~]# cat /etc/sysconfig/network-scripts/route-bondeth1
xx.xxx.xxx.xx/xx dev bondeth1 table 218
default via xx.xxx.xxx.xx dev bondeth1 table 218
134.70.0.0/17 via xx.xxx.xxx.xx dev bondeth1  ←オブジェクトストレージ用のエントリを追加
```
#### 3.運管ネットワークインターフェースの再起動
※すべてのDBノードで実施します。
```
[root@db01 ~]# ifdown bondeth1; ifup bondeth1;
/sbin/ifup-local: /sbin/ifup-local bondeth1:
/sbin/ifup-local:  + RoCE configuration...
/sbin/ifup-local: RoCE Configuration: Nothing to do for bondeth1.
/sbin/ifup-local:  + Non-RoCE Configuration...
/sbin/ifup-local: Non-RoCE Configuration: Nothing to do for bondeth1.
```

#### 4.インストール可能なdbaastoolsのバージョンを確認する
※DBノード1号機でのみ実施します。
```
[root@db01 ~]# dbaascli patch tools list
DBAAS CLI version 22.3.1.0.1
Executing command patch tools list
Checking Current tools on all nodes

db01: Patchid : 22.3.1.0.1_220721.1435

Available Patches
Patchid : 22.3.1.1.0_220826.0317
Patchid : 22.4.1.0.1_221110.2215
Patchid : 22.4.1.0.1_221121.1117(LATEST)
```
22.4.1.0.1_221121.1117 が最新であることが分かります

#### 5.dbaastoolsを最新にアップデートします
※DBノード1号機でのみ実施します。
```
[root@db01 ~]# dbaascli patch tools apply --patchid LATEST
DBAAS CLI version 22.3.1.0.1
Executing command patch tools apply --patchid LATEST
[INFO] [DBAAS-14011] - The usage of this command is deprecated.
   ACTION: It is recommended to use 'dbaascli admin updateStack' for this operation. 
Updated dbaastools rpm to dbaastools_exa-1.0-1+22.4.1.0.1_221121.1117.x86_64
```

#### 6.dbaastoolsのバージョンが新しくなっていることを確認します
※DBノード1号機でのみ実施します。
```
[root@db01 ~]# rpm -qa|grep -i dbaastools
dbaastools_exa-1.0-1+22.4.1.0.1_221121.1117.x86_64
```

#### 7.dbaastoolsが最新であれば以下のようなメッセージが出ます
※DBノード1号機でのみ実施します。
```
[root@db01 ~]# dbaascli patch tools list
DBAAS CLI version 22.4.1.0.1
Executing command patch tools list
Checking Current tools on all nodes

db01: Patchid : 22.4.1.0.1_221121.1117
No applicable tools patches are available

db02: Patchid : 22.4.1.0.1_221121.1117
No applicable tools patches are available

All Nodes have the same tools version
```