Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Define requests & limits for all placeos services #68

Closed
5 tasks done
viv-4 opened this issue Oct 5, 2022 · 2 comments
Closed
5 tasks done

Define requests & limits for all placeos services #68

viv-4 opened this issue Oct 5, 2022 · 2 comments
Assignees
Labels
focus: devops Focus on DevOps/Infra priority: medium product: placeos Issue relates to PlaceOS Product type: enhancement new feature or request

Comments

@viv-4
Copy link
Contributor

viv-4 commented Oct 5, 2022

  • Find & define reasonable defaults for dev/poc
  • Find & define reasonable defaults for prod
  • Guaranteed class for core & frontends (limits == requests)
  • Burstable class with limits for api, auth, staff (limits > requests)
  • Burstable class without limits for rubbersoul, triggers, dispatch, source (only requests)

notes:

  • when there is a resource shortage on a node, BestEffort pods are killed first, then Burstable
  • if a Burstable pod exceeds it's memory limit the kubernetes scheduler will stop/recreate it with OOMKilled status
  • a pods requests must fit in a nodes available Allocatable Capacity to be scheduled to it
@viv-4 viv-4 added type: enhancement new feature or request focus: devops Focus on DevOps/Infra priority: low product: placeos Issue relates to PlaceOS Product labels Oct 5, 2022
@viv-4 viv-4 self-assigned this Oct 5, 2022
@viv-4
Copy link
Contributor Author

viv-4 commented Oct 6, 2022

Currently monitoring following resource definitions on 3 node cluster - 2cpu 8gb nodes,
api, auth, core, staff - 2 pods | elastic 2 data, 3 master pod cluster | rethinkdb 3 pod cluster
lens metrics (prometheus etc.) deployed
Fairly low driver usage cluster - More active cluster required more overall resources and higher request/limit values on api & core memory

  • core
            limits:
              cpu: 1
              memory: 1536Mi
            requests:
              cpu: 1
              memory: 1536Mi
  • api
            limits:
              cpu: 100m
              memory: 100Mi
            requests:
              cpu: 10m
              memory: 50Mi
  • auth
            limits:
              cpu: 500m
              memory: 500Mi
            requests:
              cpu: 10m
              memory: 400Mi
  • staff
            limits:
              cpu: 25m
              memory: 250Mi
            requests:
              cpu: 10m
              memory: 50Mi
  • frontends - frontends
            limits:
              cpu: 500m
              memory: 100Mi
            requests:
              cpu: 500m
              memory: 100Mi
  • frontends - nginx
            limits:
              cpu: 50m
              memory: 100Mi
            requests:
              cpu: 50m
              memory: 100Mi
  • search-ingest
            requests:
              cpu: 10m
              memory: 50Mi
  • triggers
            requests:
              cpu: 10m
              memory: 50Mi
  • dispatch (no active deployment to reference - 5Mi covers it running without activity)
            requests:
              cpu: 10m
              memory: 5Mi
  • source
            requests:
              cpu: 10m
              memory: 50Mi

third-party charts using their defaults except elastic-data:

requests:
  cpu: 25m
  memory: 1536Mi

These requests are suitable for dev/poc cluster with pod redundancy and low usage

@viv-4
Copy link
Contributor Author

viv-4 commented Oct 14, 2022

Above committed to: 100eac4
To be merged to master
Prod values to go in new prod branch

This was referenced Oct 17, 2022
@viv-4 viv-4 closed this as completed Oct 24, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
focus: devops Focus on DevOps/Infra priority: medium product: placeos Issue relates to PlaceOS Product type: enhancement new feature or request
Projects
None yet
Development

No branches or pull requests

1 participant