Cloud Composer 環境のヘルスチェック


Cloud Composer のマイクロサービス アーキテクチャによって、Airflow 設定のエンドツーエンドのライブ モニタリングには複数の指標が含まれます。このチュートリアルでは、Google Cloud のオペレーション スイートのログベースの指標を使用して、カスタム指標に基づいてモニタリングとアラートを設定する方法を示します。

目標

  • 数分ごとに実行されるシンプルな DAG を Cloud Composer 環境にデプロイする。
  • ログベースの指標を使用してカスタム指標を作成し、Google Cloud のオペレーション スイートによって Cloud Composer 用に作成されたログを活用する。
  • カスタマイズされた指標に基づいてモニタリングとアラートを設定する。

費用

このドキュメントでは、Google Cloud の次の課金対象のコンポーネントを使用します。

  • Cloud Composer

料金計算ツールを使うと、予想使用量に基づいて費用の見積もりを生成できます。 新しい Google Cloud ユーザーは無料トライアルをご利用いただける場合があります。

始める前に

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  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 Environment] を選択してから、ロケーションと環境の名前を選択します。

  4. ログタイプ フィールドで、Airflow ワーカーを選択します。

  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. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

次のステップ

カスタム ダッシュボードを使用して Cloud Composer 環境の指標を表示する方法について、Google Cloud のオペレーション スイートで環境とワークフローをモニタリングするで確認する。