2.2. Argo CD 인스턴스 모니터링


기본적으로 Red Hat OpenShift GitOps Operator는 정의된 네임스페이스에 설치된 Argo CD 인스턴스(예: openshift-gitops )를 자동으로 감지하고 이를 클러스터의 모니터링 스택에 연결하여 동기화 외 애플리케이션에 대한 경고를 제공합니다.

2.2.1. 사전 요구 사항

  • cluster-admin 권한이 있는 클러스터에 액세스할 수 있습니다.
  • OpenShift Container Platform 웹 콘솔에 액세스할 수 있습니다.
  • 클러스터에 Red Hat OpenShift GitOps Operator가 설치되어 있습니다.
  • 정의된 네임스페이스에 Argo CD 애플리케이션을 설치했습니다(예: openshift-gitops ).

2.2.2. Prometheus 지표를 사용하여 Argo CD 상태 모니터링

Prometheus 지표 쿼리를 실행하여 Argo CD 애플리케이션의 상태를 모니터링할 수 있습니다.

프로세스

  1. 웹 콘솔의 개발자 화면에서 Argo CD 애플리케이션이 설치된 네임스페이스를 선택하고 모니터링 메트릭 으로 이동합니다.
  2. 쿼리 선택 드롭다운 목록에서 사용자 지정 쿼리 를 선택합니다.
  3. Argo CD 애플리케이션의 상태를 확인하려면 Expression 필드에 다음 예제와 유사한 Prometheus Query Language(PromQL) 쿼리를 입력합니다.

    sum(argocd_app_info{dest_namespace=~"<your_defined_namespace>",health_status!=""}) by (health_status) 1

    1
    < your_defined_namespace > 변수를 정의된 네임스페이스의 실제 이름(예: openshift-gitops )으로 바꿉니다.

2.2.3. Argo CD 인스턴스의 메트릭 자동 스크랩 비활성화

기본적으로 Red Hat OpenShift GitOps Operator는 모든 Argo CD 인스턴스에 대한 메트릭을 자동으로 스크랩하여 성능을 측정합니다. 결과적으로 Operator는 Argo CD 인스턴스가 설치된 네임스페이스에 다음 리소스 및 레이블을 생성합니다.

  • GitOps-operator-argocd-alerts prometheus 규칙
  • <argocd_namespace>-read role
  • < argocd_name > , < argocd_name>-repo-server, < argocd_name>-server 서비스 모니터
  • <argocd_namespace>-prometheus-k8s-read-binding role binding
  • openshift.io/cluster-monitoring=true label

클러스터에서 여러 Argo CD 인스턴스에 대한 메트릭을 스크랩하면 스토리지 사용량이 과도해질 수 있습니다. 예방 조치로 웹 콘솔의 YAML 보기를 사용하고 Argo CD 인스턴스의 메트릭 자동 스크랩을 비활성화하도록 ArgoCD CR(사용자 정의 리소스)을 구성합니다.

클러스터 관리자는 개별 인스턴스에 대한 메트릭 스크랩을 비활성화하여 사용자에게 정의된 네임스페이스를 관리할 수 있는 더 나은 제어, 유연성 및 안정성을 제공할 수 있습니다.

프로세스

  1. OpenShift Container Platform 웹 콘솔에 로그인합니다.
  2. 웹 콘솔의 관리자 화면에서 Operator 설치된 Operator 를 클릭합니다.
  3. 프로젝트 목록에서 사용자 정의 Argo CD 인스턴스가 설치된 프로젝트를 선택합니다.
  4. 설치된 Operator 목록에서 Red Hat OpenShift GitOps 를 선택하고 Argo CD 탭으로 이동합니다.
  5. 사용자 정의 Argo CD 인스턴스를 클릭합니다.
  6. 메트릭의 자동 스크랩을 비활성화하도록 사용자 정의 Argo CD 인스턴스의 ArgoCD CR을 구성합니다.

    1. YAML 탭을 클릭하고 ArgoCD CR의 YAML 파일을 편집합니다.
    2. ArgoCD CR에서 spec.monitoring.disableMetrics 필드 값을 true 로 설정합니다.

      ArgoCD CR의 예

      apiVersion: argoproj.io/v1beta1
      kind: ArgoCD
      metadata:
       name: example  1
       namespace: spring-petclinic 2
      spec:
       monitoring:
         disableMetrics: true

      1
      사용자 정의 Argo CD 인스턴스의 이름입니다.
      2
      사용자 정의 Argo CD 인스턴스를 실행하려는 네임스페이스입니다.
      작은 정보

      또는 다음 명령을 사용하여 Red Hat OpenShift GitOps argocd CLI에서 메트릭 자동 스크랩을 비활성화합니다.

      명령 예

      $ oc patch argocd example -n spring-petclinic --type='json' -p='[{"op": "replace", "path": "/spec/monitoring/disableMetrics", "value": true}]'

      출력 예

      argocd.argoproj.io/example patched

  7. Operator가 정의된 네임스페이스에 openshift.io/cluster-monitoring=false 라벨을 추가하는지 확인합니다.

    1. 관리 네임스페이스로 이동합니다.

      네임스페이스 페이지에 생성된 네임스페이스가 표시됩니다.

    2. 정의된 네임스페이스를 클릭하고 YAML 탭으로 이동하여 metadata.labels 섹션 아래에 Operator가 openshift.io/cluster-monitoring=false 레이블이 추가되었는지 확인합니다.
  8. Operator가 정의된 네임스페이스에서 다음 리소스를 삭제하는지 확인합니다.

    1. 검색으로 이동합니다.
    2. 리소스 목록에서 PrometheusRule,Role,RoleBinding, ServiceMonitors 를 선택합니다.

      검색 페이지에는 선택한 리소스가 표시됩니다.

    3. 검색 페이지에서 PrometheusRule 섹션에서 gitops-operator-argocd-alerts prometheus 규칙이 제거되었는지 확인합니다.
    4. Roles 섹션의 필터 목록에서 네임스페이스 역할을 선택합니다.
    5. < argocd_namespace>-read 역할이 제거되었는지 확인합니다.
    6. RoleBindings 섹션의 필터 목록에서 Namespace RoleBindings 를 선택합니다.
    7. < argocd_namespace>-prometheus-k8s-read-binding 역할 바인딩 이 제거되었는지 확인합니다.
    8. ServiceMonitors 섹션에서 < argocd_name > , < argocd_name>-repo-server, < argocd_name>-server 서비스 모니터가 제거되었는지 확인합니다.
참고

spec.monitoring.disableMetrics 필드 값을 false 로 수정하여 인스턴스에 대한 메트릭을 활성화할 수 있습니다. 그러면 Operator에서 필요한 역할, 역할 바인딩 및 서비스를 모니터링하고 openshift.io/cluster-monitoring=true 레이블을 정의된 네임스페이스에 추가합니다.

2.2.4. 추가 리소스

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.