Clone
Kunal Khatua <kkhatua@maprtech.com>
committed
on 03 Apr 18
DRILL-143: Support CGROUPs resource management
Introduces the DRILLBIT_CGROUP option in drill-env.sh.
The startup script checks if the speci… Show more
DRILL-143: Support CGROUPs resource management

Introduces the DRILLBIT_CGROUP option in drill-env.sh.

The startup script checks if the specified CGroup (ver 2) is available and tries to apply it to the launched Drillbit JVM.

This would benefit not just Drill-on-YARN usecases, but  any setup that would like CGroups for enforcement of (cpu) resources management.

(Also introduced SYS_CGROUP_DIR to account for possible non default locations of CGroup).

e.g when Drillbit is configured to use `drillcpu` cgroup

```

[root@maprlabs ~]# /opt/mapr/drill/apache-drill-1.14.0-SNAPSHOT/bin/drillbit.sh restart

Stopping drillbit

..

Starting drillbit, logging to /var/log/drill/drillbit.out

WARN: Drillbit's CPU resource usage will be managed under the CGroup : drillcpu (up to 4.00 cores allowed)

```

e.g. Non-existent CGroup `droolcpu` is used

```

[root@kk127 ~]# /opt/mapr/drill/apache-drill-1.14.0-SNAPSHOT/bin/drillbit.sh restart

Stopping drillbit

..

Starting drillbit, logging to /var/log/drill/drillbit.out

ERROR: cgroup droolcpu does not found. Ensure that daemon is running and cgroup exists

```

closes #1200

Show less

master + 4 more