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