アップグレードのステップ - 例
既存のリリースから新しいリリースへのデータ・ストアのアップグレードは、一度に1つのストレージ・ノードに対して実行できます。以下の例には、アップグレードの様々なシナリオが取り込まれています。各例は、Oracle NoSQL Databaseソフトウェアを新しいリリースにアップグレードする方法を示しています。
例1: この例では、Oracle NoSQL Databaseをバージョン22.1.7からバージョン23.1.21にアップグレードします。データ・ストアは、容量が1、レプリケーション係数が1です。ここで、
$KVHOME
は/var/kv/kv-22.1.7
、$KVROOT
は/var/kv/kv-22.1.7/kvroot
、$KVHOST
はストレージ・ノードのホスト名です。
runadmin
コマンドを起動して、ストレージ・ノードで管理コマンドライン・インタフェース(CLI)ユーティリティを起動します。このコマンドは、kv
プロンプトを起動します。
pingコマンドを使用して、ストレージ・ノードの管理サービスおよびすべての管理対象サービスをリストします。java -jar $KVHOME/lib/kvstore.jar runadmin -host $KVHOST -port 5000 -security $KVROOT/security/root.login
kv→ping Pinging components of store mystore based upon topology sequence #154 150 partitions and 1 storage nodes Time: 2023-07-14 06:13:33 UTC Version: 22.1.7 Shard Status: healthy:1 writable-degraded:0 read-only:0 offline:0 total:1 Admin Status: healthy Zone [name=zone1 id=zn1 type=PRIMARY allowArbiters=false masterAffinity=false] RN Status: online:1 read-only:0 offline:0 Storage Node [sn1] on localhost:5000 Zone: [name=zone1 id=zn1 type=PRIMARY allowArbiters=false masterAffinity=false] Status: RUNNING Ver: 2023-07-14 06:14:33 UTC Build id: 1473c1dac49c Edition: Enterprise Admin [admin1] Status: RUNNING,MASTER Rep Node [rg1-rn1] Status: RUNNING,MASTER sequenceNumber:330 haPort:5006 available storage size:1023 MB
- ストレージ・ノードが、現行バージョンにアップグレードするために必要な前提条件となるソフトウェア・バージョン以上であることを確認します。
kv-> verify prerequisite Verify: starting verification of store mystore based upon topology sequence #154 150 partitions and 1 storage nodes Time: 2023-07-17 09:27:43 UTC Version: 22.1.7 See localhost:/var/kv/kv-22.1.7/kvroot/mystore/log/mystore_{0..N}.log for progress messages Verify prerequisite: Storage Node [sn1] on localhost: 5000 Zone: [name=zone1 id=zn1 type=PRIMARY allowArbiters=false masterAffinity=false] Status: RUNNING Ver: 22.1.7 2022-02-15 16:36:54 UTC Build id: 61b68fb1a3ec Edition: Enterprise isMasterBalanced: true serviceStartTime: 2023-07-17 08:55:49 UTC Verification complete, no violations
- データ・ストアをアップグレードするには、最新のソフトウェアをストレージ・ノードにインストールする必要があります。詳細は、NoSQLデータベース・インストールのインストールおよび検証を参照してください。
- Oracle NoSQL Databaseストレージ・ノード・エージェントおよび現在のOracle NoSQL Databaseのルート・ディレクトリ(
22.1.7
)に関連するサービスを停止します。java -Xmx64m -Xms64m -jar $KVHOME/lib/kvstore.jar stop -root $KVROOT
- 更新されたソフトウェア・リリース(
23.1.21
)を使用してストレージ・ノードを再起動します。ここで、$NEW_KVHOME
は/var/kv/kv-23.1.21
、$KVROOT
は/var/kv/kv-22.1.7/kvroot
ですnohup java -Xmx64m -Xms64m -jar $NEW_KVHOME/lib/kvstore.jar start -root $KVROOT &
runadmin
コマンドを起動して、更新されたソフトウェア・リリースを現在実行しているストレージ・ノードで管理コマンドライン・インタフェース(CLI)ユーティリティを起動します。このコマンドは、kv
プロンプトを起動します。java -Xmx64m -Xms64m -jar $NEW_KVHOME/lib/kvstore.jar runadmin -port 5000 -host $KVHOST -security $KVROOT/security/root.login
- ストア構成を検証して、アップグレードが正常に完了したかどうかを確認します。
kv-> verify configuration Verify: starting verification of store mystore based upon topology sequence #154 150 partitions and 1 storage nodes Time: 2023-07-17 09:33:10 UTC Version: 23.1.21 See localhost:/var/kv/kv-22.1.7/kvroot/mystore/log/mystore_{0..N}.log for progress messages Verify: Shard Status: healthy: 1 writable-degraded: 0 read-only: 0 offline: 0 total: 1 Verify: Admin Status: healthy Verify: Zone [name=zone1 id=zn1 type=PRIMARY allowArbiters=false masterAffinity=false] RN Status: online: 1 read-only: 0 offline: 0 Verify: == checking storage node sn1 == Verify: Storage Node [sn1] on localhost: 5000 Zone: [name=zone1 id=zn1 type=PRIMARY allowArbiters=false masterAffinity=false] Status: RUNNING Ver: 23.1.21 2023-04-18 21:25:44 UTC Build id: 477e7f102ab4 Edition: Enterprise isMasterBalanced: true serviceStartTime: 2023-07-17 09:32:29 UTC Verify: Admin [admin1] Status: RUNNING,MASTER serviceStartTime: 2023-07-17 09:32:41 UTC stateChangeTime: 2023-07-17 09:32:39 UTC availableStorageSize: 2 GB Verify: rg1-rn1: Storage directory on rg1-rn1 is running low [/var/kv/test1 size: 1 GB available: 1023 MB] Verify: Rep Node [rg1-rn1] Status: RUNNING,MASTER sequenceNumber: 4,244 haPort: 5006 availableStorageSize: 1023 MB storageType: HD serviceStartTime: 2023-07-17 09:32:52 UTC stateChangeTime: 2023-07-17 09:32:56 UTC Verification complete, 0 violations, 1 note found. Verification note: [rg1-rn1] Storage directory on rg1-rn1 is running low [/var/kv/test1 size: 1 GB available: 1023 MB].
例2: Oracle NoSQL Databaseを非常に古いバージョンから現在のバージョンに直接アップグレードするときにエラーが発生しました。
この例では、Oracle NoSQL Databaseをバージョン19.5.9からバージョン23.1.21にアップグレードします。ここで、$KVHOME
は/var/kv/kv-19.5.9
、$KVROOT
は/var/kv/kv-19.5.9/kvroot
です。
次の例は、バージョン19.5.9からバージョン23.1.21にアップグレードしようとしたときに発生したエラーを示しています。
- データ・ストアをアップグレードするには、最新のソフトウェアをストレージ・ノードにインストールする必要があります。詳細は、NoSQLデータベース・インストールのインストールおよび検証を参照してください。
- Oracle NoSQL Databaseストレージ・ノード・エージェントおよび現在のOracle NoSQL Databaseのルート・ディレクトリ(
19.5.9
)に関連するサービスを停止します。java -Xmx64m -Xms64m -jar $KVHOME/lib/kvstore.jar stop -root $KVROOT
- 更新されたソフトウェア・リリース(
23.1.21
)を使用してストレージ・ノードを再起動します。
次に示すように、エラーが発生したことを示す出力が表示されます。nohup java -Xmx64m -Xms64m -jar $NEW_KVHOME/lib/kvstore.jar start -root $KVROOT &
[1]+ Exit 1 nohup java -Xmx64m -Xms64m -jar /var/kv/kv-23.1.21/lib/kvstore.jar start -root /var/kv/kv-19.5.9/kvroot
nohup.out
ファイルを開いてエラーを表示します。
このエラーを回避するには、データ・ストアを19.5.9から任意の20.*.*リリースにアップグレードしてから、23.1.21にアップグレードする必要があります。vi nohup.out Failed to start SNA: The previous software version 19.5.9 does not satisfy the prerequisite for 23.1.21 which requires version 20.1.12 or later.
例3: 複数のストレージ・ノードを持つデータ・ストアをアップグレードします。
この例では、Oracle NoSQL Databaseをバージョン22.1.7からバージョン23.1.21にアップグレードします。データ・ストアは、容量が1、レプリケーション係数が2です。データ・ストアに2つのストレージ・ノードがあります。ここで、
$KVHOME
は/var/kv/kv-22.1.7
、$KVROOT
は/var/kv/kv-22.1.7/kvroot
、$KVHOST
は最初のストレージ・ノードのホスト名です。
runadmin
コマンドを起動して、既存のソフトウェア・リリース(22.1.7)を現在実行しているストレージ・ノードで管理コマンドライン・インタフェース(CLI)ユーティリティを起動します。このコマンドは、kv
プロンプトを起動します。java -jar $KVHOME/lib/kvstore.jar runadmin -host $KVHOST -port 5000 -security $KVROOT/security/root.login
- pingコマンドを使用して、データ・ストアのランタイム・エンティティに関する情報を返します。
kv→ping Pinging components of store mystore based upon topology sequence #156 150 partitions and 2 storage nodes Time: 2023-07-17 15:21:02 UTC Version: 22.1.7 Shard Status: healthy: 1 writable-degraded: 0 read-only: 0 offline: 0 total: 1 Admin Status: healthy Zone [name=zone1 id=zn1 type=PRIMARY allowArbiters=false masterAffinity=false] RN Status: online: 2 read-only: 0 offline: 0 maxDelayMillis: 1 maxCatchupTimeSecs: 0 Storage Node [sn1] on <XX>.com: 5000 Zone: [name=zone1 id=zn1 type=PRIMARY allowArbiters=false masterAffinity=false] Status: RUNNING Ver: 22.1.7 2023-04-18 21:25:44 UTC Build id: 477e7f102ab4 Edition: Enterprise isMasterBalanced: true serviceStartTime: 2023-07-17 10:29:33 UTC Admin [admin1] Status: RUNNING,MASTER serviceStartTime: 2023-07-17 10:29:44 UTC stateChangeTime: 2023-07-17 10:29:42 UTC availableStorageSize: 2 GB Rep Node [rg1-rn1] Status: RUNNING,MASTER sequenceNumber: 4,259 haPort: 5006 availableStorageSize: 1023 MB storageType: HD serviceStartTime: 2023-07-17 10:29:56 UTC stateChangeTime: 2023-07-17 13:29:29 UTC Storage Node [sn2] on <XX>.com: 5000 Zone: [name=zone1 id=zn1 type=PRIMARY allowArbiters=false masterAffinity=false] Status: RUNNING Ver: 22.1.7 2023-04-18 21:25:44 UTC Build id: 477e7f102ab4 Edition: Enterprise isMasterBalanced: true serviceStartTime: 2023-07-17 13:29:18 UTC Admin [admin2] Status: RUNNING,REPLICA serviceStartTime: 2023-07-17 13:29:24 UTC stateChangeTime: 2023-07-17 13:29:23 UTC availableStorageSize: 2 GB Rep Node [rg1-rn2] Status: RUNNING,REPLICA sequenceNumber: 4,259 haPort: 5006 availableStorageSize: 99 MB storageType: HD serviceStartTime: 2023-07-17 13:29:25 UTC stateChangeTime: 2023-07-17 13:29:29 UTC delayMillis: 1 catchupTimeSecs: 0
- ストレージ・ノードが、現行バージョンにアップグレードするために必要な前提条件となるソフトウェア・バージョン以上であることを確認します。
kv-> verify prerequisite Verify: starting verification of store mystore based upon topology sequence #156 150 partitions and 2 storage nodes Time: 2023-07-17 15:30:45 UTC Version: 22.1.7 See <XX>.com:/var/kv/kv-22.1.7/kvroot/mystore/log/mystore_{0..N}.log for progress messages Verify prerequisite: Storage Node [sn1] on <XX>.com: 5000 Zone: [name=zone1 id=zn1 type=PRIMARY allowArbiters=false masterAffinity=false] Status: RUNNING Ver: 22.1.7 2023-04-18 21:25:44 UTC Build id: 477e7f102ab4 Edition: Enterprise isMasterBalanced: true serviceStartTime: 2023-07-17 10:29:33 UTC Verify prerequisite: Storage Node [sn2] on <XX>.com: 5000 Zone: [name=zone1 id=zn1 type=PRIMARY allowArbiters=false masterAffinity=false] Status: RUNNING Ver: 22.1.7 2023-04-18 21:25:44 UTC Build id: 477e7f102ab4 Edition: Enterprise isMasterBalanced: true serviceStartTime: 2023-07-17 13:29:18 UTC Verification complete, no violations.
- データ・ストアをアップグレードするには、最新のソフトウェアをすべてのストレージ・ノードにインストールする必要があります。最初のストレージ・ノード(sn1)で、新しいバージョンのソフトウェアをインストールします。詳細は、NoSQLデータベース・インストールのインストールおよび検証を参照してください。
- Oracle NoSQL Databaseストレージ・ノード・エージェントおよび現在のOracle NoSQL Databaseのルート・ディレクトリ(
22.1.7
)に関連するサービスを停止します。java -Xmx64m -Xms64m -jar $KVHOME/lib/kvstore.jar stop -root $KVROOT
- 更新されたソフトウェア・リリース(
23.1.21
)を使用して最初のストレージ・ノードを再起動します。ここで、$NEW_KVHOME
は/var/kv/kv-23.1.21
、$KVROOT
は/var/kv/kv-22.1.7/kvroot
です。nohup java -Xmx64m -Xms64m -jar $NEW_KVHOME/lib/kvstore.jar start -root $KVROOT &
runadmin
コマンドを起動して、更新されたソフトウェア・リリースを現在実行しているストレージ・ノードで管理コマンドライン・インタフェース(CLI)ユーティリティを起動します。このコマンドは、kv
プロンプトを起動します。java -Xmx64m -Xms64m -jar $NEW_KVHOME/lib/kvstore.jar runadmin -port 5000 -host $KVHOST -security $KVROOT/security/root.login
- ストア構成を検証して、最初のストレージ・ノード(sn1)のアップグレードが正常に完了したかどうかを確認します。
kv-> verify upgrade Verify: starting verification of store mystore based upon topology sequence #156 150 partitions and 2 storage nodes Time: 2023-07-17 10:35:44 UTC Version: 23.1.21 See <XX>.com:/var/kv/kv-22.1.7/kvroot/mystore/log/mystore_{0..N}.log for progress messages Verify upgrade: Storage Node [sn1] on <XX>.com: 5000 Zone: [name=zone1 id=zn1 type=PRIMARY allowArbiters=false masterAffinity=false] Status: RUNNING Ver: 23.1.21 2023-04-18 21:25:44 UTC Build id: 477e7f102ab4 Edition: Enterprise isMasterBalanced: true serviceStartTime: 2023-07-17 10:29:33 UTC Verify: sn2: Node needs to be upgraded from 22.1.7 to version 23.1.21 or newer Verify upgrade: Storage Node [sn2] on <XX>.com: 5000 Zone: [name=zone1 id=zn1 type=PRIMARY allowArbiters=false masterAffinity=false] Status: RUNNING Ver: 22.1.7 2022-02-15 16:36:54 UTC Build id: 61b68fb1a3ec Edition: Enterprise isMasterBalanced: true serviceStartTime: 2023-07-17 10:18:09 UTC Verification complete, 0 violations, 1 note found. Verification note: [sn2] Node needs to be upgraded from 22.1.7 to version 23.1.21 or newer
- アップグレードするストレージ・ノードの順序付きリストを取得します。次の出力は、ストレージ・ノードsn2をアップグレードする必要があることを示しています。
kv-> show upgrade-order Calculating upgrade order,target version: 23.1.21,prerequisite: 20.1.12 sn2
- 2番目のストレージ・ノード(sn2)で、新しいバージョンのソフトウェアをインストールします。詳細は、NoSQLデータベース・インストールのインストールおよび検証を参照してください。
ノート:
ソフトウェア(kv-23.1.21.zip
)は、ストレージ・ノードsn1からストレージ・ノードsn2にすでにコピーされています。 - Oracle NoSQL Databaseストレージ・ノード・エージェントおよび現在のOracle NoSQL Databaseのルート・ディレクトリ(
22.1.7
)に関連するサービスを停止します。java -Xmx64m -Xms64m -jar $KVHOME/lib/kvstore.jar stop -root $KVROOT
- 更新されたソフトウェア・リリース(
23.1.21
)を使用して2番目のストレージ・ノードを再起動します。ここで、$NEW_KVHOME
は/var/kv/kv-23.1.21
、$KVROOT
は/var/kv/kv-22.1.7/kvroot
です。nohup java -Xmx64m -Xms64m -jar $NEW_KVHOME/lib/kvstore.jar start -root $KVROOT &
runadmin
コマンドを起動して、更新されたソフトウェア・リリースを現在実行しているストレージ・ノードで管理コマンドライン・インタフェース(CLI)ユーティリティを起動します。ここで、$KVHOST
は最初のストレージ・ノード(sn1)のホスト名です。java -Xmx64m -Xms64m -jar $NEW_KVHOME/lib/kvstore.jar runadmin -port 5000 -host $KVHOST -security $KVROOT/security/root.login
- ストア構成を検証して、2番目のストレージ・ノード(sn2)のアップグレードが正常に完了したかどうかを確認します。
kv-> verify upgrade Verify: starting verification of store mystore based upon topology sequence #156 150 partitions and 2 storage nodes Time: 2023-07-17 13:32:24 UTC Version: 23.1.21 See <XX>.com:/var/kv/kv-22.1.7/kvroot/mystore/log/mystore_{0..N}.log for progress messages Verify upgrade: Storage Node [sn1] on <XX>.com: 5000 Zone: [name=zone1 id=zn1 type=PRIMARY allowArbiters=false masterAffinity=false] Status: RUNNING Ver: 23.1.21 2023-04-18 21:25:44 UTC Build id: 477e7f102ab4 Edition: Enterprise isMasterBalanced: true serviceStartTime: 2023-07-17 10:29:33 UTC Verify upgrade: Storage Node [sn2] on <XX>.com: 5000 Zone: [name=zone1 id=zn1 type=PRIMARY allowArbiters=false masterAffinity=false] Status: RUNNING Ver: 23.1.21 2023-04-18 21:25:44 UTC Build id: 477e7f102ab4 Edition: Enterprise isMasterBalanced: true serviceStartTime: 2023-07-17 13:29:18 UTC Verification complete, no violations.
- 他のストレージ・ノードをアップグレードする必要があるかどうかを確認します。
出力には、すべてのストレージ・ノードのアップグレードが完了したことが示されます。kv-> show upgrade-order Calculating upgrade order, target version: 23.1.21, prerequisite: 20.1.12 There are no nodes that need to be upgraded