アプリの管理を開始します
お先にどうぞ "Astra Control 管理にクラスタを追加"では、クラスターにアプリケーションをインストールし(Astra Controlの外部)、Astra Controlの[アプリケーション]ページに移動して、アプリケーションとそのリソースの管理を開始できます。
詳細については、を参照してください "アプリケーション管理の要件"。
サポートされているアプリインストール方法
Astra Control は、次のアプリケーションインストール方法をサポートしています。
-
* マニフェストファイル * : Astra Control は、 kubectl を使用してマニフェストファイルからインストールされたアプリケーションをサポートします。例:
kubectl apply -f myapp.yaml
-
* Helm 3 * : Helm を使用してアプリケーションをインストールする場合、 Astra Control には Helm バージョン 3 が必要です。Helm 3 (または Helm 2 から Helm 3 にアップグレード)を使用してインストールされたアプリケーションの管理とクローニングが完全にサポートされています。Helm 2 でインストールされたアプリケーションの管理はサポートされていません。
-
オペレータが導入したアプリケーション:Astra Controlは、ネームスペースを対象とした演算子を使用してインストールされたアプリケーションをサポートしています。一般的には、「パスバイリファレンス」アーキテクチャではなく「パスバイバリュー」アーキテクチャで設計されています。インストールする演算子とアプリケーションは、同じ名前空間を使用する必要があります。このような名前空間を使用するには、演算子の deployment.yaml ファイルを変更する必要があります。
これらのパターンに続くいくつかのオペレータアプリを次に示します。
-
K8ssandra では、 In Place リストア処理がサポートされます。新しいネームスペースまたはクラスタにリストアするには、アプリケーションの元のインスタンスを停止する必要があります。これは、ピアグループ情報がインスタンス間通信を行わないようにするためです。アプリケーションのクローニングはサポートされていません。
-
Astra Controlでは、「パスバイリファレンス」アーキテクチャ(CockroachDBオペレータなど)で設計されたオペレータをクローニングできない場合があります。クローニング処理では、クローニング処理の一環として独自の新しいシークレットが存在する場合でも、クローニングされたオペレータがソースオペレータから Kubernetes シークレットを参照しようとします。Astra Control がソースオペレータの Kubernetes シークレットを認識しないため、クローニング処理が失敗する場合があります。
クラスタにアプリをインストールします
お先にどうぞ "クラスタが追加されました" Astra Controlを使用すると、アプリケーションをインストールしたり、クラスタ上の既存のアプリケーションを管理したりできます。1つのネームスペースに限定されるアプリケーションはすべて管理できます。
アプリの管理
Astra Controlがクラスタ上のネームスペースを検出したら、管理するアプリケーションを定義できます。を選択できます "ネームスペース全体を単一のアプリケーションとして管理することも、ネームスペース内の1つ以上のアプリケーションを個別に管理することもできます"。データ保護処理に必要な精度のレベルが重要になります。
Astra Controlを使用すると、階層の両方のレベル(ネームスペースとそのネームスペース内のアプリケーション)を別々に管理できますが、いずれか一方を選択することを推奨します。Astra Control で実行したアクションは、ネームスペースレベルとアプリケーションレベルの両方で同時に実行される場合、失敗する可能性があります。
たとえば、「Maria」に対して、毎週同じ頻度でバックアップを作成するように設定することもできますが、同じネームスペースにある「MariaDB」をバックアップする頻度を高く設定する必要があるとします。これらのニーズに基づいて、アプリケーションを個別に管理する必要があります。また、シングルネームスペースアプリケーションとして管理する必要はありません。 |
-
KubernetesクラスタをAstra Controlに追加。
-
クラスタにインストールされているアプリケーションが1つ以上あります。 サポートされているアプリケーションのインストール方法については、こちらをご覧ください。
-
アクティブなポッドが1つ以上あります。
-
Astra Controlに追加したKubernetesクラスタで指定された名前空間。
-
(オプション)すべてのにKubernetesラベル "サポートされるKubernetesリソース"。
ラベルは、 Kubernetes オブジェクトに割り当てて識別できるキーと値のペアです。ラベルを使用すると、 Kubernetes オブジェクトのソート、整理、検索が簡単になります。Kubernetes のラベルの詳細については、 "Kubernetes の公式ドキュメントを参照してください"。
開始する前に、を理解しておく必要があります "標準ネームスペースとシステムネームスペースの管理"。
Astra Control API を使用してアプリケーションを管理する方法については、を参照してください "Astra の自動化と API に関する情報"。
アプリケーションとして管理するリソースを定義します
を指定できます "アプリケーションを構成するKubernetesリソース" Astra Controlで管理したい。アプリケーションを定義すると、Kubernetesクラスタの要素を1つのアプリケーションにグループ化できます。このKubernetesリソースの集まりは、ネームスペースとラベル選択条件によって分類されます。
アプリケーションを定義することで、クローン、スナップショット、バックアップなどのAstra Control操作に含めるものをより細かく制御できます。
アプリケーションを定義するときは、保護ポリシーを使用して複数のアプリケーションにKubernetesリソースを含めないようにしてください。Kubernetesリソース上の保護ポリシーが重複していると、原因 のデータが競合する可能性があります。 ベストプラクティスの詳細をご確認ください。 |
-
[アプリケーション(Applications)]ページで、[定義( Define)]を選択します
-
[アプリケーションの定義(* Define application)]ウィンドウで、アプリケーション名を入力します。
-
[Cluster]ドロップダウン・リストから、アプリケーションが実行されているクラスタを選択します。
-
「名前空間」ドロップダウンリストからアプリケーションの名前空間を選択します。
アプリケーションは、単一クラスタ上の指定されたネームスペース内でのみ定義できます。Astra Controlでは、複数のネームスペースまたはクラスタにまたがるアプリケーションの機能はサポートされていません。 -
アプリケーションと名前空間のラベルを入力します。ラベルまたはラベルの選択基準(クエリー)を1つ指定できます。
Kubernetes のラベルの詳細については、 "Kubernetes の公式ドキュメントを参照してください"。 -
[定義(Define *)]を選択した後、必要に応じて他のアプリケーションについても同じ手順を繰り返します。
アプリケーションの定義が完了すると、アプリケーション(Applications)ページのアプリケーションのリストにアプリケーションが表示されます。クローンを作成し、バックアップとスナップショットを作成できるようになりました。
追加したアプリケーションの保護列に警告アイコンが表示されている場合は、バックアップされておらず、まだバックアップのスケジュールが設定されていないことを示しています。 |
特定のアプリケーションの詳細を表示するには、アプリケーション名を選択します。 |
アプリケーションとして管理するネームスペースを定義します
ネームスペースのリソースをアプリケーションとして定義することで、ネームスペース内のすべてのKubernetesリソースをAstra Control管理に追加できます。特定の名前空間内のすべてのリソースを同じような方法で、共通の間隔で管理および保護する場合は、アプリケーションを個別に定義することをお勧めします。
-
クラスタページで、クラスタを選択します。
-
[名前空間]タブを選択します。
-
管理するアプリケーションリソースを含む名前空間のアクションメニューを選択し、*アプリケーションとして定義*を選択します。
複数のネームスペースを管理する場合は、ネームスペースを選択し、左上隅の*アクション*ボタンを選択して*管理*を選択します。 [システムネームスペースを表示(Show system Namespaces)]チェックボックスを選択して、アプリケーション管理で通常はデフォルトで使用されないシステムネームスペースを表示します。 "詳細はこちら"。
このプロセスが完了すると、ネームスペースに関連付けられているアプリケーションがに表示されます Associated applications
列(Column):
アプリの管理を解除します
アプリケーションのバックアップ、スナップショット、またはクローンを作成する必要がなくなった場合は、管理を停止できます。
アプリケーションの管理を解除すると、以前に作成したバックアップやスナップショットは失われます。 |
-
左側のナビゲーションバーから、「 * アプリケーション * 」を選択します。
-
アプリケーションを選択します。
-
[アクション(* Actions )]列のメニューから、[*管理解除(* Unmanage *)]を選択します。
-
情報を確認します。
-
「 unmanage 」と入力して確定します。
-
[ はい、アプリケーションの管理を解除 * ] を選択します。
システムネームスペースについて教えてください。
Astra Controlは、Kubernetesクラスタ上のシステムネームスペースも検出します。これらのシステムネームスペースはデフォルトでは表示されません。システムアプリケーションリソースのバックアップが必要になることがまれです。
選択したクラスタの[ネームスペース]タブからシステムネームスペースを表示するには、[システムネームスペースを表示]チェックボックスをオンにします。
Astra Control 自体は標準のアプリケーションではなく、「システムアプリケーション」です。 Astra Control 自体は管理しないでください。Astra Control 自体は、管理用にデフォルトでは表示されません。 |
例:リリースごとに保護ポリシーを分ける
この例では、DevOpsチームが「カナリアリリースの導入を管理しています。チームのクラスタにはnginxを実行するポッドが3つあります。そのうちの 2 つのポッドは、安定版リリース専用です。3 番目のポッドはカナリアリリース用です。
DevOpsチームのKubernetes管理者がラベルを追加します deployment=stable
を使用して、安定版リリースポッドに移動しますチームがラベルを追加します deployment=canary
カナリアリリースポッドに移動します。
チームの安定版リリースには、 1 時間ごとの Snapshot と日次バックアップの要件が含まれています。カナリアリリースはより一時的なリリースなので、ラベル付きのものは何でも短時間で、よりアグレッシブな保護ポリシーを作成したいと考えています deployment=canary
。
データの競合を回避するために、管理者は「カナリア」リリース用と「stable」リリース用の2つのアプリケーションを作成します。これにより、 Kubernetes オブジェクトの 2 つのグループに対して、バックアップ、 Snapshot 、およびクローニングの処理が分離されます。