|
この文書は自動機械翻訳技術を使用して翻訳されています。 正確な翻訳を提供するように努めておりますが、翻訳された内容の完全性、正確性、信頼性については一切保証いたしません。 相違がある場合は、元の英語版 英語 が優先され、正式なテキストとなります。 |
|
これは未公開の文書です SUSE® Storage 1.12 (Dev). |
SUSE Storageへの移行
|
アップグレードを実行する前に、Longhornシステムバックアップを作成することをお勧めします。これにより、ボリュームやバックイメージなどのすべての重要なリソースがバックアップされ、問題が発生した場合に復元できることが保証されます。 |
前提条件
[ツール]
-
Helm v3.0以上が必要です。
-
Longhornコマンドラインツールを使用して、SUSE Storage環境の潜在的な問題を確認できます。
認証
-
SUSE Application Collection OCIチャートリポジトリでHelmを認証するには、 Helm認証ドキュメントを参照してください。
-
Kubernetesがレジストリからイメージをプルできるようにするには、 Kubernetes認証ドキュメントに従ってシークレットを作成し、`global.imagePullSecrets`チャート値を設定してください。
Helm経由でデプロイされたLonghornをSUSE Storageに移行する
既存のLonghornインストールがHelm経由でデプロイされている場合、`helm list --all-namespaces`を実行することで確認できます。デフォルトでは、Longhornをインストールするために使用されるHelmリリースは`longhorn`という名前ですが、ユーザーによって定義されたカスタム名である可能性もあります。
次に、アップグレード中に適用したいカスタマイズ設定を含む`values.yaml`ファイルをオプションで作成します。
SUSE Storageチャートを使用してSUSE Storageへのアップグレードを進めます:
helm upgrade longhorn oci://dp.apps.rancher.io/charts/suse-storage \
--namespace longhorn-system \
--version <version> \ # Replace with the version you would like to upgrade to
--set global.imagePullSecrets=<PULL_IMAGE_SECRET>
オプションで、カスタマイズ設定を含む`values.yaml`ファイルがある場合は、`-f`フラグと共にそれを含めます:
helm upgrade longhorn oci://dp.apps.rancher.io/charts/suse-storage \
--namespace longhorn-system \
--version <version> \ # Replace with the version you would like to upgrade to
--set global.imagePullSecrets=<PULL_IMAGE_SECRET> \
-f values.yaml
Rancher Apps Marketplace経由でデプロイされたLonghornをSUSE Storageに移行する
既存のLonghornインストールがRancher Apps Marketplace経由でデプロイされている場合、`helm list --all-namespaces | grep longhorn`を実行するとLonghornに関連付けられた2つのHelmリリースが表示されます。
以下の例は、Rancherチャート経由でインストールされたLonghorn v1.10.1をSUSE Storage v1.10.1に移行するものです。
$ helm list --all-namespaces | grep longhorn
longhorn longhorn-system 1 2025-11-12 02:58:40.877484249 +0000 UTC deployed 108.2.0+up1.10.1 v1.10.1
longhorn-crd longhorn-system 1 2025-11-12 02:58:38.192579711 +0000 UTC deployed longhorn-crd-108.2.0+up1.10.1 v1.10.1
既存のRancher LonghornインストールをSUSE Storageに移行するには、CRDを削除せずに`longhorn-crd` Helmリリースを削除し、以下の手順に従って`longhorn` Helmリリースをアップグレードする必要があります。
CRDを保持しながら`longhorn-crd` Helmリリースを削除する
Longhorn CRD自体を保持しながら、システムから`longhorn-crd` Helmリリースを削除するには、以下の手順に従ってください:
-
現在の`longhorn-crd` Helmリリースのバージョンを確認します:
helm list --all-namespaces | grep longhorn-crd出力には、`longhorn-crd`リリースの詳細が表示されます。例えば:
longhorn-crd longhorn-system 1 2025-11-12 02:58:38.192579711 +0000 UTC deployed longhorn-crd-108.2.0+up1.10.1+up1.11.0 v1.10.1この例では、リリースバージョンは`108.2.0+up1.10.1`です。
-
現在のリリースに一致する`longhorn-crd`チャートの特定のバージョンを含む`rancher/charts`リポジトリをクローンします(例えば、Longhorn v1.10.1の場合は`108.2.0+up1.10.1`):
git clone https://github.com/rancher/charts.gitクローンしたリポジトリ内の`longhorn-crd`チャートバージョンに対応するディレクトリに移動します。
または、このスクリプトを実行して`longhorn-crd`チャートに対して処理を行うことができます。
コマンド`bash ./download-longhorn-crd-chart.sh 108.2.0+up1.10.1`を実行した後、`longhorn-crd`チャートがローカルディレクトリ`108.2.0+up1.10.1`にダウンロードされます。次に、`108.2.0+up1.10.1/Chart.yaml`を開いてチャートバージョンが`108.2.0+up1.10.1`と一致していることを確認します。
-
クローンした`longhorn-crd`チャート内の`templates/crds.yaml`にある*各カスタムリソース定義(CRD)*に`helm.sh/resource-policy: keep`アノテーションを手動でパッチします。これにより、リリースがアンインストールされるときにHelmがCRDを削除しないことが保証されます。 または、スクリプトを使用してアノテーションを自動的にパッチできます:
bash ./patch-resource-policy-annotation.sh 108.2.0+up1.10.1/templates/crds.yamlCRDが正しくパッチされていることを確認するには、次を実行します:
vimdiff /tmp/crds.yaml.original 108.2.0+up1.10.1/templates/crds.yaml -
ローカルでパッチされたチャートを使用して`longhorn-crd` Helmリリースをアップグレードします:
helm upgrade longhorn-crd -n longhorn-system ./108.2.0+up1.10.1 -
システムから`longhorn-crd` Helmリリースをアンインストールします。適用されたパッチにより、CRDはそのまま残ります。
helm uninstall longhorn-crd --namespace longhorn-systemlonghorn-crdHelmリリースをアンインストールしてもCRDが保持されていることが確認できます。$ helm uninstall longhorn-crd --namespace longhorn-system These resources were kept due to the resource policy: [CustomResourceDefinition] backingimagedatasources.longhorn.io [CustomResourceDefinition] backingimagemanagers.longhorn.io [CustomResourceDefinition] nodes.longhorn.io [CustomResourceDefinition] orphans.longhorn.io [CustomResourceDefinition] recurringjobs.longhorn.io [CustomResourceDefinition] replicas.longhorn.io [CustomResourceDefinition] settings.longhorn.io [CustomResourceDefinition] sharemanagers.longhorn.io [CustomResourceDefinition] snapshots.longhorn.io [CustomResourceDefinition] supportbundles.longhorn.io [CustomResourceDefinition] systembackups.longhorn.io [CustomResourceDefinition] systemrestores.longhorn.io [CustomResourceDefinition] backingimages.longhorn.io [CustomResourceDefinition] volumeattachments.longhorn.io [CustomResourceDefinition] volumes.longhorn.io [CustomResourceDefinition] backupbackingimages.longhorn.io [CustomResourceDefinition] backups.longhorn.io [CustomResourceDefinition] backuptargets.longhorn.io [CustomResourceDefinition] backupvolumes.longhorn.io [CustomResourceDefinition] engineimages.longhorn.io [CustomResourceDefinition] engines.longhorn.io [CustomResourceDefinition] instancemanagers.longhorn.io
Longhorn CRD内の`longhorn-crd`を`longhorn`に置き換えます。
longhorn-crd Helmリリースがアンインストールされ、CRDが保持されていることを確認した後、メインの`longhorn` Helmチャートの準備のために既存のLonghorn CRDの所有権ラベルを更新する必要があります。置き換えを実行するためにシェルスクリプトを適用します。
SUSE Storageにアップグレードします。
CRDが準備された後、LonghornインストールをSUSE Storageにアップグレードする手続きを進めることができます:
helm upgrade longhorn oci://dp.apps.rancher.io/charts/suse-storage \
--namespace longhorn-system \
--version <version> \ # Replace with the version you would like to upgrade to
--set global.imagePullSecrets=<PULL_IMAGE_SECRET>
オプションで、カスタマイズ設定を含む`values.yaml`ファイルがある場合は、`-f`フラグと共にそれを含めます:
helm upgrade longhorn oci://dp.apps.rancher.io/charts/suse-storage \
--namespace longhorn-system \
--version <version> \ # Replace with the version you would like to upgrade to
--set global.imagePullSecrets=<PULL_IMAGE_SECRET> \
-f values.yaml