AKS のバックアップを実行する -バックアップ設定-
ごきげんよう!mihohoi です。
Azure バックアップセンターを使った AKS のバックアップが少し前に GA となりました。どのような動きをするのか、検証しつつ事前の準備や注意点などもまとめていきます。
🥳GA のニュース🥳
General Availability - Azure Backup for AKS | Azure updates | Microsoft Azure
バックアップ センター
バックアップ センター自体は、AKS だけの機能ではありません。仮想マシンなどの他のサービスで使われている、Azure のバックアップを総合的に管理するための機能です。
その中で、「ポリシー」と「コンテナー」の2つをバックアップセンターの中で使っていきますが、こちらもバックアップセンターのエンティティの名称です。”コンテナー”という名前が Kubernetes の機能と同じですが、異なるものです。
「コンテナー」の役割は、時間の経過とともに作成されるバックアップと復元ポイントを格納するエンティティであり、保護された仮想マシンに関連付けられているバックアップ ポリシーも格納されます。「何の対象」を「どのリソースグループ」で作るか、を作成します。
「ポリシー」はデータソース(対象のリソース)を選択し、格納するエンティティとバックアップのスケジュールや保持期間を設定します。
バックアップ センターについての詳細は以下の URL にも詳しく載っています。
Azure Backup と Azure Site Recovery のバックアップ センターの概要 - Azure Backup | Microsoft Learn
バックアップセンターでの作業
まず、AKS をバックアップするまでの流れとしては、以下の通りです。
- バックアップセンターでコンテナーを作成する
- バックアップセンターでポリシーを作成する
- AKS に拡張機能をインストールする
- バックアップを構成する
1. バックアップセンターでコンテナーを作成する
ではまず、バックアップセンターから開始します。
※ポリシーを以下作成していますが、最初はコンテナーを作成します。間違えも含めてあたたかくご覧いただければ。
バックアップセンターから「ポリシー」を作成して、Kubernetesサービスを選択します。
選択した画面はこちら。
その後、バックアップコンテナーがないと怒られたので、先にコンテナーを作成することにしました。
コンテナーを作成します。
コンテナーの作成画面で、作成するリソースグループを選択します。今回は、AKS のリソースと同じリソースグループにしました。
画面下部の冗長性の説明の部分では、コストと信頼性のトレードオフについて注意書きが記載されています。
Vault Properties では、論理的な削除の有効化や削除する間隔などを設定します。今回は特に変更しませんが、運用するアプリケーションに合わせて変更しましょう。
タグと確認まで進んで、バックアップコンテナーを作成します。
2. バックアップセンターでポリシーを作成する
それでは、バックアップポリシーを作成します。先ほど作成していなかった「コンテナー」を選択します。
スケジュールと保持期間は好きなように変更します。今回はそのまま進みます。
作成します。
AKS 側での設定
3. AKS に拡張機能をインストールする
AKS のリソースに移動し、メニューから「バックアップ」を選択します。
初めてそのリソースにバックアップを設定する場合は、拡張機能のインストールが必要です。
「拡張機能のインストール」をクリックします。
AKSと同じリソースグループの中に、ストレージアカウントとBlobコンテナーが必要です。
画面に従い、拡張機能のインストールを行なっていきます。
体感ですが、インストールが完了するまで10分ほどかかりました。
画面が、以下の表示となったので、意気揚々と「バックアップの作成」をクリックします。
4. バックアップを構成する
バックアップの構成画面に遷移します。
赤字のコメントが出ています。確認してみましょう。
ということで、アクセス権の付与を行います。表示されている通り「アクセス許可の付与」をクリックします。
付与されたのち、「次へ」をクリックするとバックアップポリシーに遷移します。
最初に作成した「バックアップポリシー」を選択します。
その後、「次へ」をクリックし「データソース」に移動します。
「追加」をクリックすると、バックアップする対象のリソースを選択することができます。「すべて」で namespace 全てをバックアップすることはできますが、プロジェクトごとだったり、役割ごとに取りたい場合が多いでしょう。
今回は、"petclinic" namespace を対象にしてみます。
petclinic のみを選択した画面
確認をし、検証ボタンを押下します。
エラーが出ました。
さて、エラーに内容を見るとロールの割り当てに失敗しているようです。以下に表示されている推奨事項に則って対応を行います。
対応を行い、成功した場合は、以下の表示となります。
最終確認を行い、構成します。
構成が行われると、以下の画面となります。追加でバックアップの設定を行うこともできます。
バックアップが取得されたのかを確認する
しばらく置いていると、バックアップが時間の経過とともに取得されます。
取得されると、以下の表示になります。
バックアップが取得されていました。これで、簡単に AKS のバックアップが設定&取得できるようになりました。
以前は、yaml ファイルから戻したりしていましたが、Azure ポータルからバックアップをすることで、よりポータル側で管理しやすくなったと思います。
また、シークレットを含めたり、永続ボリュームもバックアップのスコープとして選択することができるので、柔軟なバックアップができます。
次回は、リストア編に進みます。
参考
Discussion