helm-charts icon indicating copy to clipboard operation
helm-charts copied to clipboard

Log a warning if Redpanda does not have exclusive access to cores

Open JakeSCahill opened this issue 10 months ago • 1 comments

What would you like to be added?

Automated checks to see if Redpanda is running in a Pod with a Guaranteed QoS class and if the container has a CPU set assigned, logging a warning if either is false.

For example:

  1. Confirm that the container is running with the Guaranteed QoS class.
    kubectl --namespace=<namespace> get pod <pod-name> -o jsonpath='{ .status.qosClass}{"\n"}'
    
  2. Check that a cpuset has been assigned, indicating dedicated CPU resources.
    if [ ! -f /sys/fs/cgroup/cpuset/cpuset.cpus ]; then
    fi
    

If the check finds that the container does not meet these conditions, it should emit a warning log like "WARNING: Redpanda does not have exclusive access to CPU resources. This configuration may lead to suboptimal performance. For more information on enabling exclusive CPU access, see docs-link."

Why is this needed?

Identifying whether a Redpanda container has exclusive access to cores can be cumbersome. This enhancement would benefit users by providing immediate feedback on their deployment's state without manual checks.

JakeSCahill avatar Apr 24 '24 10:04 JakeSCahill

Where should this warning exist exactly? I think it makes sense to me that redpanda-operator would do this at the pod level as a condition. That would give a visual idea of the state of a particular broker. However, im not sure where a warning should be written, on the redpanda object as a status entry? Maybe as a post-upgrade/install hook?

alejandroEsc avatar May 01 '24 15:05 alejandroEsc

Closing this as "won't do" as I don't think the issue is valid anymore given all our learnings from Travis Downs 😓

chrisseto avatar Jul 23 '24 18:07 chrisseto