複数のアプリを含む名前空間の GKE Kubernetes クラスタで保護された 1 つのアプリケーションを復元する

複数のアプリを含む名前空間の GKE Kubernetes クラスタで保護された 1 つのアプリケーションを復元する

Kubernetes クラスターでは、「default」という同じ名前空間に複数のアプリがデプロイされています。アプリは、Web サーバー ポッドとデータベース ポッドで構成されています。

バックアッププランから元のクラスター内の1つのアプリを復元する方法GKE のバックアップ?

クラスターでは、ProtectedApplicationバックアップ エージェントが個別のアプリケーション (Web サイト) を識別できるように、いくつかの を定義しました。これらの定義は次のようになります。

kind: ProtectedApplication
apiVersion: gkebackup.gke.io/v1alpha2
metadata:
  name: test
  namespace: default
spec:
  resourceSelection:
    type: Selector
    selector:
      matchLabels:
        app.kubernetes.io/instance: test
  components:
    - name: wordpress
      resourceKind: Deployment
      resourceNames: ["test-wordpress"]
      strategy:
        type: BackupAllRestoreAll
        backupAllRestoreAll: {}
    - name: mariadb
      resourceKind: StatefulSet
      resourceNames: ["test-mariadb"]
      strategy:
        type: BackupAllRestoreAll
        backupAllRestoreAll: {}

私の主な懸念は、復元プラン構成の「競合処理の定義」オプションについてです。

復元計画を作成して競合処理を定義する

それはこう言います:

非破壊的な復元が実行される前に、ターゲット クラスター内の競合する名前空間 (およびそこに含まれるすべてのリソース) が削除されます。

保護されたアプリケーションのみを復元する前に、本当に「デフォルト」の Kubernetes 名前空間全体が削除されるのでしょうか? 復元するバックアップ内にあるのと同じ名前を持つ Kubernetes 名前空間内のリソースのみが削除されることを期待しています。誰か助けてくれませんか?

答え1

良いニュースです! 復元手順では、名前空間全体が削除されるわけではありません。ただし、ProtectedApplication に属する成果物のみが最初に削除され、その後バックアップから復元されます。完璧です!

関連情報