Azure Backup を使用して Azure Kubernetes Service を復元する
この記事では、バックアップされた Azure Kubernetes Service (AKS) を復元する方法について説明します。
Azure Backup では、クラスターにインストールする必要があるバックアップ拡張機能を使用して、AKS クラスター (クラスター リソースとクラスターにアタッチされている永続ボリューム) をバックアップできるようになりました。 バックアップ コンテナーは、このバックアップ拡張機能を介してクラスターと通信し、バックアップ操作と復元操作を実行します。
開始する前に
AKS バックアップを使用すると、(バックアップされた) 元の AKS クラスターおよび代替 AKS クラスターに復元できます。 AKS バックアップでは、完全復元と項目レベルの復元を実行できます。 復元構成を使い、復元されるクラスター リソースに基づいてパラメーターを定義できます。
ターゲット AKS クラスターにバックアップ拡張機能をインストールする必要があります。 また、Backup コンテナーと AKS クラスターの間で信頼されたアクセスを有効にする必要があります。
コンテナー レベルに格納されたバックアップを復元しようとする場合、ステージングの場所として入力にストレージ アカウントを提供する必要があります。 バックアップ データは、Microsoft テナント内の BLOB としてバックアップ コンテナーに保存されます。 復元操作中、バックアップ データは 1 つのコンテナーからテナント間のステージング ストレージ アカウントにコピーされます。 復元用のステージング ストレージ アカウントで AllowCrossTenantReplication プロパティが true に設定されていることを確認します。
制限事項およびサポートされているシナリオの詳細については、サポート マトリックスを参照してください。
AKS クラスターを復元する
バックアップされた AKS クラスターを復元するには、次の手順に従います。
バックアップ センターに移動し、[復元] を選択します。
次のページで、[バックアップ インスタンスの選択] を選択し、復元するインスタンスを選択してください。
プライマリ リージョンとセカンダリ リージョンの両方でインスタンスを使用できる場合は、復元する リージョンを選択し、[続行] を選択します。
[復元ポイントを選択する] をクリックして、復元する "復元ポイント" を選択してください。
復元ポイントがコンテナーおよび運用データストアの両方から入手できる場合は、復元元のポイントを選択してください。
[復元パラメーター] セクションで、[Kubernetes サービスの選択] をクリックし、バックアップの復元先の "AKS クラスター" を選択します。
復元対象の "バックアップされたクラスター リソース" を選択するために、[リソースの選択] をクリックします。
復元構成の詳細については、こちらを参照してください。
コンテナー標準データストアからの復元の復旧ポイントを選択した場合は、ステージング場所として [スナップショット リソース グループ] と [ストレージ アカウント] を指定してください。
Note
現時点では、ステージング場所で作成されたリソースはプライベート エンドポイントに属することはできません。 ステージングの場所として指定されたストレージ アカウントで "パブリック アクセス" を有効にしていることを確認します。
[検証] を選択して、バックアップされたクラスターの選択に対して検証を実行してください。
検証が成功したら、[確認と復元] を選択し、選択したクラスターにバックアップを復元します。
構成を復元する
AKS バックアップの項目レベルの復元機能の一部として、複数の復元構成フィルターを使用して復元を実行できます。
一覧から復元する "名前空間" を選択します。 一覧には、バックアップされた名前空間のみが表示されます。
クラスター スコープのリソースと永続ボリューム (Azure Disk のみ) を復元する場合は、チェック ボックスを選択することもできます。
特定のクラスター リソースを復元するには、それらに添付されているラベルをテキストボックスで使用します。 入力されたラベルを持つリソースのみがバックアップされます。
"API グループ" と "種類" を指定して、特定のリソースの種類を復元できます。 "API グループ" と "種類" の一覧については、"付録" を参照してください。 "複数の API グループ" を入力できます。
API グループを使用したバックアップからのデプロイなど、ワークロードを復元するには、エントリを次のようにする必要があります。
種類: [デプロイ] を選択します。
グループ: [グループ] を選択します。
名前空間マッピング: バックアップされたクラスター リソースを別の "名前空間" に移行するには、"バックアップされた名前空間" を選択し、リソースを移行する "名前空間" を入力します。
その "名前空間" が AKS クラスターに存在しない場合は、作成されます。 クラスター リソースの復元中に競合が発生した場合は、競合するリソースをスキップまたは修正することができます。
現在、Azure Backup for AKS では、(バックアップ リソースがターゲット AKS クラスター内の該当リソースと同じ名前を持ち) リソース クラッシュが起きた際の復元操作のオプションとして以下の 2 つがサポートされています。 復元構成を定義するときに、これらのオプションのいずれかを選択できます。
スキップ: 既定では、このオプションが選択されます。 たとえば、pvc-azuredisk という名前の PVC をバックアップし、それを同じ名前の PVC を持つターゲット クラスター内に復元する場合、バックアップ拡張機能はバックアップされた永続ボリューム要求 (PVC) の復元をスキップします。 このようなシナリオでは、クラスターからリソースを削除してから、復元操作を実行することをお勧めします。
パッチ: このオプションを使用すると、ターゲット クラスター内のリソース上のバックアップ リソースの変更可能な変数にパッチを適用できます。 ターゲット クラスター内のレプリカの数を更新したい場合は、操作としてパッチ適用を選択できます。
Note
AKS バックアップは現在、ターゲット クラスター内にリソースが既に存在する場合はリソースの削除と再作成を行いません。 元の場所にある永続ボリュームの復元を試みる場合は、既存の永続ボリュームを削除してから、復元操作を実行します。
セカンダリ リージョンに復元する
セカンダリ リージョンで AKS クラスターを復元するには、Backup ボールトで geo 冗長とリージョン間の復元を構成し、復元をトリガーします。