Node
apiVersion: v1
import "k8s.io/api/core/v1"
Node
节点是 Kubernetes 中的工作节点。每个节点在缓存(即 etcd)中都有一个唯一的标识符。
apiVersion: v1
kind: Node
metadata (ObjectMeta)
标准对象的元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
spec (NodeSpec)
Spec 定义节点的行为。https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
status (NodeStatus)
最近观察到的节点状态。由系统填充。只读。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
NodeSpec
NodeSpec 描述创建节点时使用的属性。
configSource (NodeConfigSource)
已弃用:以前用于指定 DynamicKubeletConfig 功能的节点配置源。此功能已删除。
NodeConfigSource 指定节点配置的源。有且仅有一个子字段(不包括元数据)必须是非 nil 的。此 API 自 1.22 起已弃用
configSource.configMap (ConfigMapNodeConfigSource)
ConfigMap 是对节点的 ConfigMap 的引用
ConfigMapNodeConfigSource 包含引用 ConfigMap 作为节点配置源的信息。此 API 自 1.22 起已弃用:https://git.k8s.io/enhancements/keps/sig-node/281-dynamic-kubelet-configuration
configSource.configMap.kubeletConfigKey (string),必需
KubeletConfigKey 声明引用的 ConfigMap 的哪个键对应于 KubeletConfiguration 结构。此字段在所有情况下都是必需的。
configSource.configMap.name (string),必需
Name 是引用的 ConfigMap 的 metadata.name。此字段在所有情况下都是必需的。
configSource.configMap.namespace (string),必需
Namespace 是引用的 ConfigMap 的 metadata.namespace。此字段在所有情况下都是必需的。
configSource.configMap.resourceVersion (string)
ResourceVersion 是引用的 ConfigMap 的 metadata.ResourceVersion。此字段在 Node.Spec 中被禁止,在 Node.Status 中是必需的。
configSource.configMap.uid (string)
UID 是引用的 ConfigMap 的 metadata.UID。此字段在 Node.Spec 中被禁止,在 Node.Status 中是必需的。
externalID (string)
已弃用。并非所有 kubelet 都会设置此字段。在 1.13 之后移除该字段。请参阅:https://issues.k8s.io/61966
podCIDR (string)
PodCIDR 表示分配给节点的 pod IP 范围。
podCIDRs ([]string)
集合:在合并期间将保留唯一值
podCIDRs 表示分配给节点的 IP 范围,供该节点上的 Pod 使用。如果指定此字段,则第 0 个条目必须与 podCIDR 字段匹配。对于 IPv4 和 IPv6,它最多可以包含 1 个值。
providerID (string)
云提供商分配的节点 ID,格式为:<ProviderName>://<ProviderSpecificNodeID>
taints ([]Taint)
原子性:在合并期间将被替换
如果指定,则为节点的污点。
unschedulable (boolean)
Unschedulable 控制新 Pod 的节点可调度性。默认情况下,节点是可调度的。更多信息:https://kubernetes.top/docs/concepts/nodes/node/#manual-node-administration
NodeStatus
NodeStatus 是有关节点当前状态的信息。
addresses ([]NodeAddress)
补丁策略:在键
type
上合并映射:在合并期间,将保留键类型上的唯一值
可访问节点的地址列表。如果可用,则从云提供商查询。更多信息:https://kubernetes.top/docs/concepts/nodes/node/#addresses 注意:此字段被声明为可合并,但合并键不够唯一,这可能会在合并时导致数据损坏。调用者应该使用完全替换补丁。有关示例,请参阅 https://pr.k8s.io/79391。消费者应假设地址可以在节点生命周期内更改。但是,在某些情况下,这可能无法实现,例如在自身状态中继承节点地址的 Pod 或 downward API(status.hostIP)的消费者。
addresses.address (string),必需
节点地址。
addresses.type (string),必需
节点地址类型,可以是 Hostname、ExternalIP 或 InternalIP。
allocatable (map[string]Quantity)
Allocatable 表示可用于调度的节点的资源。默认为 Capacity。
capacity (map[string]Quantity)
Capacity 表示节点的总资源。更多信息:https://kubernetes.top/docs/reference/node/node-status/#capacity
conditions ([]NodeCondition)
补丁策略:在键
type
上合并映射:在合并期间,将保留键类型上的唯一值
Conditions 是当前观察到的节点条件数组。更多信息:https://kubernetes.top/docs/concepts/nodes/node/#condition
conditions.status (string),必需
条件的状态,可以是 True、False、Unknown。
conditions.type (string),必需
节点条件的类型。
conditions.lastHeartbeatTime (Time)
我们上次获得给定条件更新的时间。
Time 是 time.Time 的包装器,它支持正确地编组为 YAML 和 JSON。为 time 包提供的许多工厂方法提供了包装器。
conditions.lastTransitionTime (Time)
条件上次从一种状态转换为另一种状态的时间。
Time 是 time.Time 的包装器,它支持正确地编组为 YAML 和 JSON。为 time 包提供的许多工厂方法提供了包装器。
conditions.message (string)
人类可读的消息,指示有关上次转换的详细信息。
conditions.reason (string)
(简要)条件上次转换的原因。
config (NodeConfigStatus)
通过动态 Kubelet 配置功能分配给节点的配置状态。
NodeConfigStatus 描述由 Node.Spec.ConfigSource 分配的配置的状态。
config.active (NodeConfigSource)
Active 报告节点正在积极使用的检查点配置。Active 将表示 Assigned 配置的当前版本,或当前 LastKnownGood 配置,具体取决于尝试使用 Assigned 配置是否会导致错误。
NodeConfigSource 指定节点配置的源。有且仅有一个子字段(不包括元数据)必须是非 nil 的。此 API 自 1.22 起已弃用
config.active.configMap (ConfigMapNodeConfigSource)
ConfigMap 是对节点的 ConfigMap 的引用
ConfigMapNodeConfigSource 包含引用 ConfigMap 作为节点配置源的信息。此 API 自 1.22 起已弃用:https://git.k8s.io/enhancements/keps/sig-node/281-dynamic-kubelet-configuration
config.active.configMap.kubeletConfigKey (string),必需
KubeletConfigKey 声明引用的 ConfigMap 的哪个键对应于 KubeletConfiguration 结构。此字段在所有情况下都是必需的。
config.active.configMap.name (string),必需
Name 是引用的 ConfigMap 的 metadata.name。此字段在所有情况下都是必需的。
config.active.configMap.namespace (string),必需
Namespace 是引用的 ConfigMap 的 metadata.namespace。此字段在所有情况下都是必需的。
config.active.configMap.resourceVersion (string)
ResourceVersion 是引用的 ConfigMap 的 metadata.ResourceVersion。此字段在 Node.Spec 中被禁止,在 Node.Status 中是必需的。
config.active.configMap.uid (string)
UID 是引用的 ConfigMap 的 metadata.UID。此字段在 Node.Spec 中被禁止,在 Node.Status 中是必需的。
config.assigned (NodeConfigSource)
Assigned 报告节点将尝试使用的已检查点配置。当 Node.Spec.ConfigSource 更新时,节点会将相关的配置负载以及指示预期配置的记录检查点保存到本地磁盘。节点会参考此记录来选择其配置检查点,并在 Assigned 中报告此记录。只有在记录已检查点保存到磁盘后,Assigned 才会更新状态。当 Kubelet 重启时,它会尝试通过加载和验证 Assigned 所标识的已检查点负载,使 Assigned 配置成为 Active 配置。
NodeConfigSource 指定节点配置的源。有且仅有一个子字段(不包括元数据)必须是非 nil 的。此 API 自 1.22 起已弃用
config.assigned.configMap (ConfigMapNodeConfigSource)
ConfigMap 是对节点的 ConfigMap 的引用
ConfigMapNodeConfigSource 包含引用 ConfigMap 作为节点配置源的信息。此 API 自 1.22 起已弃用:https://git.k8s.io/enhancements/keps/sig-node/281-dynamic-kubelet-configuration
config.assigned.configMap.kubeletConfigKey (字符串),必需
KubeletConfigKey 声明引用的 ConfigMap 的哪个键对应于 KubeletConfiguration 结构。此字段在所有情况下都是必需的。
config.assigned.configMap.name (字符串),必需
Name 是引用的 ConfigMap 的 metadata.name。此字段在所有情况下都是必需的。
config.assigned.configMap.namespace (字符串),必需
Namespace 是引用的 ConfigMap 的 metadata.namespace。此字段在所有情况下都是必需的。
config.assigned.configMap.resourceVersion (字符串)
ResourceVersion 是引用的 ConfigMap 的 metadata.ResourceVersion。此字段在 Node.Spec 中被禁止,在 Node.Status 中是必需的。
config.assigned.configMap.uid (字符串)
UID 是引用的 ConfigMap 的 metadata.UID。此字段在 Node.Spec 中被禁止,在 Node.Status 中是必需的。
config.error (字符串)
Error 描述了将 Spec.ConfigSource 协调到 Active 配置时出现的任何问题。例如,尝试将 Spec.ConfigSource 检查点保存到本地 Assigned 记录、尝试检查点保存与 Spec.ConfigSource 相关的负载、尝试加载或验证 Assigned 配置等都可能出现错误。在同步配置时,可能会在不同的点出现错误。较早的错误(例如,下载或检查点保存错误)不会导致回滚到 LastKnownGood,并且可能会在 Kubelet 重试后解决。较晚的错误(例如,加载或验证已检查点的配置)将导致回滚到 LastKnownGood。在后一种情况下,通常可以通过修复 Spec.ConfigSource 中分配的配置来解决错误。您可以通过在 Kubelet 日志中搜索错误消息来找到更多调试信息。Error 是对错误状态的人类可读描述;机器可以检查 Error 是否为空,但不应依赖于不同 Kubelet 版本中 Error 文本的稳定性。
config.lastKnownGood (NodeConfigSource)
LastKnownGood 报告节点在尝试使用 Assigned 配置时遇到错误时将回退到的已检查点配置。当节点确定 Assigned 配置稳定且正确时,Assigned 配置将变为 LastKnownGood 配置。目前,这是通过在本地 Assigned 配置记录更新后开始的 10 分钟浸泡期实现的。如果 Assigned 配置在此期间结束时处于 Active 状态,则它将变为 LastKnownGood。请注意,如果 Spec.ConfigSource 重置为 nil(使用本地默认值),则 LastKnownGood 也会立即重置为 nil,因为始终假定本地默认配置是良好的。您不应假设节点确定配置稳定性和正确性的方法,因为将来可能会更改或变得可配置。
NodeConfigSource 指定节点配置的源。有且仅有一个子字段(不包括元数据)必须是非 nil 的。此 API 自 1.22 起已弃用
config.lastKnownGood.configMap (ConfigMapNodeConfigSource)
ConfigMap 是对节点的 ConfigMap 的引用
ConfigMapNodeConfigSource 包含引用 ConfigMap 作为节点配置源的信息。此 API 自 1.22 起已弃用:https://git.k8s.io/enhancements/keps/sig-node/281-dynamic-kubelet-configuration
config.lastKnownGood.configMap.kubeletConfigKey (字符串),必需
KubeletConfigKey 声明引用的 ConfigMap 的哪个键对应于 KubeletConfiguration 结构。此字段在所有情况下都是必需的。
config.lastKnownGood.configMap.name (字符串),必需
Name 是引用的 ConfigMap 的 metadata.name。此字段在所有情况下都是必需的。
config.lastKnownGood.configMap.namespace (字符串),必需
Namespace 是引用的 ConfigMap 的 metadata.namespace。此字段在所有情况下都是必需的。
config.lastKnownGood.configMap.resourceVersion (字符串)
ResourceVersion 是引用的 ConfigMap 的 metadata.ResourceVersion。此字段在 Node.Spec 中被禁止,在 Node.Status 中是必需的。
config.lastKnownGood.configMap.uid (字符串)
UID 是引用的 ConfigMap 的 metadata.UID。此字段在 Node.Spec 中被禁止,在 Node.Status 中是必需的。
daemonEndpoints (NodeDaemonEndpoints)
节点上运行的守护进程的端点。
features (NodeFeatures)
Features 描述 CRI 实现所实现的功能集。
NodeFeatures 描述 CRI 实现所实现的功能集。NodeFeatures 中包含的功能应仅依赖于 CRI 实现,而与运行时处理程序无关。
features.supplementalGroupsPolicy (布尔值)
如果运行时支持 SupplementalGroupsPolicy 和 ContainerUser,则 SupplementalGroupsPolicy 设置为 true。
images ([]ContainerImage)
原子性:在合并期间将被替换
此节点上的容器镜像列表
images.names ([]字符串)
原子性:在合并期间将被替换
此镜像的已知名称。例如,["kubernetes.example/hyperkube:v1.0.7", "cloud-vendor.registry.example/cloud-vendor/hyperkube:v1.0.7"]
images.sizeBytes (int64)
镜像的大小(以字节为单位)。
nodeInfo (NodeSystemInfo)
唯一标识节点的 ID/UUID 集。更多信息:https://kubernetes.top/docs/concepts/nodes/node/#info
NodeSystemInfo 是一组用于唯一标识节点的 ID/UUID。
nodeInfo.architecture (字符串),必需
节点报告的架构
nodeInfo.bootID (字符串),必需
节点报告的启动 ID。
nodeInfo.containerRuntimeVersion (字符串),必需
节点通过运行时远程 API 报告的 ContainerRuntime 版本(例如 containerd://1.4.2)。
nodeInfo.kernelVersion (字符串),必需
节点从 'uname -r' 报告的内核版本(例如 3.16.0-0.bpo.4-amd64)。
nodeInfo.kubeProxyVersion (字符串),必需
已弃用:节点报告的 KubeProxy 版本。
nodeInfo.kubeletVersion (字符串),必需
节点报告的 Kubelet 版本。
nodeInfo.machineID (字符串),必需
节点报告的 MachineID。为了在集群中唯一标识机器,首选此字段。从 man(5) machine-id 了解更多信息:http://man7.org/linux/man-pages/man5/machine-id.5.html
nodeInfo.operatingSystem (字符串),必需
节点报告的操作系统
nodeInfo.osImage (字符串),必需
节点从 /etc/os-release 报告的操作系统镜像(例如 Debian GNU/Linux 7 (wheezy))。
nodeInfo.systemUUID (字符串),必需
节点报告的 SystemUUID。对于唯一的机器标识,首选 MachineID。此字段特定于 Red Hat 主机 https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid
phase (字符串)
NodePhase 是最近观察到的节点的生命周期阶段。更多信息:https://kubernetes.top/docs/concepts/nodes/node/#phase 该字段永远不会被填充,现在已弃用。
runtimeHandlers ([]NodeRuntimeHandler)
原子性:在合并期间将被替换
可用的运行时处理程序。
NodeRuntimeHandler 是一组运行时处理程序信息。
runtimeHandlers.features (NodeRuntimeHandlerFeatures)
支持的功能。
NodeRuntimeHandlerFeatures 是运行时处理程序实现的功能集。
runtimeHandlers.features.recursiveReadOnlyMounts (布尔值)
如果运行时处理程序支持 RecursiveReadOnlyMounts,则 RecursiveReadOnlyMounts 设置为 true。
runtimeHandlers.features.userNamespaces (布尔值)
如果运行时处理程序支持 UserNamespaces(包括用于卷的 UserNamespaces),则 UserNamespaces 设置为 true。
runtimeHandlers.name (字符串)
运行时处理程序名称。对于默认运行时处理程序,此值为空。
volumesAttached ([]AttachedVolume)
原子性:在合并期间将被替换
附加到节点的卷列表。
volumesAttached.devicePath (字符串),必需
DevicePath 表示卷应可用的设备路径
volumesAttached.name (字符串),必需
附加卷的名称
volumesInUse ([]字符串)
原子性:在合并期间将被替换
节点正在使用(已挂载)的可附加卷的列表。
NodeList
NodeList 是已在主节点注册的所有节点的完整列表。
apiVersion: v1
kind: NodeList
metadata (ListMeta)
标准列表元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
items ([]Node),必需
节点列表
操作
get
读取指定的节点
HTTP 请求
GET /api/v1/nodes/{name}
参数
name (在路径中):字符串,必需
节点的名称
pretty (在查询中):字符串
响应
200 (Node): OK
401: 未经授权
get
读取指定节点的状态
HTTP 请求
GET /api/v1/nodes/{name}/status
参数
name (在路径中):字符串,必需
节点的名称
pretty (在查询中):字符串
响应
200 (Node): OK
401: 未经授权
list
列出或监视 Node 类型的对象
HTTP 请求
GET /api/v1/nodes
参数
allowWatchBookmarks (在查询中):布尔值
continue (在查询中):字符串
fieldSelector (在查询中):字符串
labelSelector (在查询中):字符串
limit (在查询中):整数
pretty (在查询中):字符串
resourceVersion (在查询中):字符串
resourceVersionMatch (在查询中):字符串
sendInitialEvents (在查询中):布尔值
timeoutSeconds (在查询中):整数
watch (在查询中):布尔值
响应
200 (NodeList): OK
401: 未经授权
create
创建一个节点
HTTP 请求
POST /api/v1/nodes
参数
body: Node,必需
dryRun (在查询中):字符串
fieldManager (在查询中):字符串
fieldValidation (在查询中):字符串
pretty (在查询中):字符串
响应
200 (Node): OK
201 (Node): 已创建
202 (Node): 已接受
401: 未经授权
update
替换指定的节点
HTTP 请求
PUT /api/v1/nodes/{name}
参数
name (在路径中):字符串,必需
节点的名称
body: Node,必需
dryRun (在查询中):字符串
fieldManager (在查询中):字符串
fieldValidation (在查询中):字符串
pretty (在查询中):字符串
响应
200 (Node): OK
201 (Node): 已创建
401: 未经授权
update
替换指定节点的状态
HTTP 请求
PUT /api/v1/nodes/{name}/status
参数
name (在路径中):字符串,必需
节点的名称
body: Node,必需
dryRun (在查询中):字符串
fieldManager (在查询中):字符串
fieldValidation (在查询中):字符串
pretty (在查询中):字符串
响应
200 (Node): OK
201 (Node): 已创建
401: 未经授权
patch
部分更新指定的节点
HTTP 请求
PATCH /api/v1/nodes/{name}
参数
name (在路径中):字符串,必需
节点的名称
body: Patch,必需
dryRun (在查询中):字符串
fieldManager (在查询中):字符串
fieldValidation (在查询中):字符串
force (在查询中):布尔值
pretty (在查询中):字符串
响应
200 (Node): OK
201 (Node): 已创建
401: 未经授权
patch
部分更新指定节点的状态
HTTP 请求
PATCH /api/v1/nodes/{name}/status
参数
name (在路径中):字符串,必需
节点的名称
body: Patch,必需
dryRun (在查询中):字符串
fieldManager (在查询中):字符串
fieldValidation (在查询中):字符串
force (在查询中):布尔值
pretty (在查询中):字符串
响应
200 (Node): OK
201 (Node): 已创建
401: 未经授权
delete
删除一个节点
HTTP 请求
DELETE /api/v1/nodes/{name}
参数
name (在路径中):字符串,必需
节点的名称
body: DeleteOptions
dryRun (在查询中):字符串
gracePeriodSeconds (在查询中):整数
pretty (在查询中):字符串
propagationPolicy (在查询中):字符串
响应
200 (Status): OK
202 (Status): 已接受
401: 未经授权
deletecollection
删除节点集合
HTTP 请求
DELETE /api/v1/nodes
参数
body: DeleteOptions
continue (在查询中):字符串
dryRun (在查询中):字符串
fieldSelector (在查询中):字符串
gracePeriodSeconds (在查询中):整数
labelSelector (在查询中):字符串
limit (在查询中):整数
pretty (在查询中):字符串
propagationPolicy (在查询中):字符串
resourceVersion (在查询中):字符串
resourceVersionMatch (在查询中):字符串
sendInitialEvents (在查询中):布尔值
timeoutSeconds (在查询中):整数
响应
200 (Status): OK
401: 未经授权
此页面是自动生成的。
如果您计划报告此页面的问题,请在您的问题描述中说明此页面是自动生成的。修复可能需要在 Kubernetes 项目的其他地方进行。