#container
for key, value in foo
&[data-tag={key}]
applyStyles(value)
for key2, value2 in foo
unless key1 === key2
&[data-tag*={key}][data-tag*={key2}]
applyStyles(blend(value, value2))
提供有关请求和资源限制(例如CPU和内存)的信息。但是,api端点kubectl describe nodes
不提供此信息。
或者,我也可以点击api/v1/nodes
端点以获取每个Pod的信息,这些信息可以在节点之间累积。但是是否已经有一个kubernetes API端点提供有关cpu /内存请求和每个节点限制的信息?
答案 0 :(得分:1)
根据我在文档中找到的内容,负责该工作的端点是Kubernetes API Server。
CPU 和内存都是资源类型。资源类型具有基本单位。 CPU以内核为单位指定,内存为 以字节为单位指定。
CPU和内存统称为计算资源, 或只是资源。计算资源是可衡量的数量, 可以被请求,分配和使用。它们与 API resources。 API资源,例如Pods和Services 是可以通过Kubernetes API读取和修改的对象 服务器。
进一步介绍什么是节点:
与pods和services不同,节点不是Kubernetes固有创建的:它是由Google Compute Engine等云提供商在外部创建的,或者存在于您的物理机或虚拟机池中。这意味着Kubernetes创建节点时,实际上只是在创建代表该节点的对象。创建后,Kubernetes将检查该节点是否有效。 [...] 当前,有三个与Kubernetes节点接口交互的组件:节点控制器,kubelet和kubectl。 [...] 节点的容量(CPU数量和内存量)是节点对象的一部分。通常,节点在创建节点对象时会注册自己并报告其容量。如果您要进行manual node administration,则在添加节点时需要设置节点容量。
Kubernetes调度程序确保有足够的资源用于 节点上的所有Pod。它检查以下请求的总和 节点上的容器不大于节点容量。它 包括所有由kubelet启动的容器,但不包括容器 由Docker直接启动,也没有不在容器中的进程。
编辑:
或者,我也可以点击api / v1 / pods端点来获取此信息 我可以跨节点累积的每个Pod信息。
这是按其工作顺序的实际说明。
但是已经有一个kubernetes API端点提供了 有关CPU /内存请求和每个节点限制的信息? 这个问题的答案是否定的,没有。
不幸的是,没有端点可以直接获取该信息。 Kubectl
使用多个请求来显示节点的描述。您可以通过kubectl -v 8 describe nodes
进行检查:
运行kubectl -v=8 describe nodes
时,您可以按以下顺序看到GET调用:
/api/v1/nodes?includeUninitialized=true
/api/v1/nodes/minikube
/api/v1/pods
/api/v1/events?fieldSelector