KUBERNETES , OPENSHIFT

Default ResourceQuota

#resourcequota

Default ResourceQuota

The question of how do I manage application onboarding usually introduces the topic of how to set specific values for ResourceQuota for the applications being onboarded.

In the past I have been a part of teams suggesting the concept of T-shirt sizing your applications, e.g. Small, Medium, and Large. Then, during onboarding process, one selects the appropriate T-shirt size ResourceQuota. Your values here could be dependent on your typical workloads. In practice, however, this seems to introduce more work when attempting to right size things. You end up needing to either size up if your application grows or size down if you realized you should not have allowed so much resource usage in the first place.

As a result, I tend to suggest what most other platform-as-a-service providers have also converged on as a better approach:

  • Provide one single default allocation of resources. Define the value as logically as you can, with respect to your current workload types.

    • What is the over average size needed? i.e. 70 percentile

    • Provide that as adefault, and if you think you are above or below, adjust it.

  • A user should then request for additional resources by amount needed

    • process the request automatically if it is within a reasonable threshold and the resources are immediately available

    • send the request to an approval queue if it is a significant resource request

    • confirm resources are available or not and trigger automatic scale out when necessary