1.3. サブスクリプションレポート
サブスクリプションレポートは、フリート内のすべてのマネージドクラスターからのアプリケーションステータスのコレクションです。具体的には、親アプリケーションリソースは、スケーラブルなマネージドクラスターからのレポートを保持できます。
詳細なアプリケーションステータスはマネージドクラスターで利用できますが、ハブクラスターの subscriptionReports は軽量でスケーラブルです。以下の 3 種類のサブ状態レポートを参照してください。
-
パッケージレベルの
SubscriptionStatus: これは、マネージドクラスター上のアプリケーションパッケージのステータスであり、アプリケーションによってappsubnamespace にデプロイされるすべてのリソースの詳細なステータスが含まれます。 -
クラスターレベルの
SubscriptionReport: 特定のクラスターにデプロイされているすべてのアプリケーションに関する全体的なステータスレポートです。 アプリケーションレベルの
SubscriptionReport: これは、特定のアプリケーションがデプロイされたすべてのマネージドクラスターの全体的なステータスレポートです。
1.3.1. SubscriptionStatus パッケージレベル リンクのコピーリンクがクリップボードにコピーされました!
パッケージレベルのマネージドクラスターのステータスは、マネージドクラスターの <namespace:<your-appsub-namespace> にあり、アプリケーションでデプロイされたすべてのリソースの詳細ステータスが含まれます。マネージドクラスターにデプロイされるすべての appsub に対して、マネージドクラスターの appsub namespace に SubscriptionStatus CR が作成されます。エラーが存在する場合は、すべてのリソースが詳細エラーと共に報告されます。
パッケージのステータスは、個々のパッケージのステータスのみを示します。.status.subscription のフィールドを参照して、サブスクリプション全体のステータスを表示できます。
以下の SubscriptionStatus サンプル YAML ファイルを参照してください。
1.3.2. SubscriptionReport クラスターレベル リンクのコピーリンクがクリップボードにコピーされました!
クラスターレベルのステータスはハブクラスターの <namespace:<your-managed-cluster-1> にあり、そのマネージドクラスターの各アプリケーションの全体的なステータスのみが含まれます。ハブクラスターの各クラスター namespace の subscriptionReport は、以下のステータスのいずれかを報告します。
-
Deployed -
Failed -
propagationFailed
以下の SubscriptionReport のサンプル YAML ファイルを参照してください。
1.3.3. SubscriptionReport アプリケーションレベル リンクのコピーリンクがクリップボードにコピーされました!
各アプリケーションのアプリケーションレベルの 1 つである subscriptionReport が、ハブクラスターの appsub namespace の <namespace:<your-appsub-namespace> にあり、以下の情報が含まれています。
- 各マネージドクラスターのアプリケーション全体のステータス
- アプリケーションのすべてのリソースのリスト
- クラスターの合計数を含むレポートサマリー
-
アプリケーションがステータスにあるクラスターの合計数 (
deployed、failed、propagationFailed、およびinProgress) のレポートサマリー。
注記: inProcess ステータスは、合計マイナス deployed、さらに failed `, と `propagationFailed をマイナスします。
以下の SubscriptionReport のサンプル YAML ファイルを参照してください。
1.3.4. ManagedClusterView リンクのコピーリンクがクリップボードにコピーされました!
ManagedClusterView CR は、最初の failed クラスターについて報告されます。リソースのデプロイに失敗した複数のクラスターにアプリケーションがデプロイされた場合、ハブクラスターで最初に失敗したクラスター namespace に対して managedClusterView CR が 1 つだけが作成されます。managedClusterView CR は、障害が発生したクラスターから詳細なサブスクリプションステータスを取得するため、アプリケーションの所有者は障害が発生したリモートクラスターにアクセスする必要がありません。
以下のコマンドを実行してステータスを取得できます。
% oc get managedclusterview -n <failing-clusternamespace> "<app-name>-<app name>"
% oc get managedclusterview -n <failing-clusternamespace> "<app-name>-<app name>"
1.3.5. CLI アプリケーションレベルのステータス リンクのコピーリンクがクリップボードにコピーされました!
マネージドクラスターにアクセスしてサブスクリプションステータスを取得できない場合は、CLI を使用できます。クラスターレベルまたはアプリケーションレベルのサブスクリプションレポートは、全体のステータスは含まれますが、アプリケーションの詳細なエラーメッセージは含まれません。
- multicloud-operators-subscription から CLI をダウンロードします。
-
以下のコマンドを実行して
managedClusterViewリソースを作成し、エラーを特定できるようにマネージドクラスターアプリケーションのSubscriptionStatusを表示します。
% getAppSubStatus.sh -c <your-managed-cluster> -s <your-appsub-namespace> -n <your-appsub-name>
% getAppSubStatus.sh -c <your-managed-cluster> -s <your-appsub-namespace> -n <your-appsub-name>
1.3.6. CLI 最終更新時間 リンクのコピーリンクがクリップボードにコピーされました!
また、各マネージドクラスターにログインしてこの情報を取得する場合は、指定のマネージドクラスターでの AppSub の最終更新時間を取得することもできます。そのため、マネージドクラスターの AppSub の最終更新時間の取得を簡素化するために、ユーティリティースクリプトが作成されました。このスクリプトは、ハブクラスターで実行するように設計されています。これは、マネージドクラスターから AppSub を取得するための managedClusterView リソースを作成し、データを解析して最終更新時刻を取得します。
- multicloud-operators-subscription から CLI をダウンロードします。
-
以下のコマンドを実行して、マネージドクラスターの
AppSubの最終更新時間を取得します。このスクリプトは、ハブクラスターで実行するように設計されています。managedClusterViewリソースを作成してマネージドクラスターから AppSub を取得し、データを解析して最終更新時間を取得します。
% getLastUpdateTime.sh -c <your-managed-cluster> -s <your-appsub-namespace> -n <your-appsub-name>
% getLastUpdateTime.sh -c <your-managed-cluster> -s <your-appsub-namespace> -n <your-appsub-name>