Page MenuHomePhabricator

Allow more flexibility in ResourceQuota and LimitRanger config
Closed, ResolvedPublic

Description

Currently our namespace ResourceQuota and LimitRanger configs are not very flexible.
For example we currently don't support running containers without limits (as all container in a namespace with ResourceQuota set do require defined requests and limits).

We should refactor the helmfile.d code to support more use cases like namespaces without quota/limitrange.

Event Timeline

JMeybohm created this task.

Change 947865 had a related patch set uploaded (by JMeybohm; author: JMeybohm):

[operations/deployment-charts@master] CI: Bail out if admin_ng build fails completely

https://gerrit.wikimedia.org/r/947865

Change 947866 had a related patch set uploaded (by JMeybohm; author: JMeybohm):

[operations/deployment-charts@master] admin_ng: Add more configuration options for resourcequota and limits

https://gerrit.wikimedia.org/r/947866

Change 948128 had a related patch set uploaded (by JMeybohm; author: JMeybohm):

[operations/deployment-charts@master] Remove limits in ResourceQuota and container limitanges for mediawiki

https://gerrit.wikimedia.org/r/948128

Change 947865 merged by jenkins-bot:

[operations/deployment-charts@master] CI: Bail out if admin_ng build fails completely

https://gerrit.wikimedia.org/r/947865

Change 947866 merged by jenkins-bot:

[operations/deployment-charts@master] admin_ng: Add more configuration options for resourcequota and limits

https://gerrit.wikimedia.org/r/947866

Change 948128 merged by jenkins-bot:

[operations/deployment-charts@master] Remove limits in ResourceQuota and container limitanges for mediawiki

https://gerrit.wikimedia.org/r/948128

Deployed, we'll be testing it with new deployments for T342748, I will reopen if we encounter any issue.

Reverting https://gerrit.wikimedia.org/r/c/operations/deployment-charts/+/948128

3m7s        Warning   FailedCreate        replicaset/mw-web.eqiad.canary-77cf597c89   Error creating: pods "mw-web.eqiad.canary-77cf597c89-7m7pg" is forbidden: [minimum cpu usage per Pod is 100m.  No request is specified, minimum memory usage per Pod is 100Mi.  No request is specified, maximum cpu usage per Pod is 9.  No limit is specified, maximum memory usage per Pod is 5Gi.  No limit is specified]
3m7s        Warning   FailedCreate        replicaset/mw-web.eqiad.canary-77cf597c89   Error creating: pods "mw-web.eqiad.canary-77cf597c89-ndh7q" is forbidden: [minimum cpu usage per Pod is 100m.  No request is specified, minimum memory usage per Pod is 100Mi.  No request is specified, maximum cpu usage per Pod is 9.  No limit is specified, maximum memory usage per Pod is 5Gi.  No limit is specified]
3m7s        Warning   FailedCreate        replicaset/mw-web.eqiad.canary-77cf597c89   Error creating: pods "mw-web.eqiad.canary-77cf597c89-7bgbj" is forbidden: [minimum cpu usage per Pod is 100m.  No request is specified, minimum memory usage per Pod is 100Mi.  No request is specified, maximum cpu usage per Pod is 9.  No limit is specified, maximum memory usage per Pod is 5Gi.  No limit is specified]
3m7s        Warning   FailedCreate        replicaset/mw-web.eqiad.canary-77cf597c89   Error creating: pods "mw-web.eqiad.canary-77cf597c89-f78g4" is forbidden: [minimum cpu usage per Pod is 100m.  No request is specified, minimum memory usage per Pod is 100Mi.  No request is specified, maximum cpu usage per Pod is 9.  No limit is specified, maximum memory usage per Pod is 5Gi.  No limit is specified]
3m7s        Warning   FailedCreate        replicaset/mw-web.eqiad.canary-77cf597c89   Error creating: pods "mw-web.eqiad.canary-77cf597c89-c7298" is forbidden: [minimum cpu usage per Pod is 100m.  No request is specified, minimum memory usage per Pod is 100Mi.  No request is specified, maximum cpu usage per Pod is 9.  No limit is specified, maximum memory usage per Pod is 5Gi.  No limit is specified]
3m7s        Warning   FailedCreate        replicaset/mw-web.eqiad.canary-77cf597c89   Error creating: pods "mw-web.eqiad.canary-77cf597c89-459n5" is forbidden: [minimum cpu usage per Pod is 100m.  No request is specified, minimum memory usage per Pod is 100Mi.  No request is specified, maximum cpu usage per Pod is 9.  No limit is specified, maximum memory usage per Pod is 5Gi.  No limit is specified]
3m7s        Warning   FailedCreate        replicaset/mw-web.eqiad.canary-77cf597c89   Error creating: pods "mw-web.eqiad.canary-77cf597c89-552h7" is forbidden: [minimum cpu usage per Pod is 100m.  No request is specified, minimum memory usage per Pod is 100Mi.  No request is specified, maximum cpu usage per Pod is 9.  No limit is specified, maximum memory usage per Pod is 5Gi.  No limit is specified]
3m6s        Warning   FailedCreate        replicaset/mw-web.eqiad.canary-77cf597c89   Error creating: pods "mw-web.eqiad.canary-77cf597c89-swkqc" is forbidden: [minimum cpu usage per Pod is 100m.  No request is specified, minimum memory usage per Pod is 100Mi.  No request is specified, maximum cpu usage per Pod is 9.  No limit is specified, maximum memory usage per Pod is 5Gi.  No limit is specified]
3m6s        Warning   FailedCreate        replicaset/mw-web.eqiad.canary-77cf597c89   Error creating: pods "mw-web.eqiad.canary-77cf597c89-dj2x2" is forbidden: [minimum memory usage per Pod is 100Mi.  No request is specified, minimum cpu usage per Pod is 100m.  No request is specified, maximum cpu usage per Pod is 9.  No limit is specified, maximum memory usage per Pod is 5Gi.  No limit is specified]
23s         Warning   FailedCreate        replicaset/mw-web.eqiad.canary-77cf597c89   (combined from similar events): Error creating: pods "mw-web.eqiad.canary-77cf597c89-mwdt8" is forbidden: [minimum cpu usage per Pod is 100m.  No request is specified, minimum memory usage per Pod is 100Mi.  No request is specified, maximum cpu usage per Pod is 9.  No limit is specified, maximum memory usage per Pod is 5Gi.  No limit is specified]                                                                    
3m7s        Normal    ScalingReplicaSet   deployment/mw-web.eqiad.canary              Scaled up replica set mw-web.eqiad.canary-77cf597c89 to 1                        
5m47s       Warning   Unhealthy           pod/mw-web.eqiad.main-7bd65dbfd-t4djj       Readiness probe failed: command "/bin/healthz" timed out

minimum cpu usage per Pod is 100m. No request is specified, minimum memory usage per Pod is 100Mi. No request is specified

This is because the exporter containers lack resource requests.

maximum cpu usage per Pod is 9. No limit is specified, maximum memory usage per Pod is 5Gi. No limit is specified

This is because we still have Pod limits set in LimitRanger.

Change 950068 had a related patch set uploaded (by JMeybohm; author: JMeybohm):

[operations/deployment-charts@master] Revert "Revert "Remove limits in ResourceQuota and container limitanges for mediawiki""

https://gerrit.wikimedia.org/r/950068

Change 950068 merged by jenkins-bot:

[operations/deployment-charts@master] Revert "Revert "Remove limits in ResourceQuota and container limitanges for mediawiki""

https://gerrit.wikimedia.org/r/950068

Change 951050 had a related patch set uploaded (by JMeybohm; author: JMeybohm):

[operations/deployment-charts@master] admin_ng: Lower the minimum pod memory request to 50Mi

https://gerrit.wikimedia.org/r/951050

Change 951050 merged by jenkins-bot:

[operations/deployment-charts@master] admin_ng: Lower the minimum pod memory request to 50Mi

https://gerrit.wikimedia.org/r/951050

Change 951055 had a related patch set uploaded (by Clément Goubert; author: Clément Goubert):

[operations/deployment-charts@master] admin_ng: Raise max cpu per pod to 10

https://gerrit.wikimedia.org/r/951055

Change 951055 merged by jenkins-bot:

[operations/deployment-charts@master] admin_ng: Raise max cpu per pod to 10

https://gerrit.wikimedia.org/r/951055

Change 951059 had a related patch set uploaded (by Clément Goubert; author: Clément Goubert):

[operations/deployment-charts@master] admin_ng: Lower the minimum container memory request to 50Mi

https://gerrit.wikimedia.org/r/951059

Change 951059 merged by jenkins-bot:

[operations/deployment-charts@master] admin_ng: Lower the minimum container memory request to 50Mi

https://gerrit.wikimedia.org/r/951059