Kubernetes
この記事は英語の原文を日本語に翻訳したものです。原文: https://opentelemetry.io/docs/specs/semconv/resource/k8s/
翻訳元: open-telemetry/semantic-conventions v1.44.0(コミット e10a930)
Status: Development
Kubernetesのオブジェクトとメタデータを理解するのに役立つ資料:
Kubernetesオブジェクトの「名前」は、そのオブジェクトの型において、ある特定の時点でのみ「namespace」内で一意です(名前は時間が経つと再利用される場合があります)。「UID」はクラスター全体で一意であり、かつ時間軸を通してもほぼ確実に一意です。このため、すべてのKubernetesオブジェクトについて常にUIDを設定することが推奨されますが、「名前」は通常より人間にとって分かりやすいため、これも併せて設定できます。
Cluster
Status:
type: k8s.cluster
Description: Kubernetesクラスター。
Attributes:
| Role | Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|---|
| Identity | k8s.cluster.uid | Recommended | string | クラスターの疑似ID。kube-system 名前空間のUIDに設定されます。[1] | 218fc5a9-a5f1-4b54-aa05-46717d0ab26d | |
| Description | k8s.cluster.name | Recommended | string | クラスターの名前。 | opentelemetry-cluster |
[1] k8s.cluster.uid: K8sにはクラスターIDを取得する手段がありません。将来この手段が
追加された場合は、公式のAPI経由で k8s.cluster.uid を収集することを推奨する予定です。
それまでの間は、kube-system 名前空間の uid をクラスターIDの代替として使用できます。
以下に、その理由を説明します。
K8sクラスター内で作成されるすべてのオブジェクトには、明確に区別されたUIDが割り当てられます。
kube-system 名前空間はKubernetes自身が使用するものであり、クラスターの生存期間にわたって
存在します。kube-system 名前空間の uid を使用することは、クラスターが再構築されない限り
変化しないため、K8sのクラスターIDとして妥当な代替と言えます。さらに、Kubernetesの
UIDは、ISO/IEC 9834-8およびITU-T X.667
によって標準化されたUUIDです。この規格には次のように記されています。
If generated according to one of the mechanisms defined in Rec. ITU-T X.667 | ISO/IEC 9834-8, a UUID is either guaranteed to be different from all other UUIDs generated before 3603 A.D., or is extremely likely to be different (depending on the mechanism chosen).
(Rec. ITU-T X.667 | ISO/IEC 9834-8で定義された機構のいずれかに従って生成された場合、 UUIDは西暦3603年より前に生成されたすべての他のUUIDと異なることが保証される、 または(選択した機構によっては)異なる可能性が極めて高い。)
したがって、クラスター間でUIDが衝突する可能性は極めて低いといえます。
Node
Status:
type: k8s.node
Description: Kubernetes Nodeオブジェクト。
Attributes:
| Role | Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|---|
| Identity | k8s.node.uid | Recommended | string | NodeのUID。 | 1eb3a0c6-0477-4080-a9cb-0cb7db65c6a2 | |
| Description | k8s.node.name | Recommended | string | Nodeの名前。 | node-1 | |
| Description | k8s.node.annotation.<key> | Opt-In | string | Nodeに置かれたアノテーション。<key> はアノテーション名で、値はアノテーションの値(値が空であっても)。[1] | 0; `` | |
| Description | k8s.node.label.<key> | Opt-In | string | Nodeに置かれたラベル。<key> はラベル名で、値はラベルの値(値が空であっても)。[2] | arm64; `` |
[1] k8s.node.annotation.<key>: 例:
- 値
0を持つアノテーションnode.alpha.kubernetes.io/ttlは、値"0"を持つk8s.node.annotation.node.alpha.kubernetes.io/ttl属性として記録すべきです(SHOULD)。 - 空文字列の値を持つアノテーション
dataは、値""を持つk8s.node.annotation.data属性として記録すべきです(SHOULD)。
[2] k8s.node.label.<key>: 例:
- 値
arm64を持つラベルkubernetes.io/archは、値"arm64"を持つk8s.node.label.kubernetes.io/arch属性として記録すべきです(SHOULD)。 - 空文字列の値を持つラベル
dataは、値""を持つk8s.node.label.data属性として記録すべきです(SHOULD)。
Namespace
Namespaceは名前のスコープを提供します。オブジェクトの名前は名前空間内で一意である必要がありますが、名前空間をまたいで一意である必要はありません。
Status:
type: k8s.namespace
Description: Kubernetes Namespace。
Attributes:
| Role | Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|---|
| Identity | k8s.namespace.name | Recommended | string | Podが実行されている名前空間の名前。 | default | |
| Description | k8s.namespace.annotation.<key> | Opt-In | string | Namespaceに置かれたアノテーション。<key> はアノテーション名で、値はアノテーションの値(値が空であっても)。[1] | 0; `` | |
| Description | k8s.namespace.label.<key> | Opt-In | string | Namespaceに置かれたラベル。<key> はラベル名で、値はラベルの値(値が空であっても)。[2] | default; `` |
[1] k8s.namespace.annotation.<key>: 例:
- 値
0を持つアノテーションttlは、値"0"を持つk8s.namespace.annotation.ttl属性として記録すべきです(SHOULD)。 - 空文字列の値を持つアノテーション
dataは、値""を持つk8s.namespace.annotation.data属性として記録すべきです(SHOULD)。
[2] k8s.namespace.label.<key>: 例:
- 値
defaultを持つラベルkubernetes.io/metadata.nameは、値"default"を持つk8s.namespace.label.kubernetes.io/metadata.name属性として記録すべきです(SHOULD)。 - 空文字列の値を持つラベル
dataは、値""を持つk8s.namespace.label.data属性として記録すべきです(SHOULD)。
Pod
最も小さく単純なKubernetesオブジェクトです。Podはクラスター上で実行されるコンテナの集合を表します。
Status:
type: k8s.pod
Description: Kubernetes Podオブジェクト。
Attributes:
| Role | Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|---|
| Identity | k8s.pod.uid | Recommended | string | PodのUID。 | 275ecb36-5aa8-4c2a-9c47-d8bb681b9aff | |
| Description | k8s.pod.name | Recommended | string | Podの名前。 | opentelemetry-pod-autoconf | |
| Description | k8s.pod.annotation.<key> | Opt-In | string | Podに置かれたアノテーション。<key> はアノテーション名で、値はアノテーションの値。[1] | true; x64; `` | |
| Description | k8s.pod.hostname | Opt-In | string | Podのホスト名を指定します。[2] | collector-gateway | |
| Description | k8s.pod.ip | Opt-In | string | Podに割り当てられたIPアドレス。[3] | 172.18.0.2 | |
| Description | k8s.pod.label.<key> | Opt-In | string | Podに置かれたラベル。<key> はラベル名で、値はラベルの値。[4] | my-app; x64; `` | |
| Description | k8s.pod.start_time | Opt-In | string | Podの開始タイムスタンプ。[5] | 2025-12-04T08:41:03Z |
[1] k8s.pod.annotation.<key>: 例:
- 値
trueを持つアノテーションkubernetes.io/enforce-mountable-secretsは、値"true"を持つk8s.pod.annotation.kubernetes.io/enforce-mountable-secrets属性として記録すべきです(SHOULD)。 - 値
x64を持つアノテーションmycompany.io/archは、値"x64"を持つk8s.pod.annotation.mycompany.io/arch属性として記録すべきです(SHOULD)。 - 空文字列の値を持つアノテーション
dataは、値""を持つk8s.pod.annotation.data属性として記録すべきです(SHOULD)。
[2] k8s.pod.hostname: K8sのPod仕様には、ホスト名を指定するために使えるオプションのhostnameフィールドがあります。
このフィールドについてはK8sのドキュメントを参照してください。
この属性は、K8s PodSpecの
hostname フィールドと対応します。
[3] k8s.pod.ip: この属性は、K8s PodStatusの
podIP フィールドと対応します。
[4] k8s.pod.label.<key>: 例:
- 値
my-appを持つラベルappは、値"my-app"を持つk8s.pod.label.app属性として記録すべきです(SHOULD)。 - 値
x64を持つラベルmycompany.io/archは、値"x64"を持つk8s.pod.label.mycompany.io/arch属性として記録すべきです(SHOULD)。 - 空文字列の値を持つラベル
dataは、値""を持つk8s.pod.label.data属性として記録すべきです(SHOULD)。
[5] k8s.pod.start_time: Kubeletがオブジェクトを確認した日時。
これはKubeletがそのPodのコンテナイメージを取得する前の時点です。
この属性は、ISO 8601(RFC 3339互換)形式による、K8s PodStatusの
startTime フィールドと対応します。
Container
Podテンプレートにおけるコンテナの仕様です。この型は、実行中のコンテナの名前とは異なる、Podテンプレート内のコンテナの名前などの情報を捉えるために使われることを意図しています。
注記: この型は、実行中のコンテナに対応するcontainerとは異なります。
Status:
type: k8s.container
Description: PodTemplate内のコンテナ。
Attributes:
| Role | Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|---|
| Identity | k8s.container.name | Recommended | string | Pod仕様におけるContainerの名前で、Pod内で一意である必要があります。コンテナランタイムは通常、これとは異なるグローバルに一意な名前(container.name)を使用します。 | redis | |
| Description | k8s.container.restart_count | Recommended | int | コンテナが再起動した回数。この属性は、コンテナ仕様内の特定のコンテナ(実行中か停止中かを問わない)を識別するために使用できます。 | ||
| Description | k8s.container.status.last_terminated_reason | Recommended | string | Containerが最後に終了した理由。 | Evicted; Error |
ReplicaSet
Status:
type: k8s.replicaset
Description: Kubernetes ReplicaSetオブジェクト。
Attributes:
| Role | Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|---|
| Identity | k8s.replicaset.uid | Recommended | string | ReplicaSetのUID。 | 275ecb36-5aa8-4c2a-9c47-d8bb681b9aff | |
| Description | k8s.replicaset.name | Recommended | string | ReplicaSetの名前。 | opentelemetry | |
| Description | k8s.replicaset.annotation.<key> | Opt-In | string | ReplicaSetに置かれたアノテーション。<key> はアノテーション名で、値はアノテーションの値(値が空であっても)。[1] | 0; `` | |
| Description | k8s.replicaset.label.<key> | Opt-In | string | ReplicaSetに置かれたラベル。<key> はラベル名で、値はラベルの値(値が空であっても)。[2] | guestbook; `` |
[1] k8s.replicaset.annotation.<key>: 例:
- 値
0を持つアノテーションreplicasは、値"0"を持つk8s.replicaset.annotation.replicas属性として記録すべきです(SHOULD)。 - 空文字列の値を持つアノテーション
dataは、値""を持つk8s.replicaset.annotation.data属性として記録すべきです(SHOULD)。
[2] k8s.replicaset.label.<key>: 例:
- 値
guestbookを持つラベルappは、値"guestbook"を持つk8s.replicaset.label.app属性として記録すべきです(SHOULD)。 - 空文字列の値を持つラベル
injectedは、値""を持つk8s.replicaset.label.injected属性として記録すべきです(SHOULD)。
Deployment
ローカル状態を持たないPodを実行することで、レプリケートされたアプリケーションを管理するAPIオブジェクトです。各レプリカはPodとして表現され、それらのPodはクラスターのノード間に分散配置されます。
Status:
type: k8s.deployment
Description: Kubernetes Deploymentオブジェクト。
Attributes:
| Role | Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|---|
| Identity | k8s.deployment.uid | Recommended | string | DeploymentのUID。 | 275ecb36-5aa8-4c2a-9c47-d8bb681b9aff | |
| Description | k8s.deployment.name | Recommended | string | Deploymentの名前。 | opentelemetry | |
| Description | k8s.deployment.annotation.<key> | Opt-In | string | Deploymentに置かれたアノテーション。<key> はアノテーション名で、値はアノテーションの値(値が空であっても)。[1] | 1; `` | |
| Description | k8s.deployment.label.<key> | Opt-In | string | Deploymentに置かれたラベル。<key> はラベル名で、値はラベルの値(値が空であっても)。[2] | guestbook; `` |
[1] k8s.deployment.annotation.<key>: 例:
- 値
1を持つアノテーションreplicasは、値"1"を持つk8s.deployment.annotation.replicas属性として記録すべきです(SHOULD)。 - 空文字列の値を持つアノテーション
dataは、値""を持つk8s.deployment.annotation.data属性として記録すべきです(SHOULD)。
[2] k8s.deployment.label.<key>: 例:
- 値
guestbookを持つラベルappは、値"guestbook"を持つk8s.deployment.label.app属性として記録すべきです(SHOULD)。 - 空文字列の値を持つラベル
injectedは、値""を持つk8s.deployment.label.injected属性として記録すべきです(SHOULD)。
StatefulSet
Podの集合のデプロイとスケーリングを管理し、それらのPodの順序と一意性を保証します。
Status:
type: k8s.statefulset
Description: Kubernetes StatefulSetオブジェクト。
Attributes:
| Role | Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|---|
| Identity | k8s.statefulset.uid | Recommended | string | StatefulSetのUID。 | 275ecb36-5aa8-4c2a-9c47-d8bb681b9aff | |
| Description | k8s.statefulset.name | Recommended | string | StatefulSetの名前。 | opentelemetry | |
| Description | k8s.statefulset.annotation.<key> | Opt-In | string | StatefulSetに置かれたアノテーション。<key> はアノテーション名で、値はアノテーションの値(値が空であっても)。[1] | 1; `` | |
| Description | k8s.statefulset.label.<key> | Opt-In | string | StatefulSetに置かれたラベル。<key> はラベル名で、値はラベルの値(値が空であっても)。[2] | guestbook; `` |
[1] k8s.statefulset.annotation.<key>: 例:
- 値
1を持つアノテーションreplicasは、値"1"を持つk8s.statefulset.annotation.replicas属性として記録すべきです(SHOULD)。 - 空文字列の値を持つアノテーション
dataは、値""を持つk8s.statefulset.annotation.data属性として記録すべきです(SHOULD)。
[2] k8s.statefulset.label.<key>: 例:
- 値
guestbookを持つラベルappは、値"guestbook"を持つk8s.statefulset.label.app属性として記録すべきです(SHOULD)。 - 空文字列の値を持つラベル
injectedは、値""を持つk8s.statefulset.label.injected属性として記録すべきです(SHOULD)。
DaemonSet
DaemonSetは、すべて(または一部)のNodeがPodのコピーを実行することを保証します。
Status:
type: k8s.daemonset
Description: Kubernetes DaemonSetオブジェクト。
Attributes:
| Role | Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|---|
| Identity | k8s.daemonset.uid | Recommended | string | DaemonSetのUID。 | 275ecb36-5aa8-4c2a-9c47-d8bb681b9aff | |
| Description | k8s.daemonset.name | Recommended | string | DaemonSetの名前。 | opentelemetry | |
| Description | k8s.daemonset.annotation.<key> | Opt-In | string | DaemonSetに置かれたアノテーション。<key> はアノテーション名で、値はアノテーションの値(値が空であっても)。[1] | 1; `` | |
| Description | k8s.daemonset.label.<key> | Opt-In | string | DaemonSetに置かれたラベル。<key> はラベル名で、値はラベルの値(値が空であっても)。[2] | guestbook; `` |
[1] k8s.daemonset.annotation.<key>: 例:
- 値
1を持つアノテーションreplicasは、値"1"を持つk8s.daemonset.annotation.replicas属性として記録すべきです(SHOULD)。 - 空文字列の値を持つアノテーション
dataは、値""を持つk8s.daemonset.annotation.data属性として記録すべきです(SHOULD)。
[2] k8s.daemonset.label.<key>: 例:
- 値
guestbookを持つラベルappは、値"guestbook"を持つk8s.daemonset.label.app属性として記録すべきです(SHOULD)。 - 空文字列の値を持つラベル
injectedは、値""を持つk8s.daemonset.label.injected属性として記録すべきです(SHOULD)。
Job
Jobは1つ以上のPodを作成し、指定した数のPodが正常に終了することを保証します。
Status:
type: k8s.job
Description: Kubernetes Jobオブジェクト。
Attributes:
| Role | Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|---|
| Identity | k8s.job.uid | Recommended | string | JobのUID。 | 275ecb36-5aa8-4c2a-9c47-d8bb681b9aff | |
| Description | k8s.job.name | Recommended | string | Jobの名前。 | opentelemetry | |
| Description | k8s.job.annotation.<key> | Opt-In | string | Jobに置かれたアノテーション。<key> はアノテーション名で、値はアノテーションの値(値が空であっても)。[1] | 1; `` | |
| Description | k8s.job.label.<key> | Opt-In | string | Jobに置かれたラベル。<key> はラベル名で、値はラベルの値(値が空であっても)。[2] | ci; `` |
[1] k8s.job.annotation.<key>: 例:
- 値
1を持つアノテーションnumberは、値"1"を持つk8s.job.annotation.number属性として記録すべきです(SHOULD)。 - 空文字列の値を持つアノテーション
dataは、値""を持つk8s.job.annotation.data属性として記録すべきです(SHOULD)。
[2] k8s.job.label.<key>: 例:
- 値
ciを持つラベルjobtypeは、値"ci"を持つk8s.job.label.jobtype属性として記録すべきです(SHOULD)。 - 空文字列の値を持つラベル
automatedは、値""を持つk8s.job.label.automated属性として記録すべきです(SHOULD)。
CronJob
CronJobは、繰り返しスケジュールに従ってJobを作成します。
Status:
type: k8s.cronjob
Description: Kubernetes CronJobオブジェクト。
Attributes:
| Role | Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|---|
| Identity | k8s.cronjob.uid | Recommended | string | CronJobのUID。 | 275ecb36-5aa8-4c2a-9c47-d8bb681b9aff | |
| Description | k8s.cronjob.name | Recommended | string | CronJobの名前。 | opentelemetry | |
| Description | k8s.cronjob.annotation.<key> | Opt-In | string | CronJobに置かれたcronjobアノテーション。<key> はアノテーション名で、値はアノテーションの値。[1] | 4; `` | |
| Description | k8s.cronjob.label.<key> | Opt-In | string | CronJobに置かれたラベル。<key> はラベル名で、値はラベルの値。[2] | weekly; `` |
[1] k8s.cronjob.annotation.<key>: 例:
- 値
4を持つアノテーションretriesは、値"4"を持つk8s.cronjob.annotation.retries属性として記録すべきです(SHOULD)。 - 空文字列の値を持つアノテーション
dataは、値""を持つk8s.cronjob.annotation.data属性として記録すべきです(SHOULD)。
[2] k8s.cronjob.label.<key>: 例:
- 値
weeklyを持つラベルtypeは、値"weekly"を持つk8s.cronjob.label.type属性として記録すべきです(SHOULD)。 - 空文字列の値を持つラベル
automatedは、値""を持つk8s.cronjob.label.automated属性として記録すべきです(SHOULD)。
ReplicationController
ReplicationControllerは、指定した数のPodレプリカが常に実行されていることを保証します。
Status:
type: k8s.replicationcontroller
Description: Kubernetes ReplicationControllerオブジェクト。
Attributes:
| Role | Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|---|
| Identity | k8s.replicationcontroller.uid | Recommended | string | replication controllerのUID。 | 275ecb36-5aa8-4c2a-9c47-d8bb681b9aff | |
| Description | k8s.replicationcontroller.name | Recommended | string | replication controllerの名前。 | opentelemetry |
HorizontalPodAutoscaler
HorizontalPodAutoscaler(略称HPA)は、需要に合わせてワークロードを自動的にスケーリングすることを目的として、ワークロードリソース(DeploymentやStatefulSetなど)を自動的に更新します。
Status:
type: k8s.hpa
Description: Kubernetes HorizontalPodAutoscalerオブジェクト。
Attributes:
| Role | Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|---|
| Identity | k8s.hpa.uid | Recommended | string | horizontal pod autoscalerのUID。 | 275ecb36-5aa8-4c2a-9c47-d8bb681b9aff | |
| Description | k8s.hpa.name | Recommended | string | horizontal pod autoscalerの名前。 | opentelemetry | |
| Description | k8s.hpa.scaletargetref.api_version | Recommended | string | HorizontalPodAutoscalerがスケール対象とするリソースのAPIバージョン。[1] | apps/v1; autoscaling/v2 | |
| Description | k8s.hpa.scaletargetref.kind | Recommended | string | HorizontalPodAutoscalerがスケール対象とするリソースの種類(kind)。[2] | Deployment; StatefulSet | |
| Description | k8s.hpa.scaletargetref.name | Recommended | string | HorizontalPodAutoscalerがスケール対象とするリソースの名前。[3] | my-deployment; my-statefulset |
[1] k8s.hpa.scaletargetref.api_version: これは、HPA仕様の scaleTargetRef にある apiVersion フィールドに対応します。
[2] k8s.hpa.scaletargetref.kind: これは、HPA仕様の scaleTargetRef にある kind フィールドに対応します。
[3] k8s.hpa.scaletargetref.name: これは、HPA仕様の scaleTargetRef にある name フィールドに対応します。
ResourceQuota
ResourceQuotaは、名前空間ごとの集約リソース消費を制限する制約を提供します。
Status:
type: k8s.resourcequota
Description: Kubernetes ResourceQuotaオブジェクト。
Attributes:
| Role | Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|---|
| Identity | k8s.resourcequota.uid | Recommended | string | resource quotaのUID。 | 275ecb36-5aa8-4c2a-9c47-d8bb681b9aff | |
| Description | k8s.resourcequota.name | Recommended | string | resource quotaの名前。 | opentelemetry |
PersistentVolume
PersistentVolume(PV)は、管理者によって準備される、またはStorageClassesを使って動的に準備される、クラスター内のストレージの一片です。
Status:
type: k8s.persistentvolume
Description: KubernetesのPersistentVolumeオブジェクト。
Attributes:
| Role | Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|---|
| Identity | k8s.persistentvolume.uid | Required | string | PersistentVolumeのUID。 | 275ecb36-5aa8-4c2a-9c47-d8bb681b9aff | |
| Description | k8s.persistentvolume.name | Recommended | string | PersistentVolumeの名前。 | pv-data-01 | |
| Description | k8s.storageclass.name | Recommended | string | K8sのStorageClassオブジェクトの名前。 | gold.storageclass.storage.k8s.io | |
| Description | k8s.persistentvolume.annotation.<key> | Opt-In | string | PersistentVolumeに置かれたアノテーション。<key> はアノテーション名で、値はアノテーションの値(値が空であっても)。[1] | kubernetes.io/aws-ebs; `` | |
| Description | k8s.persistentvolume.label.<key> | Opt-In | string | PersistentVolumeに置かれたラベル。<key> はラベル名で、値はラベルの値(値が空であっても)。[2] | ssd; `` | |
| Description | k8s.persistentvolume.reclaim_policy | Opt-In | string | PersistentVolumeの回収ポリシー。[3] | Delete; Retain; Recycle |
[1] k8s.persistentvolume.annotation.<key>: 例:
- 値
kubernetes.io/aws-ebsを持つアノテーションpv.kubernetes.io/provisioned-byは、値"kubernetes.io/aws-ebs"を持つk8s.persistentvolume.annotation.pv.kubernetes.io/provisioned-by属性として記録すべきです(SHOULD)。 - 空文字列の値を持つアノテーション
dataは、値""を持つk8s.persistentvolume.annotation.data属性として記録すべきです(SHOULD)。
[2] k8s.persistentvolume.label.<key>: 例:
- 値
ssdを持つラベルtypeは、値"ssd"を持つk8s.persistentvolume.label.type属性として記録すべきです(SHOULD)。 - 空文字列の値を持つラベル
dataは、値""を持つk8s.persistentvolume.label.data属性として記録すべきです(SHOULD)。
[3] k8s.persistentvolume.reclaim_policy: この属性は、K8s PersistentVolumeSpecの
persistentVolumeReclaimPolicy フィールドと対応します。
k8s.persistentvolume.reclaim_policy には、次のよく知られた値の一覧があります。いずれかが該当する場合はその値を使用しなければならず(MUST)、それ以外の場合は独自の値を使ってもかまいません(MAY)。
| Value | Description | Stability |
|---|---|---|
Delete | ボリュームは、クレームから解放された時点で削除されます。 | |
Recycle | ボリュームは、クレームから解放された時点でリサイクル(基本的なスクラブ)されます。 | |
Retain | ボリュームは、クレームから解放された時点で保持されます。 |
PersistentVolumeClaim
PersistentVolumeClaim(PVC)は、ユーザーによるストレージの要求です。PodがNodeリソースを消費するのと同様に、PVCはPVリソースを消費するという点で、Podと似ています。
Status:
type: k8s.persistentvolumeclaim
Description: KubernetesのPersistentVolumeClaimオブジェクト。
Attributes:
| Role | Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|---|
| Identity | k8s.persistentvolumeclaim.uid | Required | string | PersistentVolumeClaimのUID。 | 275ecb36-5aa8-4c2a-9c47-d8bb681b9aff | |
| Description | k8s.persistentvolumeclaim.name | Recommended | string | PersistentVolumeClaimの名前。 | pvc-data-01 | |
| Description | k8s.storageclass.name | Recommended | string | K8sのStorageClassオブジェクトの名前。 | gold.storageclass.storage.k8s.io | |
| Description | k8s.persistentvolumeclaim.annotation.<key> | Opt-In | string | PersistentVolumeClaimに置かれたアノテーション。<key> はアノテーション名で、値はアノテーションの値(値が空であっても)。[1] | kubernetes.io/aws-ebs; `` | |
| Description | k8s.persistentvolumeclaim.label.<key> | Opt-In | string | PersistentVolumeClaimに置かれたラベル。<key> はラベル名で、値はラベルの値(値が空であっても)。[2] | my-app; `` |
[1] k8s.persistentvolumeclaim.annotation.<key>: 例:
- 値
kubernetes.io/aws-ebsを持つアノテーションvolume.beta.kubernetes.io/storage-provisionerは、値"kubernetes.io/aws-ebs"を持つk8s.persistentvolumeclaim.annotation.volume.beta.kubernetes.io/storage-provisioner属性として記録すべきです(SHOULD)。 - 空文字列の値を持つアノテーション
dataは、値""を持つk8s.persistentvolumeclaim.annotation.data属性として記録すべきです(SHOULD)。
[2] k8s.persistentvolumeclaim.label.<key>: 例:
- 値
my-appを持つラベルappは、値"my-app"を持つk8s.persistentvolumeclaim.label.app属性として記録すべきです(SHOULD)。 - 空文字列の値を持つラベル
dataは、値""を持つk8s.persistentvolumeclaim.label.data属性として記録すべきです(SHOULD)。
Kubernetes固有のガイドライン
次のガイドラインは、Kubernetesに固有のものです。