【问题标题】:GKE autopilot has scaled up my container resources contary to resource requestsGKE 自动驾驶仪已根据资源请求扩展了我的容器资源
【发布时间】:2021-06-29 13:59:45
【问题描述】:

我有一个在 GKE autopilot K8s 集群中运行的容器。我的部署清单中有以下内容(仅包括相关部分):

apiVersion: apps/v1
kind: Deployment
spec:
  template:
    spec:
      containers:
          resources:
            requests:
              memory: "250Mi"
              cpu: "512m"

所以我请求了GKE autopilot allows for normal pods 的最低资源。请注意,我没有指定limits

但是,在应用清单并查看 yaml 后,我发现它与我应用的清单中的内容不匹配:

    resources:
      limits:
        cpu: 750m
        ephemeral-storage: 1Gi
        memory: 768Mi
      requests:
        cpu: 750m
        ephemeral-storage: 1Gi
        memory: 768Mi

知道这里发生了什么吗?为什么 GKE 扩大了资源。这会不必要地花费我更多的钱吗?

有趣的是,它直到最近才按预期工作。这种行为似乎是最近几天才开始的。

【问题讨论】:

    标签: kubernetes google-kubernetes-engine


    【解决方案1】:

    如果您请求的资源如下:

                  memory: "250Mi"
                  cpu: "512m"
    

    那么它们不符合GKE Autopilot 将分配的最小资源量。请查看文档:

    NAME Normal Pods
    CPU 250 mCPU
    Memory 512 MiB
    Ephemeral storage 10 MiB (per container)

    -- Cloud.google.com: Kubernetes Engine: Docs: Concepts: Autopilot overview: Allowable resource ranges

    您可以看到您请求的内存量太小,这就是您看到以下消息的原因(并且清单已修改为创建 requests/limits) :

    Warning: Autopilot increased resource requests for Deployment default/XYZ to meet requirements. See http://g.co/gke/autopilot-resources.
    

    要解决此问题,您需要分配在文档限制范围内的资源,我已包含在上面的链接中。

    【讨论】:

      猜你喜欢
      • 2022-01-22
      • 2022-11-03
      • 1970-01-01
      • 2021-12-23
      • 2021-11-06
      • 2021-12-12
      • 1970-01-01
      • 1970-01-01
      • 2014-04-28
      相关资源
      最近更新 更多