我正在尝试在单独的命名空间中安装 k8s-dashboard helm Chart v6.0.7。该命名空间具有以下资源配额规范。
Resource Quotas
Name: kubernetes-dashboard-resourcequota
Resource Used Hard
-------- --- ---
limits.cpu 0 12
limits.memory 0 4000Mi
requests.cpu 0 12
requests.memory 0 4000Mi
当我尝试安装 k8s-dashboard helm 图表时,出现以下错误
Warning FailedCreate replicaset/kubernetes-dashboard-6c5dcc9d66 Error creating: pods "kubernetes-dashboard-6c5dcc9d66-twhvd" is forbidden: failed quota: kubernetes-dashboard-resourcequota: must specify limits.cpu for: dashboard-metrics-scraper; limits.memory for: dashboard-metrics-scraper; requests.cpu for: dashboard-metrics-scraper; requests.memory for: dashboard-metrics-scraper
我没有在 Helm Chart 中设置任何资源配额参数。知道这里发生了什么吗?
如果在命名空间中为 CPU 和内存等计算资源启用了配额,则必须为这些值指定请求或限制;否则,配额系统可能会拒绝 pod 创建。
对于 CPU 和内存资源,ResourceQuotas 强制该命名空间中的每个(新)Pod 设置该资源的限制。如果您在命名空间中强制执行 cpu 或内存的资源配额,则必须为您提交的每个新 Pod 指定该资源的“请求”或“限制”。如果不这样做,控制平面可能会拒绝该 Pod 的准入。
在 kubernetes 仪表板图表中看起来,指标抓取器部署缺少请求和限制设置。
我确实看到了最新版本图表中的部分
.Values.metricsScraper.containers.resources
metricsScraper:
containers:
resources:
requests:
cpu: 100m
memory: 200Mi
limits:
cpu: 250m
memory: 400Mi
请检查您的图表版本,看看是否存在。还要检查
kubernetes-dashboard/templates/deployments/metrics-scraper.yaml
metrics-scraper 部署 yaml 中的资源部分