From dc770288fd738188ea29aa03cf4cd961236eb9e8 Mon Sep 17 00:00:00 2001 From: Fay Feghali Date: Mon, 22 Jun 2026 17:20:16 -0400 Subject: [PATCH 1/3] optimized keycloak configs based on ADR-046 data --- .../cloud.redhat.com/providers/web/resources_keycloak.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/controllers/cloud.redhat.com/providers/web/resources_keycloak.go b/controllers/cloud.redhat.com/providers/web/resources_keycloak.go index 7acb8afcf..a4613faf4 100644 --- a/controllers/cloud.redhat.com/providers/web/resources_keycloak.go +++ b/controllers/cloud.redhat.com/providers/web/resources_keycloak.go @@ -105,12 +105,12 @@ func configureKeycloakDB(web *localWebProvider) error { res := core.ResourceRequirements{ Limits: core.ResourceList{ - "memory": resource.MustParse("200Mi"), - "cpu": resource.MustParse("100m"), + "memory": resource.MustParse("128Mi"), + "cpu": resource.MustParse("65m"), }, Requests: core.ResourceList{ - "memory": resource.MustParse("100Mi"), - "cpu": resource.MustParse("50m"), + "memory": resource.MustParse("128Mi"), + "cpu": resource.MustParse("33m"), }, } From 4118789d5a3b67201bf827126ceed4ac2bc33355 Mon Sep 17 00:00:00 2001 From: Fay Feghali Date: Wed, 24 Jun 2026 20:04:30 -0400 Subject: [PATCH 2/3] updated keycloak-db cpu/memory reqs/limits --- .../cloud.redhat.com/providers/web/resources_keycloak.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/controllers/cloud.redhat.com/providers/web/resources_keycloak.go b/controllers/cloud.redhat.com/providers/web/resources_keycloak.go index a4613faf4..668d79ff2 100644 --- a/controllers/cloud.redhat.com/providers/web/resources_keycloak.go +++ b/controllers/cloud.redhat.com/providers/web/resources_keycloak.go @@ -105,12 +105,12 @@ func configureKeycloakDB(web *localWebProvider) error { res := core.ResourceRequirements{ Limits: core.ResourceList{ - "memory": resource.MustParse("128Mi"), - "cpu": resource.MustParse("65m"), + "memory": resource.MustParse("136Mi"), + "cpu": resource.MustParse("57m"), }, Requests: core.ResourceList{ - "memory": resource.MustParse("128Mi"), - "cpu": resource.MustParse("33m"), + "memory": resource.MustParse("58Mi"), + "cpu": resource.MustParse("23m"), }, } From 69eb0690e0bb8262292ec55c29835f326986cd61 Mon Sep 17 00:00:00 2001 From: Fay Feghali Date: Wed, 24 Jun 2026 21:05:40 -0400 Subject: [PATCH 3/3] fix: right-size ephemeral container resource requests/limits Update hard-coded CPU/memory requests and limits for mbop, mocktitlements, featureflags-db, and featureflags-edge based on 30-day Prometheus data and the ADR-046 formula. Co-Authored-By: Claude Opus 4.6 --- .../providers/featureflags/localfeatureflags.go | 16 ++++++++-------- .../providers/web/resources_mbop.go | 8 ++++---- .../providers/web/resources_mocktitlements.go | 8 ++++---- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/controllers/cloud.redhat.com/providers/featureflags/localfeatureflags.go b/controllers/cloud.redhat.com/providers/featureflags/localfeatureflags.go index 75e056232..a448b8fe7 100644 --- a/controllers/cloud.redhat.com/providers/featureflags/localfeatureflags.go +++ b/controllers/cloud.redhat.com/providers/featureflags/localfeatureflags.go @@ -155,12 +155,12 @@ func (ff *localFeatureFlagsProvider) EnvProvide() error { res := core.ResourceRequirements{ Limits: core.ResourceList{ - "memory": resource.MustParse("200Mi"), - "cpu": resource.MustParse("100m"), + "memory": resource.MustParse("137Mi"), + "cpu": resource.MustParse("42m"), }, Requests: core.ResourceList{ - "memory": resource.MustParse("100Mi"), - "cpu": resource.MustParse("50m"), + "memory": resource.MustParse("59Mi"), + "cpu": resource.MustParse("16m"), }, } @@ -483,12 +483,12 @@ func makeLocalFeatureFlagsEdge(_ *crd.ClowdEnvironment, o obj.ClowdObject, objMa ImagePullPolicy: core.PullIfNotPresent, Resources: core.ResourceRequirements{ Requests: core.ResourceList{ - "memory": resource.MustParse("200Mi"), - "cpu": resource.MustParse("100m"), + "memory": resource.MustParse("24Mi"), + "cpu": resource.MustParse("7m"), }, Limits: core.ResourceList{ - "memory": resource.MustParse("400Mi"), - "cpu": resource.MustParse("200m"), + "memory": resource.MustParse("72Mi"), + "cpu": resource.MustParse("16m"), }, }, } diff --git a/controllers/cloud.redhat.com/providers/web/resources_mbop.go b/controllers/cloud.redhat.com/providers/web/resources_mbop.go index f972c5a46..1b22f63dc 100644 --- a/controllers/cloud.redhat.com/providers/web/resources_mbop.go +++ b/controllers/cloud.redhat.com/providers/web/resources_mbop.go @@ -257,12 +257,12 @@ func makeBOP(_ *crd.ClowdEnvironment, o obj.ClowdObject, objMap providers.Object ReadinessProbe: &readinessProbe, Resources: core.ResourceRequirements{ Limits: core.ResourceList{ - "memory": resource.MustParse("200Mi"), - "cpu": resource.MustParse("100m"), + "memory": resource.MustParse("55Mi"), + "cpu": resource.MustParse("3m"), }, Requests: core.ResourceList{ - "memory": resource.MustParse("100Mi"), - "cpu": resource.MustParse("50m"), + "memory": resource.MustParse("20Mi"), + "cpu": resource.MustParse("1m"), }, }, TerminationMessagePath: "/dev/termination-log", diff --git a/controllers/cloud.redhat.com/providers/web/resources_mocktitlements.go b/controllers/cloud.redhat.com/providers/web/resources_mocktitlements.go index 68562819f..de165a68b 100644 --- a/controllers/cloud.redhat.com/providers/web/resources_mocktitlements.go +++ b/controllers/cloud.redhat.com/providers/web/resources_mocktitlements.go @@ -244,12 +244,12 @@ func makeMocktitlements(_ *crd.ClowdEnvironment, o obj.ClowdObject, objMap provi ReadinessProbe: &readinessProbe, Resources: core.ResourceRequirements{ Limits: core.ResourceList{ - "memory": resource.MustParse("200Mi"), - "cpu": resource.MustParse("100m"), + "memory": resource.MustParse("23Mi"), + "cpu": resource.MustParse("1m"), }, Requests: core.ResourceList{ - "memory": resource.MustParse("100Mi"), - "cpu": resource.MustParse("50m"), + "memory": resource.MustParse("12Mi"), + "cpu": resource.MustParse("1m"), }, }, TerminationMessagePath: "/dev/termination-log",