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


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

目標

  • 数分ごとに実行されるシンプルな DAG を Cloud Composer 環境にデプロイする。
  • ログベースの指標を使用してカスタム指標を作成し、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 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. Google Cloud コンソールで、[リソースの管理] ページに移動します。

    [リソースの管理] に移動

  2. プロジェクト リストで、削除するプロジェクトを選択し、[削除] をクリックします。
  3. ダイアログでプロジェクト ID を入力し、[シャットダウン] をクリックしてプロジェクトを削除します。

次のステップ

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