OS Requirements
Realtime Scheduling
The cluster SHOULD run a kernel configured without
CONFIG_RT_GROUP_SCHED
. The cluster MUST run with a kernel configured
without CONFIG_RT_GROUP_SCHED
or with the
kernel.sched_rt_runtime_us
sysctl set to -1
.
Setting the kernel.sched_rt_runtime_us
sysctl to -1
is NOT RECOMMENDED
for production use.
For more discussion on this see issue #121.
While docker supports using realtime features on systems with
CONFIG_RT_GROUP_SCHED
and a non--1
value for
kernel.sched_rt_runtime_us
, Kubernetes does currently not support that.
Once support for that lands, we may increase our k8s version requirements in
favour of this requirement.
Below, we describe how to check whether your os fulfills this requirement and, if it does not, how to get around it.
Check
You can check whether you are running a kernel built with CONFIG_RT_GROUP_SCHED
enabled by executing:
grep CONFIG_RT_GROUP_SCHED /boot/config-$(uname -r)
Workaround
You can run the following daemon as a workaround for this problem.
kubectl -n $YAOOK_OP_NAMESPACE apply -f ci/devel_integration_tests/deploy/realtime-hack.yaml