カスタムアプリケーションの例を定義します
カスタムアプリケーションを作成すると、 Kubernetes クラスタの要素を 1 つのアプリケーションにグループ化できます。
カスタムアプリケーションを使用すると、 Astra Control 操作に含めるものをより細かく制御できます。次のものが含まれます。
-
クローン
-
スナップショット
-
バックアップ
-
保護ポリシー
ほとんどの場合、アプリケーション全体で Astra Control の機能を使用します。ただし、これらの機能を使用するカスタムアプリケーションを、名前空間内の Kubernetes オブジェクトに割り当てるラベルで作成することもできます。
カスタムアプリケーションを作成するには、 [ アプリケーション ] ページに移動し、 [**+ 定義 ] を選択します。
選択すると、カスタムアプリケーションウィンドウに、カスタムアプリケーションに含まれるリソースまたはカスタムアプリケーションから除外されるリソースが表示されます。これにより、カスタムアプリケーションを定義するための正しい条件を選択できるようになります。
カスタムアプリケーションは、単一クラスタの指定したネームスペース内でのみ作成できます。Astra Control では、カスタムアプリケーションを複数のネームスペースまたはクラスタにまたがって使用することはできません。 |
ラベルは、 Kubernetes オブジェクトに割り当てて識別できるキーと値のペアです。ラベルを使用すると、 Kubernetes オブジェクトのソート、整理、検索が簡単になります。Kubernetes のラベルの詳細については、 "Kubernetes の公式ドキュメントを参照してください"。
同じリソースに対して名前の異なるポリシーが重複していると、原因のデータが競合する可能性があります。リソースのカスタムアプリケーションを作成する場合は、そのアプリケーションが他のポリシーに基づいてクローニングまたはバックアップされていないことを確認してください。 |
例:カナリアリリースの保護ポリシーを分離します
この例では、 DevOps チームがカナリアリリースの導入を管理しています。そのクラスタには nginx を実行するポッドが 3 つあります。そのうちの 2 つのポッドは、安定版リリース専用です。3 番目のポッドはカナリアリリース用です。
DevOps チームの Kubernetes 管理者は、安定したリリースポッドに「展開 = 安定」というラベルを追加します。チームは、カナリアリリースポッドに「展開 = カナリア」というラベルを追加します。
チームの安定版リリースには、 1 時間ごとの Snapshot と日次バックアップの要件が含まれています。カナリアリリースは、より一時的なものです。したがって、「配置」 = 「カナリア」というラベルの付いたすべてのものに対して、より積極的で短期的な保護ポリシーを作成したいと考えています。
データの競合を回避するために、管理者はカナリアリリース用と安定版リリース用の 2 つのカスタムアプリケーションを作成します。これにより、 Kubernetes オブジェクトの 2 つのグループに対して、バックアップ、 Snapshot 、およびクローニングの処理が分離されます。
-
チームが Astra Control にクラスタを追加したら、次はカスタムアプリケーションを定義します。これを行うには、 [ アプリケーション ] ページで [+ 定義 ] ボタンを選択します。
-
表示されるポップアップウィンドウで、チームは「 vops-canary-deployment 」をアプリケーション名として設定します。チームは Cluster ドロップダウンでクラスタを選択し、次にアプリケーションの名前空間を Namespace ドロップダウンから選択します。
-
チームは、 [ ラベル ] フィールドに「配置 = カナリア」と入力するか、以下のリソースからそのラベルを選択できます。
-
カナリアデプロイメント用のカスタムアプリケーションを定義した後、チームは安定した展開のためにプロセスを繰り返します。
2 つのカスタムアプリケーションの作成が完了したら、それらのリソースを他の Astra Control アプリケーションとして扱うことができます。Kubernetes ラベルに基づいて、リソースグループごとにデータのクローンを作成し、バックアップと Snapshot を作成し、リソースグループごとにカスタムの保護ポリシーを作成できます。