Skip to content

Configure resource limits/requests for Pages

John Skarbek requested to merge jts/set-pages-resources into master

What does this MR do?

  • Pages seems to be a lightweight service that is mostly CPU bound
  • During rudementary testing, I was able to see upwards of 4,000 requests per second while a single Pod was running around 6 cores of CPU and 70MB of RAM
  • This testing was very simplistic, however.
  • Forcing Kubernetes to spin up 2 Pods for redundancy from the start
  • Setting resource requests to what I think are reasonable starting numbers
    • 70MB requests as that is what I see the service using under load
    • Requesting 1 core at least for scheduling
    • Setting the HPA to scale at 3 cores, but more testing is required to nail down an appropriate value for this
    • Limiting this service to 1GB of RAM - I've not seen it use more than 70MB!
  • Because preprod has such small nodes, modifying the HPA scale of that environment very differently

Addresses: gitlab-com/gl-infra/delivery#1970 (closed)

Author Check-list

Please read the Contributing document and once you do, complete the following:

  • Assign to the correct reviewer per the contributing document
  • Apply the correct metadata per the contributing document
  • Link to related MRs for applying the changes on other environments
  • Link to related Chef changes
  • If necessary link to a Criticality 4 Change Request issue

Reviewer Check-list

  • Reviewed the diff jobs to confirm changes are as expected
  • No changes shown in the diffs not associated with this MR - This may require a rebase or further investigation
Edited by John Skarbek

Merge request reports