MIG の分析情報を表示して理解する


マネージド インスタンス グループ(MIG)の分析情報を使用すると、MIG に含まれる仮想マシン(VM)インスタンスの CPU とメモリの使用状況がわかります。これらの分析情報は、システム指標や Cloud Monitoring サービスが収集した指標に基づいて自動的に生成されます。これらの分析情報を使用すると、VM リソースをより効率的に使用するために MIG のマシンタイプのサイズ変更を行う際の判断に役立ちます。

分析情報の詳細については、分析情報をご覧ください。

始める前に

  • まだ設定していない場合は、認証を設定します。認証とは、Google Cloud サービスと API にアクセスするために ID を確認するプロセスです。ローカル開発環境からコードまたはサンプルを実行するには、次のように Compute Engine に対する認証を行います。

    このページのサンプルをどのように使うかに応じて、タブを選択してください。

    コンソール

    Google Cloud コンソールを使用して Google Cloud サービスと API にアクセスする場合、認証を設定する必要はありません。

    gcloud

    1. Google Cloud CLI をインストールし、次のコマンドを実行して初期化します。

      gcloud init
    2. デフォルトのリージョンとゾーンを設定します

    REST

    このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。

      Google Cloud CLI をインストールし、次のコマンドを実行して初期化します。

      gcloud init

MIG の推奨事項に関する分析情報を表示する

Compute Engine は、リソースの分析情報に基づいてマシンタイプの推奨事項を生成します。特定の MIG に関連する分析情報を表示すると、MIG の CPU とメモリの使用量の詳細を確認できます。

特定の推奨事項を生成する元となった分析情報を表示するには、gcloud CLI または REST を使用します。

gcloud

特定のゾーンで利用可能なすべての分析情報を詳細に表示するには、insights list コマンドを使用します。

gcloud recommender insights list --project=PROJECT_ID \
  --location=LOCATION \
  --insight-type=INSIGHT_TYPE_ID \
  --format=FORMAT

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

  • PROJECT_ID: 実際のプロジェクトの ID。
  • LOCATION: 分析情報を表示するリソースを含むゾーン。
  • INSIGHT_TYPE_ID: 分析情報タイプの ID。利用可能な VM 分析情報のリストについては、MIG の分析情報のタイプをご覧ください。
  • FORMAT: 希望の出力形式(例: json)。

insights list コマンドの json 出力形式を使用した一般的な出力は次のようになります。

[
  {
    "name": "projects/PROJECT_ID/locations/us-central1-a/insightTypes/google.compute.instanceGroupManager.CpuUsagePredictionInsight/insights/0ec21a13-bb04-3121-7321-dc43a11cc3e3",
    "description": "Predicted CPU usage is 1.5 vCPUs.",
    "targetResources": [
      "//compute.googleapis.com/projects/PROJECT_ID/zones/us-central1-a/instanceGroupManagers/test-instance"
    ],
    "insightSubtype": "CPU_USAGE_PREDICTION",
    "lastRefreshTime": "2021-09-15T06:50:45Z",
    "observationPeriod": "14 days",
    "stateInfo": {
      "state": "ACTIVE"
    },
    "content": {
      "predictedCpuCores": 1.5
    },
    "category": "PERFORMANCE",
    "etag": "fds421j2340",
    "associatedRecommendations": [
      {
         "recommendation": "projects/PROJECT_ID/locations/us-central1-a/recommenders/google.compute.instanceGroupManager.MachineTypeRecommender/recommendations/0fd31b24-cc05-4132-8431-ed54a22dd4f1"
      }
    ]
  }
]

REST

特定のゾーンで利用可能なすべての分析情報を詳細に表示するには、insights.list メソッドを使用します。

GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/INSIGHT_TYPE_ID/insights

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

  • PROJECT_ID: 実際のプロジェクトの ID。
  • LOCATION: 分析情報を表示するリソースを含むゾーン。
  • INSIGHT_TYPE_ID: 分析情報タイプの ID。利用可能な VM 分析情報のリストについては、MIG の分析情報のタイプをご覧ください。

insights.list メソッドの一般的な出力は次のようになります。

[
  {
    "name": "projects/PROJECT_ID/locations/us-central1-a/insightTypes/google.compute.instanceGroupManager.CpuUsagePredictionInsight/insights/0ec21a13-bb04-3121-7321-dc43a11cc3e3",
    "description": "Predicted CPU usage is 1.5 vCPUs.",
    "targetResources": [
      "//compute.googleapis.com/projects/PROJECT_ID/zones/us-central1-a/instanceGroupManagers/test-instance"
    ],
    "insightSubtype": "CPU_USAGE_PREDICTION",
    "lastRefreshTime": "2021-09-15T06:50:45Z",
    "observationPeriod": "14 days",
    "stateInfo": {
      "state": "ACTIVE"
    },
    "content": {
      "predictedCpuCores": 1.5
    },
    "category": "PERFORMANCE",
    "etag": "fds421j2340",
    "associatedRecommendations": [
      {
         "recommendation": "projects/PROJECT_ID/locations/us-central1-a/recommenders/google.compute.instanceGroupManager.MachineTypeRecommender/recommendations/0fd31b24-cc05-4132-8431-ed54a22dd4f1"
      }
    ]
  }
]

分析情報の詳細については、リファレンス ドキュメントをご覧ください。

MIG の分析情報のタイプ

さまざまな分析情報を使用して、MIG のパフォーマンスに関する情報を取得できます。各分析情報タイプには特定のコンテンツ属性があります。

以降のセクションでは、利用可能な MIG の分析情報について説明します。

CPU 使用率に関する分析情報

Compute Engine は、MIG の CPU 使用率が直近のモニタリング期間で通常を上回るか下回った場合に、CPU 使用率の分析情報を作成します。

分析情報タイプ ID は google.compute.instanceGroupManager.CpuUsageInsight です。

使用可能なサブタイプは次のとおりです。

  • HIGH_CPU_USAGE
  • LOW_CPU_USAGE

これらは、以下のような分析情報の説明に関連付けられます。

  • In the last 7 days for 80% of the time, CPU usage was greater than or equal to 83% for the least utilized VM instance. In the last 7 days for 80% of the time, CPU usage was greater than or equal to 93% for the most utilized VM instance.
  • In the last 7 days for 80% of the time, CPU usage was lower than or equal to 10% for the most utilized VM instance. In the last 7 days for 80% of the time, CPU usage was lower than or equal to 3% for the least utilized VM instance.

次の表に、CPU 使用率に関する分析情報に関連するコンテンツの詳細を示します。

属性 タイプ 説明
pointsForLeastUtilizedVm ARRAY オブジェクトの配列。各オブジェクトには次のプロパティが含まれています。
  • sampleProbability:(DOUBLE)分位関数の値を下回る CPU 使用率サンプルの相対量。
  • quantileFunctionValue:(DOUBLE)サンプルの少なくとも一部(サンプル確率)を保持する CPU 使用率の上限。

    この値は vCPU の合計量の比率を表し、範囲は [0, 1] です。

pointsForMostUtilizedVm ARRAY オブジェクトの配列。各オブジェクトには次のプロパティが含まれています。
  • sampleProbability:(DOUBLE)分位関数の値を下回る CPU 使用率サンプルの相対量。
  • quantileFunctionValue:(DOUBLE)サンプルの少なくとも一部(サンプル確率)を保持する CPU 使用率の上限。

    この値は vCPU の合計量の比率を表し、範囲は [0, 1] です。

CPU 使用率の予測に関する分析情報

Compute Engine では、CPU 使用率予測の分析情報が作成され、翌日の予想 CPU 使用率が示されます。

分析情報タイプ ID は google.compute.instanceGroupManager.CpuUsagePredictionInsight です。

この分析情報の一般的な説明は次のようになります。

  • Predicted CPU usage of a single instance is 1.5 vCPUs.

次の表に、CPU 使用率予測に関する分析情報に関連するコンテンツの詳細を示します。

属性 タイプ 説明
predicted_cpu_cores DOUBLE CPU コアの予測量。

CPU 使用率のトレンドに関する分析情報

Compute Engine では、直近のモニタリング期間で CPU 使用率が上昇または減少するトレンドを示すと、CPU 使用率のトレンドに関する分析情報が作成されます。

分析情報タイプ ID は google.compute.instanceGroupManager.CpuUsageTrendInsight です。

使用可能なサブタイプは次のとおりです。

  • CPU_USAGE_INCREASE
  • CPU_USAGE_DECREASE

これらは通常、以下のような分析情報の説明に関連付けられます。

  • In the last 7 days, average daily CPU usage has increased by 8% from 65% to 73%.
  • In the last 7 days, average daily CPU usage has decreased by 10% from 55% to 45%.

次の表に、CPU 使用率のトレンドに関する分析情報に関連するコンテンツの詳細を示します。

属性 タイプ 説明
cpu_usage_percentage_at_start DOUBLE 測定対象: モニタリング期間開始時の CPU 使用量の日平均。

この値は vCPU の総数に対する割合を表し、範囲は [0, 100] です。

cpu_usage_percentage_at_end DOUBLE 測定対象: モニタリング期間の終了時の CPU 使用率の日平均。

この値は vCPU の総数に対する割合を表し、範囲は [0, 100] です。

cpu_usage_percentage_change DOUBLE モニタリング期間中の CPU 使用率の 1 日あたりの平均の変化を予測します。

予測では、線形回帰を使用して 1 日あたりの CPU 使用率の変化をモデル化します。

この値は vCPU の総数に対する割合を表し、範囲は [0, 100] です。

メモリ使用量の分析情報

Compute Engine では、モニタリング期間中にメモリ使用量が異常に高い場合または低い場合に、メモリ使用量に関する分析情報が作成されます。

分析情報タイプ ID は google.compute.instanceGroupManager.MemoryUsageInsight です。

使用可能なサブタイプは次のとおりです。

  • HIGH_MEMORY_USAGE
  • LOW_MEMORY_USAGE

これらは通常、以下のような分析情報の説明に関連付けられます。

  • In the last 12 days for 80% of the time, memory usage was greater than or equal to 64%.
  • In the last 7 days for 50% of the time, memory usage was lower than or equal to 10%.

次の表に、メモリ使用量に関する分析情報に関連するコンテンツの詳細をいくつか示します。

属性 タイプ 説明
sample_probability DOUBLE 分位関数値を下回るメモリ使用量のサンプルの相対量。

値の範囲は [0, 1] です。

quantile_function_lowest_value DOUBLE 最も利用されていない VM のサンプルの少なくとも一部(サンプル確率)を保持するメモリ使用量の上限。

この値はメモリの合計量の比率を表し、範囲は [0, 1] です。

quantile_function_highest_value DOUBLE 最も使用率が高い VM のサンプルの少なくとも一部(サンプル確率)を保持するメモリ使用量の上限。

この値はメモリの合計量の比率を表し、範囲は [0, 1] です。

メモリ使用量の予測に関する分析情報

Compute Engine では、メモリ使用量に関する予測分析情報が作成され、翌日の予測メモリ使用量が示されます。

分析情報タイプ ID は google.compute.instanceGroupManager.MemoryUsagePredictionInsight です。

分析情報の一般的な説明は次のとおりです。

  • Predicted memory usage is 1536 MB.

次の表に、メモリ使用量の予測に関する分析情報に関連するコンテンツの詳細をいくつか示します。

属性 タイプ 説明
predicted_memory_mb DOUBLE メモリの予測量(MB)。

次のステップ