Cloud Composer 환경 상태 확인


Cloud Composer의 마이크로서비스 아키텍처로 인해 Airflow 설정의 엔드 투 엔드 활성 모니터링에는 여러 측정항목이 포함됩니다. 이 가이드에서는 커스텀 측정항목을 기반으로 모니터링 및 알림을 설정할 수 있도록 Google Cloud의 운영 제품군의 로그 기반 측정항목을 사용하는 한 가지 접근 방식을 보여줍니다.

목표

  • Cloud Composer 환경에서 몇 분마다 실행되는 간단한 DAG 배포
  • 로그 기반 측정항목을 사용하여 커스텀 측정항목을 만듦으로써 Google Cloud의 운영 제품군에서 Cloud Composer용으로 생성하는 로그 활용
  • 맞춤설정된 측정항목을 기반으로 모니터링 및 알림 설정

비용

이 문서에서는 비용이 청구될 수 있는 다음과 같은 Google Cloud 구성요소를 사용합니다.

  • Cloud Composer

프로젝트 사용량을 기준으로 예상 비용을 산출하려면 가격 계산기를 사용하세요. Google Cloud를 처음 사용하는 사용자는 무료 체험판을 사용할 수 있습니다.

시작하기 전에

  1. Google Cloud 계정에 로그인합니다. Google Cloud를 처음 사용하는 경우 계정을 만들고 Google 제품의 실제 성능을 평가해 보세요. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.
  2. Google Cloud Console의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.

    프로젝트 선택기로 이동

  3. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

  4. Google Cloud Console의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.

    프로젝트 선택기로 이동

  5. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

  6. Cloud Composer 환경을 만듭니다.
  7. 적절한 권한이 있는지 확인합니다. Cloud Composer 환경의 로그 및 측정항목에 액세스하려면 다음과 같은 권한이 필요합니다.
    • 읽기 전용 로깅 및 모니터링: logging.viewermonitoring.viewer
    • 비공개 로그를 포함한 읽기 전용 로깅: logging.privateLogViewer
    • 읽기-쓰기 모니터링: monitoring.editor

    자세한 내용은 액세스 제어를 참조하세요.

환경에 DAG 추가

  1. 환경의 Cloud Storage 버킷에 다음 DAG를 업로드합니다.

    import airflow
    from airflow import DAG
    from airflow.operators.bash_operator import BashOperator
    from datetime import timedelta
    
    default_args = {
        'retries': 1,
        'retry_delay': timedelta(minutes=5),
        'start_date': airflow.utils.dates.days_ago(0)
    }
    
    dag = DAG(
        'liveness',
        default_args=default_args,
        description='liveness monitoring dag',
        schedule_interval=timedelta(minutes=1))
    
    t1 = BashOperator(
        task_id='echo', bash_command='echo test', dag=dag, depends_on_past=False)
    
  2. Airflow가 DAG를 예약할 때까지 기다립니다. Airflow 웹 인터페이스에서 상태를 확인할 수 있습니다.

    Airflow 웹 인터페이스

Google Cloud 운영 제품군에서 로그 기반 카운터 측정항목 만들기

  1. 로그 탐색기로 이동합니다.

    로그 탐색기로 이동

  2. 페이지 상단에서 올바른 프로젝트를 선택했는지 확인하거나 페이지 상단의 드롭다운 메뉴를 사용하여 프로젝트를 선택합니다.

  3. 리소스 필드에서 Cloud Composer 환경을 선택한 다음 위치 및 환경 이름을 선택합니다.

  4. 로그 유형 필드에서 airflow-worker를 선택합니다.

  5. 필터 막대에서 label:workflow:liveness 라벨을 입력하여 활성 DAG가 생성하는 로그만 표시하는 필터를 만듭니다.

  6. 페이지 상단에서 측정항목 만들기를 클릭합니다. 측정항목 편집기가 페이지의 오른쪽에 표시되고 로그를 표시하는 뷰어 패널이 왼쪽에 표시됩니다.

    측정항목 만들기

  7. 측정항목 편집기 패널에서 다음 필드를 설정합니다.

    1. 이름: 프로젝트의 로그 기반 측정항목에서 고유한 이름을 선택합니다(예: liveness-logs-cnt).
    2. 설명: 측정항목에 대한 설명을 입력합니다.
    3. 유형: 카운터.
  8. 측정항목 만들기를 클릭합니다. 로그 기반 측정항목 페이지가 표시됩니다.

알림 정책 만들기

  1. 로그 기반 측정항목 페이지에서 정책을 만들려는 측정항목을 확인하고 측정항목 목록 오른쪽에 있는 메뉴에서 측정항목에서 알림 만들기를 선택합니다. 새 알림 정책 만들기 페이지가 표시됩니다.

    알림 만들기

  2. 조건 섹션의 새 알림 정책 만들기 페이지에서 수정을 클릭합니다. 미리 채워진 측정항목 만들기 창이 표시됩니다.

  3. (선택사항) 조건의 이름을 입력합니다.

  4. 대상 섹션에서 애그리게이터에 대한 를 선택합니다.

  5. 구성 섹션에서 임곗값에 대해 필요에 따라 값을 설정합니다.

    알림 정책

  6. 저장을 클릭합니다. 새 알림 정책 만들기 패널이 완료된 조건과 함께 표시됩니다.

  7. 알림 정책의 알림, 문서, 이 정책의 이름 지정 섹션을 작성합니다.

  8. 저장을 클릭합니다.

정리

이 튜토리얼에서 사용된 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 리소스가 포함된 프로젝트를 삭제하거나 프로젝트를 유지하고 개별 리소스를 삭제하세요.

  1. Google Cloud 콘솔에서 리소스 관리 페이지로 이동합니다.

    리소스 관리로 이동

  2. 프로젝트 목록에서 삭제할 프로젝트를 선택하고 삭제를 클릭합니다.
  3. 대화상자에서 프로젝트 ID를 입력한 후 종료를 클릭하여 프로젝트를 삭제합니다.

다음 단계

커스텀 대시보드를 사용하여 Cloud Composer 환경의 측정항목을 확인하는 방법은 Google Cloud의 운영 제품군의 환경 및 워크플로 모니터링을 참조하세요.