14.4. 计算资源
在节点上运行的每个容器都会消耗计算资源,这些资源是可处理、分配和使用的可测量数量。
在编写 pod 配置文件时,您可以选择指定每个容器需要的 CPU 和内存(RAM)的大小,以便更好地在集群中调度 pod 并确保满意的性能。
CPU 以名为 millicores 的单位来衡量。集群中的每个节点检查操作系统以确定节点上的 CPU 内核数,然后将该值乘以 1000 以表示其总容量。例如,如果某个节点有 2 个内核,则节点的 CPU 容量将代表为 2000m。如果您要使用单个内核的 1/10,它将表示为 100m。
内存以字节为单位。此外,它可用于 SI suices(E、P、T、G、M、K)或其电源双重(Ei、P、Ti、Gi、Mi、Ki 等)。
apiVersion: v1
kind: Pod
spec:
containers:
- image: openshift/hello-openshift
name: hello-openshift
resources:
requests:
cpu: 100m
memory: 200Mi
limits:
cpu: 200m
memory: 400Mi
14.4.1. CPU 请求 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
pod 中的每个容器可以指定其在节点上请求的 CPU 数量。调度程序使用 CPU 请求来查找适合容器的节点。
CPU 请求代表容器可能会消耗的最小 CPU 量,但如果没有 CPU 争用,它可以使用节点上的所有可用 CPU。如果节点上有 CPU 争用,则 CPU 请求将为系统上的所有容器提供相对权重,以获取有关容器可以使用的 CPU 时间。
在节点上,CPU 请求映射到内核 CFS 共享来强制实施此行为。