StarRocks のアップグレード
この トピックでは、StarRocks クラスタをアップグレードする方法について説明します。
重要な情報
StarRocks をアップグレードする前に以下を行ってください:
概要
アップグレードする前にこのセクションの情報を確認し、推奨されるアクションを実行してください。
StarRocks のバージョン
StarRocks のバージョンは、Major.Minor.Patch の形式で表され、例えば 2.5.4 です。最初の数字は StarRocks のメジャーバージョンを表し、2 番目の数字はマイナーバージョンを、3 番目の数字はパッチバージョンを表します。
注意
既存の共有なしクラスタを共有データクラスタにアップグレードすることはできませんし、その逆もできません。新しい共有データクラスタをデプロイする必要があります。
アップグレードパス
-
パッチバージョンのアップグレードの場合
StarRocks クラスタをパッチバージョン間でアップグレードできます。例えば、v2.2.6 から直接 v2.2.11 へアップグレードできます。
-
マイナーバージョンのアップグレードの場合
StarRocks v2.0 以降では、StarRocks クラスタをマイナーバージョン間でアップグレードできます。例えば、v2.2.x から直接 v2.5.x へアップグレードできます。ただし、互換性と安 全性の理由から、StarRocks クラスタを一つのマイナーバージョンから次のバージョンへ順次アップグレードすることを強くお勧めします。例えば、StarRocks v2.2 クラスタを v2.5 にアップグレードするには、次の順序でアップグレードする必要があります: v2.2.x --> v2.3.x --> v2.4.x --> v2.5.x。
-
メジャーバージョンのアップグレードの場合
StarRocks クラスタを v3.0 にアップグレードするには、まず v2.5 にアップグレードする必要があります。
注意
例えば、2.4->2.5->3.0->3.1->3.2 のように連続したマイナーバージョンのアップグレードを行う必要がある場合、またはアップグレードが失敗した後にクラスタをダウングレードし、再度アップグレードを行いたい場合、例えば 2.5->3.0->2.5->3.0 のように、いくつかの Follower FE のメタデータアップグレードの失敗を防ぐために、2 つの連続したアップグレードの間、またはダウングレード後の 2 回目のアップグレードの試行前に次の手順を実行してください:
- ALTER SYSTEM CREATE IMAGE を実行して新しいイメージを作成します。
- 新しいイメージがすべての Follower FE に同期されるのを待ちます。
イメージファイルが同期されたかどうかは、Leader FE のログファイル fe.log を確認することで確認できます。"push image.* from subdir [] to other nodes. totally xx nodes, push successful xx nodes" のようなログ記録があれば、イメージファイルが正常に同期されたことを示しています。
アップグレード手順
StarRocks はローリングアップグレードをサポートしており、サービスを停止せずにクラスタをアップグレードできます。設計上、BEs と CNs は FEs と後方互換性があります。そのため、クラスタを適切に動作させながらアップグレードするために、まず BEs と CNs をアップグレードし、その後 FEs をアップグレードする必要があります。逆の順序でアップグレードすると、FEs と BEs/CNs 間の互換性が失われ、サービスがクラッシュする可能性があります。FE ノードの場合、まずすべての Follower FE ノードをアップグレードしてから Leader FE ノードをアップグレードする必要があります。
始める前に
準備中に、マイナーまたはメジャーバージョンのアップグレードを行う場合は、互換性のある設定を行う必要があります。また、クラスタ内のすべてのノードをアップグレードする前に、FEs と BEs のいずれかでアップグレードの可用性テストを実行する必要があります。