5.2. OADP リリースノート
5.2.1. OADP 1.4 リリースノート リンクのコピーリンクがクリップボードにコピーされました!
OpenShift API for Data Protection (OADP) 1.4 のリリースノートには、新機能と機能強化、非推奨となった機能、製品に関する推奨事項、既知の問題、および解決済みの問題が記載されています。
OADP に関する詳細は、OpenShift API for Data Protection (OADP) FAQ を 参照してください。
5.2.1.1. OADP 1.4.9 リリースノート リンクのコピーリンクがクリップボードにコピーされました!
OpenShift API for Data Protection (OADP) 1.4.9 のリリースノートには、解決済みの問題が記載されています。
5.2.1.1.1. 解決された問題 リンクのコピーリンクがクリップボードにコピーされました!
- ファイルシステムのバックアップでは、除外された PVC に対して
PodVolumeBackupCR が作成されなくなりました。 このアップデート以前は、
defaultVolumesToFsBackup: trueを指定してファイルシステム (FS) のバックアップを実行し、includedResourcesを使用してpersistentvolumeclaims(PVC) を明示的に除外した場合でも、除外された PVC に対してPodVolumeBackupリソースが作成されていました。今回のリリースでは、バックアップロジックが更新され、persistentvolumeclaimsタイプがバックアップ設定から明示的に除外されている場合、それらのPodVolumeBackupリソースの作成を正しく識別してスキップするようにしました。その結果、除外された PVC に対してPodVolumeBackupCR は作成されなくなりました。- S3 ストレージは、
insecureSkipTLSVerify: "true"を指定してプロキシー値を使用します。 このアップデート以前は、プロキシーが必要な環境でイメージレジストリーのバックアップを S3 ストレージに実行する場合、
insecureSkipTLSVerify: "true"を設定すると、システムが設定済みのプロキシーを無視し、バックアップがハングアップしたり失敗したりすることがありました。今回のリリースでは、バックアップロジックが更新され、プロキシー設定を適切に反映するようになりました。その結果、insecureSkipTLSVerifyが true または false に設定されているかどうかに関わらず、backupImages: trueを使用したバックアップは正常に完了するようになりました。- DPA リコンシリエーションは、VSL が欠落している認証キーを参照している場合に明確なエラーで失敗します。
このアップデート以前は、
DataProtectionApplication(DPA) は参照先のシークレットにVolumeSnapshotLocation(VSL)credential.keyが存在することを検証していなかったため、DPA は誤ったキー名でも正常に同期できてしまう可能性がありました。これにより、設定ミスのある VSL 認証情報がリコンシリエーションを通過してしまうことがありましたが、その後、バックアップの検証が失敗し、指定されたキーに対応するデータがシークレットに不足しているというエラーが発生するようになりました。今回のリリースでは、DPA のリコンシリエーション処理において、参照先のシークレットにcredential.keyが存在するかどうかが確認され、存在しない場合は明確なエラーメッセージが表示されて処理が失敗します。- Velero クラウド認証情報に対する制限された権限
今回のアップデート以前は、Velero の
/credentials/cloudsecret が誤った権限でマウントされていたため、誰でも読み取り可能な状態になっていました。その結果、コンテナーファイルシステムにアクセスできるプロセスやユーザーは、機密性の高いクラウド認証情報を読み取ることが可能になる。今回のリリースで、Velero の秘密鍵のデフォルト権限が0640に変更されました。その結果、認証情報ファイルへのアクセスは、意図された所有者またはグループに限定されます。oadp-<bsl_name>-<bsl_provider>-registry-secretなしでイメージストリームバックアップを実行した際のエラーを改善しました。このアップデート以前は、バックアップとバックアップストレージロケーション (BSL) が Data Protection Application (DPA) の範囲外で管理されている場合、DPA は関連する
oadp-<bsl_name>-<bsl_provider>-registry-secretを作成しませんでした。その結果、OpenShift Velero プラグインはイメージストリームのバックアップ中にパニックを起こし、以下のパニックエラーが発生しました。024-02-27T10:46:50.028951744Z time="2024-02-27T10:46:50Z" level=error msg="Error backing up item" backup=openshift-adp/<backup name> error="error executing custom action (groupResource=imagestreams.image.openshift.io, namespace=<BSL Name>, name=postgres): rpc error: code = Aborted desc = plugin panicked: runtime error: index out of range with length 1, stack trace: goroutine 94…このリリースでは、必要なシークレットが見つからない場合、プラグインは
oadp-<bsl_name>-<bsl_provider>-registry-secretが見つからないことを示すエラーメッセージを返します。- シングルノードの OpenShift クラスターは、API 初期化前の CRD 同期が原因でクラッシュしなくなりました。
今回のアップデート以前は、OpenShift Container Platform のカスタムリソース定義 (CRD) が完全に初期化される前に不足していたため、イメージベースのアップグレード (IBU) 中にコントローラーがクラッシュしていました。その結果、この障害により、IBU アップグレード中の
データ保護アプリケーション(DPA) のリコンシリエーションが 8 分間遅延した。今回のリリースでは、シングルノードの OpenShift 上の IBU 環境において、コントローラーが起動する前に OpenShift Container Platform の CRD がロードされるまで待機するようにすることで、この問題を解決します。また、リーダー選出も無効にします。この変更により、DPA リコンシリエーションウィンドウが短縮され、シングルノードの OpenShift クラスターの全体的なアップグレード期間が改善されます。- OADP 1.4.9 では、以下の CVE が修正されています。
5.2.1.2. OADP 1.4.8 リリースノート リンクのコピーリンクがクリップボードにコピーされました!
OpenShift API for Data Protection (OADP) 1.4.8 は、コンテナーの健全性評価を更新するためにリリースされた、Container Grade Only (CGO) のリリースです。OADP 1.4.7 と比較して、製品自体のコードに変更はありません。OADP 1.4.8 では、いくつかの Common Vulnerabilities and Exposures (CVE) が修正されています。
5.2.1.2.1. 解決された問題 リンクのコピーリンクがクリップボードにコピーされました!
- OADP 1.4.8 では、以下の CVE が修正されています。
5.2.1.3. OADP 1.4.7 リリースノート リンクのコピーリンクがクリップボードにコピーされました!
OpenShift API for Data Protection (OADP) 1.4.7 は、コンテナーのヘルスグレードを更新するためにリリースされた Container Grade Only (CGO)リリースです。OADP 1.4.6 と比較して、製品自体のコードは変更されませんでした。
5.2.1.4. OADP 1.5.3 リリースノート リンクのコピーリンクがクリップボードにコピーされました!
OpenShift API for Data Protection (OADP) 1.5.3 は、コンテナーのヘルスグレードを更新するためにリリースされた Container Grade Only (CGO) リリースです。OADP 1.5.2 と比較して、製品自体のコードは変更されていません。
5.2.1.5. OADP 1.4.5 リリースノート リンクのコピーリンクがクリップボードにコピーされました!
OpenShift API for Data Protection (OADP) 1.4.5 のリリースノートには、新機能と解決済みの問題が記載されています。
5.2.1.5.1. 新機能 リンクのコピーリンクがクリップボードにコピーされました!
must-gatherツールを使用したログの収集が Markdown 概要で改善されました。must-gatherツールを使用して、ログ、および OpenShift API for Data Protection (OADP) カスタムリソースに関する情報を収集できます。must-gatherデータはすべてのカスタマーケースに添付する必要があります。このツールは、must-gather ログクラスターディレクトリーにある収集された情報を含む Markdown 出力ファイルを生成します。
5.2.1.5.2. 解決された問題 リンクのコピーリンクがクリップボードにコピーされました!
- OADP 1.4.5 では、次の CVE が修正されています。
5.2.1.6. OADP 1.4.4 リリースノート リンクのコピーリンクがクリップボードにコピーされました!
OpenShift API for Data Protection (OADP) 1.4.4 は、コンテナーのヘルスグレードを更新するためにリリースされた Container Grade Only (CGO) リリースです。OADP 1.4.3 と比較して、製品自体のコードは変更されていません。既知の問題が 1 つ特定されました。
5.2.1.6.1. 既知の問題 リンクのコピーリンクがクリップボードにコピーされました!
- ステートフルアプリケーションの復元に関する問題
azurefile-csiストレージクラスを使用するステートフルアプリケーションを復元すると、復元操作がFinalizingフェーズのままになります。
5.2.1.7. OADP 1.4.3 リリースノート リンクのコピーリンクがクリップボードにコピーされました!
OpenShift API for Data Protection (OADP) 1.4.3 のリリースノートには、以下の新機能が記載されています。
5.2.1.7.1. 新機能 リンクのコピーリンクがクリップボードにコピーされました!
kubevirtvelero プラグインバージョン 0.7.1 の注目すべき変更点このリリースにより、
kubevirtvelero プラグインがバージョン 0.7.1 に更新されました。注目すべき改良点として、次のバグ修正と新機能が含まれます。- 所有者の仮想マシンが除外されている場合に、仮想マシンインスタンス (VMI) がバックアップから無視されなくなりました。
- バックアップおよび復元操作中に、すべての追加オブジェクトがオブジェクトグラフに含まれるようになりました。
- オプションで生成されたラベルが、復元操作中に新しいファームウェアの汎用一意識別子 (UUID) に追加されるようになりました。
- 復元操作中に仮想マシン実行ストラテジーを切り替えることが可能になりました。
- ラベルごとに MAC アドレスをクリアできるようになりました。
- バックアップ操作中の復元固有のチェックがスキップされるようになりました。
-
VirtualMachineClusterInstancetypeおよびVirtualMachineClusterPreferenceカスタムリソース定義 (CRD) がサポートされるようになりました。
5.2.1.8. OADP 1.4.2 リリースノート リンクのコピーリンクがクリップボードにコピーされました!
OpenShift API for Data Protection (OADP) 1.4.2 のリリースノートには、新機能、解決済みの問題、既知の問題が記載されています。
5.2.1.8.1. 新機能 リンクのコピーリンクがクリップボードにコピーされました!
- VolumePolicy 機能を使用して同じ namespace 内の異なるボリュームをバックアップできるようになりました
このリリースでは、Velero は
VolumePolicy機能を使用して同じ namespace 内の異なるボリュームをバックアップするためのリソースポリシーを提供します。さまざまなボリュームをバックアップするためにサポートされているVolumePolicy機能には、skip、snapshot、およびfs-backupアクションが含まれます。- ファイルシステムのバックアップとデータムーバーで短期認証情報を使用できるようになりました
ファイルシステムバックアップとデータムーバーでは、AWS Security Token Service (STS) や Google Cloud WIF などの短期認証情報が使用できるようになりました。このサポートにより、
PartiallyFailedステータスなしでバックアップが正常に完了します。
5.2.1.8.2. 解決された問題 リンクのコピーリンクがクリップボードにコピーされました!
- VSL に誤ったプロバイダー値が含まれている場合に DPA がエラーを報告するようになった。
以前は、Volume Snapshot Location (VSL) 仕様のプロバイダーが正しくない場合でも、Data Protection Application (DPA) によるリコンサイルが成功していました。この更新により、DPA はエラーを報告し、有効なプロバイダー値を要求します。
- バックアップと復元に異なる OADP namespace を使用しているかどうかに関係なく、Data Mover の復元に成功する。
以前は、ある namespace にインストールされた OADP を使用してバックアップ操作を実行し、別の namespace にインストールされた OADP を使用して復元すると、Data Mover の復元が失敗しました。この更新により、Data Mover の復元が成功するようになりました。
- SSE-C バックアップは、計算された秘密鍵の MD5 で動作する
以前は、次のエラーでバックアップが失敗しました。
Requests specifying Server Side Encryption with Customer provided keys must provide the client calculated MD5 of the secret key.この更新により、足りなかった Server-Side Encryption with Customer-Provided Keys (SSE-C) の base64 および MD5 ハッシュが修正されました。その結果、SSE-C バックアップは計算された秘密鍵の MD5 を使用して機能します。さらに、
customerKeyサイズの誤ったerrorhandlingも修正されました。
このリリースで解決されたすべての問題のリストは、Jira の OADP 1.4.2 の解決済みの問題 を参照してください。
5.2.1.8.3. 既知の問題 リンクのコピーリンクがクリップボードにコピーされました!
- nodeSelector 仕様は、Data Mover 復元アクションではサポートされていない。
nodeAgentパラメーターにnodeSelectorフィールドを設定して Data Protection Application (DPA) を作成すると、復元操作が完了する代わりに、Data Mover の復元が部分的に失敗します。- TLS スキップ検証が指定されている場合、S3 ストレージはプロキシー環境を使用しない。
イメージレジストリーのバックアップでは、
insecureSkipTLSVerifyパラメーターがtrueに設定されている場合、S3 ストレージはプロキシー環境を使用しません。- Kopia はバックアップの有効期限が切れてもアーティファクトが削除されない。
バックアップを削除した後でも、バックアップの有効期限が切れると、Kopia は S3 ロケーションの
${bucket_name}/kopia/$openshift-adpからボリューム成果物が削除されません。詳細は、「Kopia リポジトリーのメンテナンスについて」を参照してください。
5.2.1.9. OADP 1.4.1 リリースノート リンクのコピーリンクがクリップボードにコピーされました!
OpenShift API for Data Protection (OADP) 1.4.1 のリリースノートには、新機能、解決済みの問題、既知の問題が記載されています。
5.2.1.9.1. 新機能 リンクのコピーリンクがクリップボードにコピーされました!
- クライアントの QPS とバーストを更新するための新しい DPA フィールド
新しい Data Protection Application (DPA) フィールドを使用して、Velero Server Kubernetes API の 1 秒あたりのクエリー数とバースト値を変更できるようになりました。新しい DPA フィールドは、
spec.configuration.velero.client-qpsとspec.configuration.velero.client-burstです。どちらもデフォルトは 100 です。- Kopia でデフォルト以外のアルゴリズムを有効にする
この更新により、Kopia のハッシュ、暗号化、およびスプリッターアルゴリズムを設定して、デフォルト以外のオプションを選択し、さまざまなバックアップワークロードのパフォーマンスを最適化できるようになりました。
これらのアルゴリズムを設定するには、DataProtectionApplication (DPA) 設定の
podConfigセクションでveleroPod のenv変数を設定します。この変数が設定されていない場合、またはサポートされていないアルゴリズムが選択されている場合、Kopia はデフォルトで標準アルゴリズムを使用します。
5.2.1.9.2. 解決された問題 リンクのコピーリンクがクリップボードにコピーされました!
- Pod なしでバックアップを正常に復元できるようになる
以前は、Pod なしでバックアップを復元し、
StorageClass VolumeBindingModeをWaitForFirstConsumerに設定すると、PartiallyFailedステータスになり、fail to patch dynamic PV, err: context deadline exceededというエラーが発生していました。この更新により、動的 PV のパッチ適用がスキップされ、バックアップの復元が成功するようになり、PartiallyFailedステータスが発生しなくなりました。- PodVolumeBackup CR が正しいメッセージを表示するようになる
以前は、
PodVolumeBackupカスタムリソース (CR) によって、get a podvolumebackup with status "InProgress" during the server starting, mark it as "Failed"という誤ったメッセージが生成されていました。この更新により、次のメッセージが生成されるようになりました。found a podvolumebackup with status "InProgress" during the server starting, mark it as "Failed".- DPA で imagePullPolicy をオーバーライドできるようになる
以前は、OADP がすべてのイメージに対して
imagePullPolicyパラメーターをAlwaysに設定していました。この更新により、OADP が各イメージにsha256またはsha512ダイジェストが含まれているかどうかを確認し、imagePullPolicyをIfNotPresentに設定するようになりました。含まれていない場合、imagePullPolicyはAlwaysに設定されます。このポリシーは、新しいspec.containerImagePullPolicyDPA フィールドを使用してオーバーライドできるようになりました。- OADP Velero が、最初の更新が失敗した場合に復元ステータスの更新を再試行できるようになる
以前は、OADP Velero が復元された CR ステータスの更新に失敗していました。これにより、ステータスが無期限に
InProgressのままになっていました。バックアップおよび復元 CR のステータスに依存して完了を判断するコンポーネントも失敗していました。この更新により、復元の際に、復元 CR のステータスがCompletedまたはFailedステータスに正しく移行するようになりました。- 別のクラスターからの BuildConfig ビルド復元がエラーなしで正常に処理されるようになる
以前は、別のクラスターから
BuildConfigビルドリソースの復元を実行すると、アプリケーションが内部イメージレジストリーへの TLS 検証時にエラーを生成していました。結果として、failed to verify certificate: x509: certificate signed by unknown authorityエラーが発生していました。この更新により、別のクラスターへのBuildConfigビルドリソース復元が正常に処理されるようになり、failed to verify certificateエラーが生成されなくなりました。- 空の PVC が正常に復元されるようになる
以前は、空の永続ボリューム要求 (PVC) を復元中にデータのダウンロードが失敗していました。次のエラーで失敗していました。
data path restore failed: Failed to run kopia restore: Unable to load snapshot : snapshot not foundこの更新により、空の PVC を復元するときにデータのダウンロードが正しく終了するようになり、エラーメッセージが生成されなくなりました。
- CSI および DataMover プラグインで Velero のメモリーリークが発生しなくなる
以前は、CSI および DataMover プラグインの使用によって Velero のメモリーリークが発生していました。バックアップが終了したときに、Velero プラグインインスタンスが削除されず、Velero Pod で
Out of Memory(OOM) 状態が生成されるまで、メモリーリークによってメモリーが消費されていました。この更新により、CSI および DataMover プラグインの使用時に Velero のメモリーリークが発生しなくなりました。- 関連する PV が解放されるまで、ポストフック操作が開始されなくなる
以前は、Data Mover 操作の非同期性により、関連する Pod の永続ボリューム (PV) が Data Mover の永続ボリューム要求 (PVC) によって解放される前に、ポストフックが試行されることがありました。この問題により、バックアップが
PartiallyFailedステータスで失敗していました。この更新により、関連する PV が Data Mover PVC によって解放されるまでポストフック操作が開始されなくなり、PartiallyFailedバックアップステータスが発生しなくなりました。- DPA のデプロイが、37 文字を超える namespace でも期待どおりに機能するようになる
新しい DPA を作成するために、37 文字を超える namespace に OADP Operator をインストールすると、"cloud-credentials" シークレットのラベル付けが失敗し、DPA によって次のエラーが報告されていました。
The generated label name is too long.この更新により、名前が 37 文字を超える namespace でも DPA の作成が失敗しなくなりました。
- タイムアウトエラーをオーバーライドすることで復元が正常に完了するようになる
以前は、大規模な環境で、復元操作の結果が
Partiallyfailedステータスになり、fail to patch dynamic PV, err: context deadline exceededというエラーが発生していました。この更新により、Velero サーバー引数のresourceTimeoutを使用してこのタイムアウトエラーをオーバーライドすることで、復元が成功するようになりました。
このリリースで解決されたすべての問題のリストは、Jira の OADP 1.4.1 の解決済みの問題 を参照してください。
5.2.1.9.3. 既知の問題 リンクのコピーリンクがクリップボードにコピーされました!
- OADP を復元した後に Cassandra アプリケーション Pod が
CrashLoopBackoffステータスになる OADP が復元されると、Cassandra アプリケーション Pod が
CrashLoopBackoffステータスになる可能性があります。この問題を回避するには、OADP を復元した後、CrashLoopBackoffエラー状態を返すStatefulSetPod を削除します。その後、StatefulSetコントローラーがこれらの Pod を再作成し、正常に動作するようになります。- ImageStream を参照するデプロイメントが適切に復元されず、Pod とボリュームの内容が破損する
File System Backup (FSB) の復元操作中に、
ImageStreamを参照するDeploymentリソースが適切に復元されません。FSB を実行する復元された Pod とpostHookが途中で終了します。復元操作中に、OpenShift Container Platform コントローラーが、
Deploymentリソースのspec.template.spec.containers[0].imageフィールドを新しいImageStreamTagハッシュで更新します。更新により、新しい Pod のロールアウトがトリガーされ、veleroが FSB とともにポストフックを実行する Pod が終了します。イメージストリームトリガーの詳細は、イメージストリームの変更時の更新のトリガー を参照してください。この動作を回避するには、次の 2 段階の復元プロセスを実行します。
Deploymentリソースを除外して復元を実行します。次に例を示します。$ velero restore create <RESTORE_NAME> \ --from-backup <BACKUP_NAME> \ --exclude-resources=deployment.apps最初の復元が成功したら、次の例のように、次のリソースを含めて 2 回目の復元を実行します。
$ velero restore create <RESTORE_NAME> \ --from-backup <BACKUP_NAME> \ --include-resources=deployment.apps
5.2.1.10. OADP 1.4.0 リリースノート リンクのコピーリンクがクリップボードにコピーされました!
OpenShift API for Data Protection (OADP) 1.4.0 のリリースノートには、解決済みの問題と既知の問題が記載されています。
5.2.1.10.1. 解決された問題 リンクのコピーリンクがクリップボードにコピーされました!
- OpenShift Container Platform 4.16 では復元が正しく機能します
以前は、削除されたアプリケーションの namespace を復元する際に、OpenShift Container Platform 4.16 で
resource name may not be emptyエラーが発生し、復元操作が部分的に失敗していました。この更新により、OpenShift Container Platform 4.16 で復元が期待どおりに機能するようになりました。- OpenShift Container Platform 4.16 クラスターでは、Data Mover バックアップが正常に動作します。
以前は、Velero は
Spec.SourceVolumeModeフィールドが存在しない以前のバージョンの SDK を使用していました。その結果、バージョン 4.2 の外部スナップショットの OpenShift Container Platform 4.16 クラスターで Data Mover バックアップが失敗しました。この更新により、外部スナップショットインスタンスはバージョン 7.0 以降にアップグレードされました。その結果、OpenShift Container Platform 4.16 クラスターではバックアップが失敗しなくなります。
このリリースで解決されたすべての問題のリストは、Jira の OADP 1.4.0 の解決済みの問題 のリストを参照してください。
5.2.1.10.2. 既知の問題 リンクのコピーリンクがクリップボードにコピーされました!
- MCG に checksumAlgorithm が設定されていない場合、バックアップが失敗する
バックアップロケーションとして Noobaa を使用してアプリケーションのバックアップを実行するときに、
checksumAlgorithm設定パラメーターが設定されていない場合は、バックアップは失敗します。この問題を解決するために、Backup Storage Location (BSL) の設定でchecksumAlgorithmの値を指定しなかった場合、空の値が追加されます。空の値は、Data Protection Application (DPA) カスタムリソース (CR) を使用して作成された BSL に対してのみ追加され、他の方法を使用して BSL が作成された場合、この値は追加されません。
このリリースにおける既知の問題の完全なリストは、Jira の OADP 1.4.0 known issues のリストを参照してください。