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 に属する成果物のみが最初に削除され、その後バックアップから復元されます。完璧です!