Kubernetes API サーバーメトリクス
セキュリティモニタリングが使用可能です セキュリティモニタリングが使用可能です

Kubernetes API サーバーメトリクス

Agent Check Agentチェック

Supported OS: Linux Mac OS Windows

概要

このチェックは Kube_apiserver_metrics を監視します。

セットアップ

インストール

Kube_apiserver_metrics チェックは Datadog Agent パッケージに含まれているため、サーバーに追加でインストールする必要はありません。

構成

kube_apiserver_metrics チェックを実行する主な使用例としては、クラスターレベルのチェックがあります。 詳細については、クラスターレベルのチェックに関するドキュメントを参照してください。 apiserver のサービスに、次のように注釈を付けることができます。

annotations:
  ad.datadoghq.com/endpoints.check_names: '["kube_apiserver_metrics"]'
  ad.datadoghq.com/endpoints.init_configs: '[{}]'
  ad.datadoghq.com/endpoints.instances:
    '[{ "prometheus_url": "https://%%host%%:%%port%%/metrics", "bearer_token_auth": "true" }]'

これで、Datadog Cluster Agent は、各エンドポイントのチェックを Datadog Agent にスケジューリングします。

このチェックは、エンドポイントを直接 kube_apiserver_metrics.d/conf.yaml ファイルで構成することによって実行することもできます。このファイルは、Agent の構成ディレクトリのルートの conf.d/ フォルダー内にあります。 使用可能なすべての構成オプションの詳細については、サンプル kube_apiserver_metrics.d/conf.yaml を参照してください。

チェックを実行する Agent は、デフォルトで、APIServer に対する認証に使用するサービスアカウントのベアラートークンを取得しようとします。RBAC を使用していない場合は、bearer_token_authfalse に設定してください。

最後に、Datadog Agent をマスターノードで実行する場合は、オートディスカバリーに依存してチェックをスケジューリングできます。公式のイメージ k8s.gcr.io/kube-apiserver を実行している場合は自動です。

検証

Agent の status サブコマンドを実行し、Checks セクションで kube_apiserver_metrics を探します。

収集データ

メトリクス

kube_apiserver.longrunning_gauge
(gauge)
Gauge of all active long-running apiserver requests broken out by verb API resource and scope. Not all requests are tracked this way.
Shown as request
kube_apiserver.current_inflight_requests
(gauge)
Maximal number of currently used inflight request limit of this apiserver per request kind in last second.
kube_apiserver.audit_event
(gauge)
Accumulated number audit events generated and sent to the audit backend
Shown as event
kube_apiserver.go_threads
(gauge)
Number of OS threads created
Shown as thread
kube_apiserver.go_goroutines
(gauge)
Number of goroutines that currently exist
kube_apiserver.APIServiceRegistrationController_depth
(gauge)
Current depth of workqueue: APIServiceRegistrationController
kube_apiserver.etcd_object_counts
(gauge)
Number of stored objects at the time of last check split by kind
Shown as object
kube_apiserver.rest_client_requests_total
(gauge)
Accumulated number of HTTP requests partitioned by status code method and host
Shown as request
kube_apiserver.apiserver_request_count
(gauge)
Accumulated number of apiserver requests broken out for each verb API resource client and HTTP response contentType and code (deprecated since kubernetes 1.15)
Shown as request
kube_apiserver.apiserver_dropped_requests_total
(gauge)
Accumulated number of requests dropped with 'Try again later' response
Shown as request
kube_apiserver.http_requests_total
(gauge)
Accumulated number of HTTP requests made
Shown as request
kube_apiserver.authenticated_user_requests
(gauge)
Accumulated number of authenticated requests broken out by username
Shown as request
kube_apiserver.audit_event.count
(count)
Monotonic count of audit events generated and sent to the audit backend
Shown as event
kube_apiserver.rest_client_requests_total.count
(count)
Monotonic count of HTTP requests partitioned by status code method and host
Shown as request
kube_apiserver.apiserver_request_count.count
(count)
Monotonic count of apiserver requests broken out for each verb API resource client and HTTP response contentType and code (deprecated since kubernetes 1.15)
Shown as request
kube_apiserver.apiserver_dropped_requests_total.count
(count)
Monotonic count of requests dropped with 'Try again later' response
Shown as request
kube_apiserver.http_requests_total.count
(count)
Monotonic count of the number of HTTP requests made
Shown as request
kube_apiserver.authenticated_user_requests.count
(count)
Monotonic count of authenticated requests broken out by username
Shown as request
kube_apiserver.apiserver_request_total
(gauge)
Accumulated number of apiserver requests broken out for each verb API resource client and HTTP response contentType and code (Only present from kubernetes 1.15 to replace apiserver_request_count)
Shown as request
kube_apiserver.apiserver_request_total.count
(count)
Monotonic count of apiserver requests broken out for each verb API resource client and HTTP response contentType and code (Only present from kubernetes 1.15 to replace apiserver_request_count.count)
Shown as request
kube_apiserver.rest_client_request_latency_seconds.sum
(gauge)
Request latency in seconds broken down by verb and URL
Shown as second
kube_apiserver.rest_client_request_latency_seconds.count
(count)
Request latency in seconds broken down by verb and URL count
kube_apiserver.admission_webhook_admission_latencies_seconds.sum
(gauge)
Admission webhook latency identified by name and broken out for each operation and API resource and type (validate or admit)
Shown as second
kube_apiserver.admission_webhook_admission_latencies_seconds.count
(count)
Admission webhook latency identified by name and broken out for each operation and API resource and type (validate or admit) count
kube_apiserver.admission_step_admission_latencies_seconds.sum
(gauge)
Admission sub-step latency broken out for each operation and API resource and step type (validate or admit)
Shown as second
kube_apiserver.admission_step_admission_latencies_seconds.count
(count)
Admission sub-step latency histogram broken out for each operation and API resource and step type (validate or admit) count
kube_apiserver.admission_step_admission_latencies_seconds_summary.sum
(gauge)
Admission sub-step latency summary broken out for each operation and API resource and step type (validate or admit)
Shown as second
kube_apiserver.admission_step_admission_latencies_seconds_summary.count
(count)
Admission sub-step latency summary broken out for each operation and API resource and step type (validate or admit) count
kube_apiserver.admission_step_admission_latencies_seconds_summary.quantile
(gauge)
Admission sub-step latency summary broken out for each operation and API resource and step type (validate or admit) quantile
Shown as second
kube_apiserver.admission_controller_admission_duration_seconds.sum
(gauge)
Admission controller latency histogram in seconds identified by name and broken out for each operation and API resource and type (validate or admit)
Shown as second
kube_apiserver.admission_controller_admission_duration_seconds.count
(count)
Admission controller latency histogram in seconds identified by name and broken out for each operation and API resource and type (validate or admit) count

サービスのチェック

Kube_apiserver_metrics には、サービスのチェック機能は含まれません。

イベント

Kube_apiserver_metrics には、イベントは含まれません。

トラブルシューティング

ご不明な点は、Datadog のサポートチームまでお問合せください。