검색

1.3. 서브스크립션 보고서

download PDF

서브스크립션 보고서는 사용 중인 모든 관리 클러스터의 애플리케이션 상태 컬렉션입니다. 특히 상위 애플리케이션 리소스는 확장 가능한 양의 관리형 클러스터의 보고서를 보유할 수 있습니다.

자세한 애플리케이션 상태는 관리 클러스터에서 사용할 수 있는 반면 허브 클러스터의 subscriptionReports 는 가볍고 확장 가능합니다. 다음 세 가지 유형의 대체 상태 보고서를 참조하십시오.

1.3.1. SubscriptionStatus 패키지 수준

패키지 수준 관리형 클러스터 상태는 관리 클러스터의 < namespace:<your-appsub-namespace >에 있으며 애플리케이션에서 배포한 모든 리소스에 대한 세부 상태를 포함합니다. 관리형 클러스터에 배포된 모든 appsub 에 대해 관리 클러스터의 appsub 네임스페이스에 생성된 SubscriptionStatus CR이 있습니다. 모든 리소스는 오류가 있는 경우 자세한 오류와 함께 보고됩니다.

다음 SubscriptionStatus 샘플 YAML 파일을 참조하십시오.

apiVersion: apps.open-cluster-management.io/v1alpha1
kind: SubscriptionStatus
metadata:
  labels:
    apps.open-cluster-management.io/cluster: <your-managed-cluster>
    apps.open-cluster-management.io/hosting-subscription: <your-appsub-namespace>.<your-appsub-name>
  name: <your-appsub-name>
  namespace: <your-appsub-namespace>
statuses:
  packages:
  - apiVersion: v1
    kind: Service
    lastUpdateTime: "2021-09-13T20:12:34Z"
    Message: <detailed error. visible only if the package fails>
    name: frontend
    namespace: test-ns-2
    phase: Deployed
  - apiVersion: apps/v1
    kind: Deployment
    lastUpdateTime: "2021-09-13T20:12:34Z"
    name: frontend
    namespace: test-ns-2
    phase: Deployed
  - apiVersion: v1
    kind: Service
    lastUpdateTime: "2021-09-13T20:12:34Z"
    name: redis-master
    namespace: test-ns-2
    phase: Deployed
  - apiVersion: apps/v1
    kind: Deployment
    lastUpdateTime: "2021-09-13T20:12:34Z"
    name: redis-master
    namespace: test-ns-2
    phase: Deployed
  - apiVersion: v1
    kind: Service
    lastUpdateTime: "2021-09-13T20:12:34Z"
    name: redis-slave
    namespace: test-ns-2
    phase: Deployed
  - apiVersion: apps/v1
    kind: Deployment
    lastUpdateTime: "2021-09-13T20:12:34Z"
    name: redis-slave
    namespace: test-ns-2
    phase: Deployed

1.3.2. SubscriptionReport 클러스터 수준

클러스터 수준 상태는 hub 클러스터의 < namespace:<your-managed-cluster-1 >에 있으며 해당 관리 클러스터의 각 애플리케이션에 대한 전체 상태만 포함합니다. hub 클러스터의 각 클러스터 네임스페이스의 subscriptionReport 는 다음 상태 중 하나를 보고합니다.

  • deployed
  • 실패
  • propagationFailed

다음 SubscriptionStatus 샘플 YAML 파일을 참조하십시오.

apiVersion: apps.open-cluster-management.io/v1alpha1
kind: subscriptionReport
metadata:
  labels:
    apps.open-cluster-management.io/cluster: "true"
  name: <your-managed-cluster-1>
  namespace: <your-managed-cluster-1>
reportType: Cluster
results:
- result: deployed
  source: appsub-1-ns/appsub-1                     // appsub 1 to <your-managed-cluster-1>
  timestamp:
    nanos: 0
    seconds: 1634137362
- result: failed
  source: appsub-2-ns/appsub-2                     // appsub 2 to <your-managed-cluster-1>
  timestamp:
    nanos: 0
    seconds: 1634137362
- result: propagationFailed
  source: appsub-3-ns/appsub-3                     // appsub 3 to <your-managed-cluster-1>
  timestamp:
    nanos: 0
    seconds: 1634137362

1.3.3. SubscriptionReport 애플리케이션 수준

각 애플리케이션에 대한 하나의 애플리케이션 수준 subscriptionReport 는 hub 클러스터의 appsub 네임스페이스의 < namespace:<your- appsub - namespace>에 있으며 다음 정보를 포함합니다.

  • 각 관리 클러스터의 애플리케이션 전체 상태
  • 애플리케이션에 대한 모든 리소스 목록
  • 총 클러스터 수가 포함된 보고서 요약
  • 애플리케이션이 상태의 총 클러스터 수인 보고서 요약: deployed,failed,propagationFailedinProgress.

참고: inProcess 상태는 배포된 총 빼기 , - failed ' 및 - 'propagationFailed )입니다.

다음 SubscriptionStatus 샘플 YAML 파일을 참조하십시오.

apiVersion: apps.open-cluster-management.io/v1alpha1
kind: subscriptionReport
metadata:
  labels:
    apps.open-cluster-management.io/hosting-subscription: <your-appsub-namespace>.<your-appsub-name>
  name: <your-appsub-name>
  namespace: <your-appsub-namespace>
reportType: Application
resources:
- apiVersion: v1
  kind: Service
  name: redis-master2
  namespace: playback-ns-2
- apiVersion: apps/v1
  kind: Deployment
  name: redis-master2
  namespace: playback-ns-2
- apiVersion: v1
  kind: Service
  name: redis-slave2
  namespace: playback-ns-2
- apiVersion: apps/v1
  kind: Deployment
  name: redis-slave2
  namespace: playback-ns-2
- apiVersion: v1
  kind: Service
  name: frontend2
  namespace: playback-ns-2
- apiVersion: apps/v1
  kind: Deployment
  name: frontend2
  namespace: playback-ns-2
results:
- result: deployed
  source: cluster-1                            //cluster 1 status
  timestamp:
    nanos: 0
    seconds: 0
- result: failed
  source: cluster-3                            //cluster 2 status
  timestamp:
    nanos: 0
    seconds: 0
- result: propagationFailed
  source: cluster-4                            //cluster 3 status
  timestamp:
    nanos: 0
    seconds: 0
summary:
  deployed: 8
  failed: 1
  inProgress: 0
  propagationFailed: 1
  clusters: 10

1.3.4. ManagedClusterView

ManagedClusterView CR은 첫 번째 실패한 클러스터에서 보고됩니다. 리소스 배포가 실패하는 여러 클러스터에 애플리케이션을 배포하면 허브 클러스터에서 첫 번째 실패한 클러스터 네임스페이스에 대해 하나의 managedClusterView CR만 생성됩니다. managedClusterView CR은 애플리케이션 소유자가 실패한 원격 클러스터에 액세스할 필요가 없도록 실패한 클러스터에서 자세한 서브스크립션 상태를 검색합니다.

상태를 가져오기 위해 실행할 수 있는 다음 명령을 확인합니다.

% oc get managedclusterview -n <failing-clusternamespace> "<app-name>-<app name>"

1.3.5. CLI 애플리케이션 수준 상태

관리형 클러스터에 액세스하여 서브스크립션 상태를 가져올 수 없는 경우 CLI를 사용할 수 있습니다. 클러스터 수준 또는 애플리케이션 수준 서브스크립션 보고서는 전체 상태를 제공하지만 애플리케이션에 대한 자세한 오류 메시지는 제공하지 않습니다.

  1. multicloud-operators-subscription 에서 CLI를 다운로드합니다.
  2. 다음 명령을 실행하여 ManagedClusterView 리소스를 생성하여 오류를 확인할 수 있도록 관리형 클러스터 애플리케이션 SubscriptionStatus 를 확인합니다.
% getAppSubStatus.sh -c <your-managed-cluster> -s <your-appsub-namespace> -n <your-appsub-name>

1.3.6. CLI 마지막 업데이트 시간

이 정보를 검색하기 위해 관리되는 각 클러스터에 로그인할 수 없는 경우 지정된 관리 클러스터에서 AppSub의 마지막 업데이트 시간을 가져올 수도 있습니다. 따라서 관리형 클러스터에서 AppSub의 마지막 업데이트 시간 검색을 단순화하기 위해 유틸리티 스크립트가 생성되었습니다. 이 스크립트는 Hub 클러스터에서 실행되도록 설계되었습니다. ManagedClusterView 리소스를 생성하여 관리 클러스터에서 AppSub를 가져오고 데이터를 구문 분석하여 마지막 업데이트 시간을 가져옵니다.

  1. multicloud-operators-subscription 에서 CLI를 다운로드합니다.
  2. 다음 명령을 실행하여 관리형 클러스터에서 App Sub 의 마지막 업데이트 시간을 검색합니다. 이 스크립트는 hub 클러스터에서 실행되도록 설계되었습니다. ManagedClusterView 리소스를 생성하여 관리 클러스터에서 AppSub를 가져오고 데이터를 구문 분석하여 마지막 업데이트 시간을 가져옵니다.
% getLastUpdateTime.sh -c <your-managed-cluster> -s <your-appsub-namespace> -n <your-appsub-name>
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.