第2章 Node [v1]
- 説明
- ノードは Kubernetes のワーカーノードです。各ノードは、キャッシュ内 (つまり、etcd 内) に一意の識別子を持ちます。
- タイプ
-
object
2.1. 仕様
プロパティー | タイプ | 説明 |
---|---|---|
|
| APIVersion はオブジェクトのこの表現のバージョンスキーマを定義します。サーバーは認識されたスキーマを最新の内部値に変換し、認識されない値は拒否することがあります。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources を参照してください。 |
|
| kind はこのオブジェクトが表す REST リソースを表す文字列の値です。サーバーはクライアントが要求を送信するエンドポイントからこれを推測できることがあります。これを更新することはできません。CamelCase を使用します。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds を参照してください。 |
| 標準オブジェクトのメタデータ。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata を参照してください。 | |
|
| NodeSpec は、ノードの作成に使用される属性を記述します。 |
|
| NodeStatus は、ノードの現在のステータスに関する情報です。 |
2.1.1. .spec
- 説明
- NodeSpec は、ノードの作成に使用される属性を記述します。
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| NodeConfigSource は、ノード設定のソースを指定します。正確に 1 つのサブフィールド (メタデータを除く) は nil 以外である必要があります。この API は 1.22 以降非推奨になりました |
|
| 非推奨。すべての kubelets がこのフィールドを設定するわけではありません。1.13 以降のフィールドを削除します。参照: https://issues.k8s.io/61966 |
|
| PodCIDR は、ノードに割り当てられた PodIP 範囲を表します。 |
|
| podCIDRs は、そのノードの Pod で使用するためにノードに割り当てられた IP 範囲を表します。このフィールドを指定する場合、0 番目のエントリーは podCIDR フィールドと一致する必要があります。IPv4 と IPv6 のそれぞれに対して最大 1 つの値を含めることができます。 |
|
| <ProviderName>://<ProviderSpecificNodeID> の形式でクラウドプロバイダーによって割り当てられたノードの ID |
|
| 指定した場合、ノードのテイント。 |
|
| このテイントが接続されているノードは、テイントを許容しない Pod に影響を及ぼします。 |
|
| Unschedulable は、新しい Pod のノードのスケジュール可能性を制御します。デフォルトでは、ノードはスケジュール可能です。詳細: https://kubernetes.io/docs/concepts/nodes/node/#manual-node-administration |
2.1.2. .spec.configSource
- 説明
- NodeConfigSource は、ノード設定のソースを指定します。正確に 1 つのサブフィールド (メタデータを除く) は nil 以外である必要があります。この API は 1.22 以降非推奨になりました
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| ConfigMapNodeConfigSource には、ノードの設定ソースとして ConfigMap を参照するための情報が含まれています。この API は 1.22 以降非推奨になりました: https://git.k8s.io/enhancements/keps/sig-node/281-dynamic-kubelet-configuration |
2.1.3. .spec.configSource.configMap
- 説明
- ConfigMapNodeConfigSource には、ノードの設定ソースとして ConfigMap を参照するための情報が含まれています。この API は 1.22 以降非推奨になりました: https://git.k8s.io/enhancements/keps/sig-node/281-dynamic-kubelet-configuration
- タイプ
-
object
- 必須
-
namespace
-
name
-
kubeletConfigKey
-
プロパティー | タイプ | 説明 |
---|---|---|
|
| KubeletConfigKey は、参照される ConfigMap のどのキーが KubeletConfiguration 構造に対応するかを宣言します。このフィールドはすべての場合に必須です。 |
|
| Name は、参照される ConfigMap の metadata.name です。このフィールドはすべての場合に必須です。 |
|
| 名前空間は、参照される ConfigMap の metadata.namespace です。このフィールドはすべての場合に必須です。 |
|
| ResourceVersion は、参照される ConfigMap の metadata.ResourceVersion です。このフィールドは Node.Spec では禁止されており、Node.Status では必須です。 |
|
| UID は、参照される ConfigMap の metadata.UID です。このフィールドは Node.Spec では禁止されており、Node.Status では必須です。 |
2.1.4. .spec.taints
- 説明
- 指定した場合、ノードのテイント。
- タイプ
-
array
2.1.5. .spec.taints[]
- 説明
- このテイントが接続されているノードは、テイントを許容しない Pod に影響を及ぼします。
- タイプ
-
object
- 必須
-
key
-
effect
-
プロパティー | タイプ | 説明 |
---|---|---|
|
| 必須。テイントを許容しない Pod に対するテイントの影響。有効な効果は、NoSchedule、PreferNoSchedule、および NoExecute です。
使用可能な列挙値: - |
|
| 必須。ノードに適用されるテイントキー。 |
| TimeAdded は、テイントが追加された時刻を表します。NoExecute テイントのためにのみ書かれています。 | |
|
| テイントキーに対応するテイント値。 |
2.1.6. .status
- 説明
- NodeStatus は、ノードの現在のステータスに関する情報です。
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| ノードに到達可能なアドレスのリスト。可能な場合は、クラウドプロバイダーから照会されます。詳細: https://kubernetes.io/docs/concepts/nodes/node/#addresses 注: このフィールドはマージ可能として宣言されていますが、マージキーは十分に一意ではないため、マージ時にデータが破損する可能性があります。代わりに、呼び出し元は完全置換パッチを使用する必要があります。例は、https://pr.k8s.io/79391 を参照してください。 |
|
| NodeAddress には、ノードのアドレスに関する情報が含まれています。 |
| Allocatable は、スケジューリングに使用できるノードのリソースを表します。デフォルトは容量です。 | |
| 容量は、ノードの合計リソースを表します。詳細: https://kubernetes.io/docs/concepts/storage/persistent-volumes#capacity | |
|
| 条件は、現在観測されているノード条件の配列です。詳細: https://kubernetes.io/docs/concepts/nodes/node/#condition |
|
| NodeCondition には、ノードの条件情報が含まれています。 |
|
| NodeConfigStatus は、Node.Spec.ConfigSource によって割り当てられた設定のステータスを記述します。 |
|
| NodeDaemonEndpoints は、ノードで実行されているデーモンによって開かれたポートをリスト表示します。 |
|
| このノードのコンテナーイメージのリスト |
|
| コンテナーのイメージを説明する |
|
| NodeSystemInfo は、ノードを一意に識別するための ID/UUID のセットです。 |
|
| NodePhase は、ノードの最近観察されたライフサイクルフェーズです。詳細: https://kubernetes.io/docs/concepts/nodes/node/#phase フィールドにデータが入力されることはなく、現在は非推奨になっています。
使用可能な列挙値: - |
|
| ノードに接続されているボリュームのリスト。 |
|
| AttachedVolume は、ノードに接続されているボリュームを表します |
|
| ノードによって使用中 (マウント済み) の接続可能なボリュームのリスト。 |
2.1.7. .status.addresses
- 説明
- ノードに到達可能なアドレスのリスト。可能な場合は、クラウドプロバイダーから照会されます。詳細: https://kubernetes.io/docs/concepts/nodes/node/#addresses 注: このフィールドはマージ可能として宣言されていますが、マージキーは十分に一意ではないため、マージ時にデータが破損する可能性があります。代わりに、呼び出し元は完全置換パッチを使用する必要があります。例は、https://pr.k8s.io/79391 を参照してください。
- タイプ
-
array
2.1.8. .status.addresses[]
- 説明
- NodeAddress には、ノードのアドレスに関する情報が含まれています。
- タイプ
-
object
- 必須
-
type
-
address
-
プロパティー | タイプ | 説明 |
---|---|---|
|
| ノードアドレス。 |
|
| ノードアドレスタイプ。ホスト名、ExternalIP、または InternalIP のいずれか。 |
2.1.9. .status.conditions
- 説明
- 条件は、現在観測されているノード条件の配列です。詳細: https://kubernetes.io/docs/concepts/nodes/node/#condition
- タイプ
-
array
2.1.10. .status.conditions[]
- 説明
- NodeCondition には、ノードの条件情報が含まれています。
- タイプ
-
object
- 必須
-
type
-
status
-
プロパティー | タイプ | 説明 |
---|---|---|
| 前回、特定の条件で更新を取得しました。 | |
| 前回、状態が 1 つのステータスから別のステータスに移行したとき。 | |
|
| 最後にある状態から別の状態に遷移した時間。 |
|
| (簡単な) 条件の最後の遷移の理由。 |
|
| 状態のステータス、True、False、Unknown のいずれか。 |
|
| ノード条件のタイプ。 |
2.1.11. .status.config
- 説明
- NodeConfigStatus は、Node.Spec.ConfigSource によって割り当てられた設定のステータスを記述します。
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| NodeConfigSource は、ノード設定のソースを指定します。正確に 1 つのサブフィールド (メタデータを除く) は nil 以外である必要があります。この API は 1.22 以降非推奨になりました |
|
| NodeConfigSource は、ノード設定のソースを指定します。正確に 1 つのサブフィールド (メタデータを除く) は nil 以外である必要があります。この API は 1.22 以降非推奨になりました |
|
| エラーは、Spec.ConfigSource をアクティブな設定に調整する際の問題を示しています。たとえば、Spec.ConfigSource をローカルの Assigned レコードにチェックポイントしようとしたり、Spec.ConfigSource に関連付けられたペイロードをチェックポイントしようとしたり、Assignedconfig をロードまたは検証しようとしたりするなどのエラーが発生する可能性があります。設定の同期中に、さまざまなポイントでエラーが発生する場合があります。以前のエラー (ダウンロードエラーやチェックポイントエラーなど) は、LastKnownGood へのロールバックにはならず、Kubelet の再試行全体で解決される可能性があります。その後のエラー (チェックポイント設定のロードや検証など) は、LastKnownGood へのロールバックになります。後者の場合、通常、Spec.ConfigSource で割り当てられた設定を修正することでエラーを解決できます。Kubelet ログでエラーメッセージを検索すると、デバッグに関する追加情報を見つけることができます。エラーは、人間が読める形式のエラー状態の説明です。マシンはエラーが空であるかどうかをチェックできますが、Kubelet バージョン間でのエラーテキストの安定性に依存するべきではありません。 |
|
| NodeConfigSource は、ノード設定のソースを指定します。正確に 1 つのサブフィールド (メタデータを除く) は nil 以外である必要があります。この API は 1.22 以降非推奨になりました |
2.1.12. .status.config.active
- 説明
- NodeConfigSource は、ノード設定のソースを指定します。正確に 1 つのサブフィールド (メタデータを除く) は nil 以外である必要があります。この API は 1.22 以降非推奨になりました
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| ConfigMapNodeConfigSource には、ノードの設定ソースとして ConfigMap を参照するための情報が含まれています。この API は 1.22 以降非推奨になりました: https://git.k8s.io/enhancements/keps/sig-node/281-dynamic-kubelet-configuration |
2.1.13. .status.config.active.configMap
- 説明
- ConfigMapNodeConfigSource には、ノードの設定ソースとして ConfigMap を参照するための情報が含まれています。この API は 1.22 以降非推奨になりました: https://git.k8s.io/enhancements/keps/sig-node/281-dynamic-kubelet-configuration
- タイプ
-
object
- 必須
-
namespace
-
name
-
kubeletConfigKey
-
プロパティー | タイプ | 説明 |
---|---|---|
|
| KubeletConfigKey は、参照される ConfigMap のどのキーが KubeletConfiguration 構造に対応するかを宣言します。このフィールドはすべての場合に必須です。 |
|
| Name は、参照される ConfigMap の metadata.name です。このフィールドはすべての場合に必須です。 |
|
| 名前空間は、参照される ConfigMap の metadata.namespace です。このフィールドはすべての場合に必須です。 |
|
| ResourceVersion は、参照される ConfigMap の metadata.ResourceVersion です。このフィールドは Node.Spec では禁止されており、Node.Status では必須です。 |
|
| UID は、参照される ConfigMap の metadata.UID です。このフィールドは Node.Spec では禁止されており、Node.Status では必須です。 |
2.1.14. .status.config.assigned
- 説明
- NodeConfigSource は、ノード設定のソースを指定します。正確に 1 つのサブフィールド (メタデータを除く) は nil 以外である必要があります。この API は 1.22 以降非推奨になりました
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| ConfigMapNodeConfigSource には、ノードの設定ソースとして ConfigMap を参照するための情報が含まれています。この API は 1.22 以降非推奨になりました: https://git.k8s.io/enhancements/keps/sig-node/281-dynamic-kubelet-configuration |
2.1.15. .status.config.assigned.configMap
- 説明
- ConfigMapNodeConfigSource には、ノードの設定ソースとして ConfigMap を参照するための情報が含まれています。この API は 1.22 以降非推奨になりました: https://git.k8s.io/enhancements/keps/sig-node/281-dynamic-kubelet-configuration
- タイプ
-
object
- 必須
-
namespace
-
name
-
kubeletConfigKey
-
プロパティー | タイプ | 説明 |
---|---|---|
|
| KubeletConfigKey は、参照される ConfigMap のどのキーが KubeletConfiguration 構造に対応するかを宣言します。このフィールドはすべての場合に必須です。 |
|
| Name は、参照される ConfigMap の metadata.name です。このフィールドはすべての場合に必須です。 |
|
| 名前空間は、参照される ConfigMap の metadata.namespace です。このフィールドはすべての場合に必須です。 |
|
| ResourceVersion は、参照される ConfigMap の metadata.ResourceVersion です。このフィールドは Node.Spec では禁止されており、Node.Status では必須です。 |
|
| UID は、参照される ConfigMap の metadata.UID です。このフィールドは Node.Spec では禁止されており、Node.Status では必須です。 |
2.1.16. .status.config.lastKnownGood
- 説明
- NodeConfigSource は、ノード設定のソースを指定します。正確に 1 つのサブフィールド (メタデータを除く) は nil 以外である必要があります。この API は 1.22 以降非推奨になりました
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| ConfigMapNodeConfigSource には、ノードの設定ソースとして ConfigMap を参照するための情報が含まれています。この API は 1.22 以降非推奨になりました: https://git.k8s.io/enhancements/keps/sig-node/281-dynamic-kubelet-configuration |
2.1.17. .status.config.lastKnownGood.configMap
- 説明
- ConfigMapNodeConfigSource には、ノードの設定ソースとして ConfigMap を参照するための情報が含まれています。この API は 1.22 以降非推奨になりました: https://git.k8s.io/enhancements/keps/sig-node/281-dynamic-kubelet-configuration
- タイプ
-
object
- 必須
-
namespace
-
name
-
kubeletConfigKey
-
プロパティー | タイプ | 説明 |
---|---|---|
|
| KubeletConfigKey は、参照される ConfigMap のどのキーが KubeletConfiguration 構造に対応するかを宣言します。このフィールドはすべての場合に必須です。 |
|
| Name は、参照される ConfigMap の metadata.name です。このフィールドはすべての場合に必須です。 |
|
| 名前空間は、参照される ConfigMap の metadata.namespace です。このフィールドはすべての場合に必須です。 |
|
| ResourceVersion は、参照される ConfigMap の metadata.ResourceVersion です。このフィールドは Node.Spec では禁止されており、Node.Status では必須です。 |
|
| UID は、参照される ConfigMap の metadata.UID です。このフィールドは Node.Spec では禁止されており、Node.Status では必須です。 |
2.1.18. .status.daemonEndpoints
- 説明
- NodeDaemonEndpoints は、ノードで実行されているデーモンによって開かれたポートをリスト表示します。
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| DaemonEndpoint には、単一のデーモンエンドポイントに関する情報が含まれています。 |
2.1.19. .status.daemonEndpoints.kubeletEndpoint
- 説明
- DaemonEndpoint には、単一のデーモンエンドポイントに関する情報が含まれています。
- タイプ
-
object
- 必須
-
Port
-
プロパティー | タイプ | 説明 |
---|---|---|
|
| 指定されたエンドポイントのポート番号。 |
2.1.20. .status.images
- 説明
- このノードのコンテナーイメージのリスト
- タイプ
-
array
2.1.21. .status.images[]
- 説明
- コンテナーのイメージを説明する
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| このイメージが知られている名前 (例: "kubernetes.example/hyperkube:v1.0.7"、"cloud-vendor.registry.example/cloud-vendor/hyperkube:v1.0.7")。 |
|
| イメージのサイズ (バイト単位)。 |
2.1.22. .status.nodeInfo
- 説明
- NodeSystemInfo は、ノードを一意に識別するための ID/UUID のセットです。
- タイプ
-
object
- 必須
-
machineID
-
systemUUID
-
bootID
-
kernelVersion
-
osImage
-
containerRuntimeVersion
-
kubeletVersion
-
kubeProxyVersion
-
operatingSystem
-
アーキテクチャー
-
プロパティー | タイプ | 説明 |
---|---|---|
|
| ノードによって報告されたアーキテクチャー |
|
| ノードによって報告されたブート ID。 |
|
| ランタイムリモート API を通じてノードによって報告される ContainerRuntime バージョン (containerd://1.4.2 など)。 |
|
| 'uname -r' からノードによって報告されたカーネルバージョン (例:3.16.0-0.bpo.4-amd64)。 |
|
| ノードによって報告された KubeProxy バージョン。 |
|
| ノードによって報告された Kubelet バージョン。 |
|
| ノードによって報告された MachineID。クラスター内の一意のマシン識別には、このフィールドが推奨されます。man (5)machine-id の詳細:http: //man7.org/linux/man-pages/man5/machine-id.5.html |
|
| ノードによって報告されたオペレーティングシステム |
|
| /etc/os-release からノードによって報告された OS イメージ (例:Debian GNU/Linux 7(wheezy))。 |
|
| ノードによって報告された SystemUUID。一意のマシン識別には、MachineID が推奨されます。このフィールドは、Red Hat ホストに固有です https://access.redhat.com/documentation/ja-jp/red_hat_subscription_management/1/html/rhsm/uuid |
2.1.23. .status.volumesAttached
- 説明
- ノードに接続されているボリュームのリスト。
- タイプ
-
array
2.1.24. .status.volumesAttached[]
- 説明
- AttachedVolume は、ノードに接続されているボリュームを表します
- タイプ
-
object
- 必須
-
name
-
devicePath
-
プロパティー | タイプ | 説明 |
---|---|---|
|
| DevicePath は、ボリュームが使用可能である必要があるデバイスパスを表します |
|
| 添付ボリュームの名前 |