kubernetes - 即使在 openshift 中指定 cpu 请求后,Pod 创建也会失败
问题描述
我创建了一个如下所示的资源配额。
apiVersion: v1
kind: ResourceQuota
metadata:
name: compute-resources
spec:
hard:
requests.cpu: "900m"
然后在我的部署中,我指定资源请求如下。
spec:
containers:
- image: nginx@sha256:189cce606b29fb2a33ebc2fcecfa8e33b0b99740da4737133cdbcee92f3aba0a
imagePullPolicy: Always
name: hello
ports:
- containerPort: 80
protocol: TCP
resources:
requests:
cpu: "500m"
即使在此之后,pod 创建也会失败并显示消息 -
Error creating deployer pod: pods "hello-1-deploy" is forbidden: failed quota: compute-resources: must specify requests.cpu
我在这里做错了什么?仅供参考,我对配额和 pod 使用相同的命名空间/项目。
解决方案
您能否在请求中同时说明限制?无论如何,它是一个 kubernetes 最佳实践来指定工作负载的限制(想知道 Openshift 是否强制执行此操作,但显然该错误具有误导性)。
如果你有权限查看 kube-apiserver 日志,你可以看看是否有额外的线索。
推荐阅读
- python - 为什么这个网页抓取脚本不起作用?
- python - Selenium ActionChains 将光标移动到下拉对象并在其后面单击
- spring-boot - 如何配置 kubernetes 以允许将 ConfingMaps 与 SpringBoot 一起使用
- javascript - 我将如何使用用户上传的图像作为我正在处理的滑动拼图的背景图像?
- python - 单独的数据文件负号和空白分隔符
- javascript - 使用匿名函数调用将动态值传递给关键帧的递归调用超时问题
- java - 如何更正错误:String[] 未初始化
- android - 导航上每个不同片段的不同 FAB 点击监听器
- java - 使用构建器时无法执行自定义反序列化
- c# - 在 URL 中将 JSON 作为查询字符串传递