Google Kubernetes Engine(GKE)上の Ray クラスタのログと指標を収集して表示する


このページでは、Google Kubernetes Engine(GKE)で実行されている Ray クラスタのログと指標を収集するように Google Kubernetes Engine(GKE)を構成する方法と、Cloud Logging と Cloud Monitoring で Ray のログと指標を表示する方法について説明します。

Ray と KubeRay の詳細については、Ray on Google Kubernetes Engine(GKE)の概要をご覧ください。

始める前に

始める前に、次の作業が完了していることを確認してください。

  • Google Kubernetes Engine API を有効にする。
  • Google Kubernetes Engine API の有効化
  • このタスクに Google Cloud CLI を使用する場合は、gcloud CLI をインストールして初期化する。すでに gcloud CLI をインストールしている場合は、gcloud components update を実行して最新のバージョンを取得する。

要件と制限事項

  • Ray クラスタのロギングを有効にする前に、既存の GKE クラスタでシステムとワークロードのロギングを有効にする必要があります。
  • 既存の GKE クラスタで Ray クラスタのログ収集を有効にすると、GKE は既存の Ray Pod ではなく、新しく作成された Ray Pod からのみログを収集します。
  • GKE Standard クラスタの場合、Ray クラスタの指標の収集を有効にするには、Google Cloud Managed Service for Prometheus を有効にする必要があります。Autopilot クラスタの場合、Google Cloud Managed Service for Prometheus はデフォルトで有効になっています。
  • Ray クラスタ内の Ray コンテナで ray-logs という名前のボリュームを指定しないでください。指定すると、GKE はログを収集しません。

Ray クラスタのログ収集を有効にする

Ray クラスタのログ収集は、新規または既存の GKE Autopilot または Standard クラスタで有効にできます。GKE が Ray クラスタから収集する Ray ログは、コンテナログとして分類されます。これには、Ray クラスタ ヘッダーノードとワーカーノードで生成されたすべてのログが含まれます。

Ray クラスタのロギングを有効にするには、Google Cloud コンソールまたは gcloud CLI を使用します。

コンソール

  1. Google Cloud コンソールで Google Kubernetes Engine のページに移動します。

    Google Kubernetes Engine に移動

  2. [ 作成] をクリックし、[Standard] セクションまたは [Autopilot] セクションで [構成] をクリックします。

  3. ナビゲーション パネルの [クラスタ] の下の [機能] をクリックします。

  4. [オペレーション] セクションで、[System and Workloads] チェックボックスがオンになっていることを確認します。

  5. [AI と ML] セクションで、[Ray Operator の有効化] を選択してから、[Ray クラスタのログ収集を有効にする] を選択します。

  6. [作成] をクリックします。

Standard クラスタの場合は、Google Cloud Managed Service for Prometheus も有効にする必要があります。

gcloud

--addons=RayOperator オプションと --enable-ray-cluster-logging オプションを使用してクラスタを作成します。

gcloud container clusters create CLUSTER_NAME \
    --cluster-version=VERSION \
    --addons=RayOperator \
    --enable-ray-cluster-logging

次のように置き換えます。

  • CLUSTER_NAME: 新しいクラスタの名前。
  • VERSION: GKE バージョン。1.30.2-gke.1060005 以降にする必要があります。--release-channel オプションを使用して、リリース チャンネルを選択することもできます。リリース チャンネルには、デフォルトのバージョン 1.30.2-gke.106000 以降が必要です。

既存のクラスタで Ray クラスタのログ収集を有効にするには、--addons=RayOperator オプションと --enable-ray-cluster-logging オプションを指定して gcloud container clusters update コマンドを使用します。

Ray ログを表示する

Logging を使用して、GKE で実行されている Ray クラスタから収集されたログを表示できます。

  1. Google Cloud コンソールで、[Cloud Logging] ページに移動します。

    Cloud Logging に移動

  2. クエリエディタを開き、クエリエディタに式を貼り付けます。

  3. [クエリを実行] をクリックします。

ログ エクスプローラでは、次のサンプルクエリを使用できます。

クエリ / フィルタの名前
すべての Ray ログ
resource.type="k8s_container"
labels."k8s-pod/ray_io/is-ray-node"="yes"
すべての Ray ヘッドログ
resource.type="k8s_container"
labels."k8s-pod/ray_io/node-type"="head"
Ray クラスタ内のすべてのログ
resource.type="k8s_container"
labels."k8s-pod/ray_io/cluster"="RAY_CLUSTER_NAME"
Ray ジョブのすべてのログ
resource.type="k8s_container"
jsonPayload.ray_submission_id="RAY_JOB_SUBMISSION_ID"

Ray クラスタの指標の収集を有効にする

新規または既存の GKE Autopilot または Standard クラスタで Ray クラスタの指標の収集を有効にできます。

Ray クラスタの指標の収集を有効にすると、GKE は既存の Ray クラスタと新しい Ray クラスタから指標を収集します。GKE は、Ray によってエクスポートされたすべてのシステム指標を Prometheus 形式で収集します。

Ray クラスタの指標の収集は、Google Cloud コンソールまたは gcloud CLI を使用して有効にできます。

コンソール

  1. Google Cloud コンソールで Google Kubernetes Engine のページに移動します。

    Google Kubernetes Engine に移動

  2. [ 作成] をクリックし、[Standard] セクションまたは [Autopilot] セクションで [構成] をクリックします。

  3. ナビゲーション パネルの [クラスタ] の下の [機能] をクリックします。

  4. [オペレーション] セクションで、[System and Workloads] チェックボックスがオンになっていることを確認します。

  5. [AI と ML] セクションで、[Ray Operator の有効化] を選択してから、[Ray クラスタの指標の収集を有効にする] を選択します。

  6. [作成] をクリックします。

Standard クラスタの場合は、Google Cloud Managed Service for Prometheus も有効にする必要があります。

gcloud

--addons=RayOperator オプションと --enable-ray-cluster-monitoring オプションを使用してクラスタを作成します。

gcloud container clusters create CLUSTER_NAME \
    --cluster-version=VERSION \
    --addons=RayOperator \
    --enable-ray-cluster-monitoring

次のように置き換えます。

  • CLUSTER_NAME: 新しいクラスタの名前。
  • VERSION: GKE バージョン。1.30.2-gke.1060005 以降にする必要があります。--release-channel オプションを使用して、リリース チャンネルを選択することもできます。リリース チャンネルには、デフォルトのバージョン 1.30.2-gke.106000 以降が必要です。

既存のクラスタで Ray クラスタのログ収集を有効にするには、--addons=RayOperator オプションと --enable-ray-cluster-monitoring オプションを指定して gcloud container clusters update コマンドを使用します。

Ray の指標を表示する

GKE で実行されている Ray クラスタから収集された指標は、Monitoring を使用して表示できます。

  1. Google Cloud コンソールの [Metrics Explorer] ページに移動します。

    Metrics Explorer に移動

  2. [指標を選択] プルダウン メニューで、「Prometheus Target」と入力します。

  3. [有効な指標カテゴリ] セクションで、[Cnpg] を選択します。

次のステップ