コンテンツへスキップ

メトリクス

メトリック設定は、オートスケーラーによって監視されるメトリックの種類を定義します。

リビジョンごとのメトリックの設定

リビジョンごとの設定では、これは`autoscaling.knative.dev/metric`アノテーションを使用して決定されます。リビジョンごとに設定できるメトリックの種類は、使用しているオートスケーラーの実装の種類によって異なります。

  • デフォルトのKPAオートスケーラーは`concurrency`と`rps`メトリックをサポートしています。
  • HPAオートスケーラーは`cpu`メトリックをサポートしています。

KPAとHPAの詳細については、サポートされているオートスケーラーの種類に関するドキュメントを参照してください。

  • リビジョンごとのアノテーションキー: `autoscaling.knative.dev/metric`
  • 可能な値: `concurrency`、`rps`、`cpu`、`memory`、またはオートスケーラーの種類に応じて任意のカスタムメトリック名。`cpu`、`memory`、およびカスタムメトリックは、HPAクラスを使用するリビジョンでサポートされています。
  • デフォルト: `concurrency`
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: helloworld-go
  namespace: default
spec:
  template:
    metadata:
      annotations:
        autoscaling.knative.dev/metric: "concurrency"
        autoscaling.knative.dev/target-utilization-percentage: "70" 

注記

"同時実行数"の`autoscaling.knative.dev/target-utilization-percentage`アノテーションは、パーセンテージ値を指定します。ターゲットの設定で詳細を参照してください。

apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: helloworld-go
  namespace: default
spec:
  template:
    metadata:
      annotations:
        autoscaling.knative.dev/metric: "rps"
        autoscaling.knative.dev/target: "150"

注記

"1秒あたりのリクエスト数"の`autoscaling.knative.dev/target`アノテーションは、整数値を指定します。ターゲットの設定で詳細を参照してください。

apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: helloworld-go
  namespace: default
spec:
  template:
    metadata:
      annotations:
        autoscaling.knative.dev/class: "hpa.autoscaling.knative.dev"
        autoscaling.knative.dev/metric: "cpu"
        autoscaling.knative.dev/target: "100"

注記

"CPU"の`autoscaling.knative.dev/target`アノテーションは、ミリコア単位の整数値を指定します。ターゲットの設定で詳細を参照してください。

apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: helloworld-go
  namespace: default
spec:
  template:
    metadata:
      annotations:
        autoscaling.knative.dev/class: "hpa.autoscaling.knative.dev"
        autoscaling.knative.dev/metric: "memory"
        autoscaling.knative.dev/target: "75"

注記

"メモリ"の`autoscaling.knative.dev/target`アノテーションは、Mi単位の整数値を指定します。ターゲットの設定で詳細を参照してください。

指定したメトリックによってリビジョンをスケーリングするHPAを作成できます。HPAは、リビジョンのすべてのPodにおけるメトリックの**平均値**を使用するように構成されます。

apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: helloworld-go
  namespace: default
spec:
  template:
    metadata:
      annotations:
        autoscaling.knative.dev/class: "hpa.autoscaling.knative.dev"
        autoscaling.knative.dev/metric: "<metric-name>"
        autoscaling.knative.dev/target: "<target>"

ここで`<metric-name>`はカスタムメトリックです。

次のステップ

サイトトラフィックを理解するために、アナリティクスとCookieを使用しています。サイトの使用に関する情報は、その目的のためにGoogleと共有されます。詳細はこちら。