Jim Gauld a52b6e831e Configure systemd CPUShares/Nice/IOScheduler for cron, docker, ssh
This updates CPUShares, CPUQuota, Nice, IOScheduling for:
cron.service, docker.service, rsync.service and ssh.service, since
these have sporadic intensive CPU and disk IO operations, yet are
not latency critical.

This gives 1/8th reduced shares, reduces Nice priority to +19(lowest),
and reduced IOScheduling to use best-effort/priority 7(lowest)
(used with 'bfq' IO Scheduler).

ssh.service CPUQuota is set to 100% since there is no engineering
reason to enable more. There are cases when admins attempt to do
multiple large cpu/disk operations in parallel.

rsync.service is observed to have sustained burst of work during
software upload.

cron.service has also been used for SysEng activities to generate
substantial system load.

This is part of an overall set of adjustments are required for systemd
cgroups CPUShares, CPUQuota, and AllowedCPUs for key system services.
This will improve latency of Kubernetes critical components, and
throttles lesser important services.

Partial-Bug: 2084714

TEST PLAN:
AIO-SX, AIO-DX, Standard, Storage, DC:
- PASS: Fresh install
- PASS: verify systemd parameters for cron, docker, rsync, ssh

  Example:
  systemctl show cron.service | \
    grep -e CPUShares -e CPUQuota -e Nice -e IOScheduling
  systemctl show docker.service | \
    grep -e CPUShares -e CPUQuota -e Nice -e IOScheduling
  systemctl show rsync.service | \
    grep -e CPUShares -e CPUQuota -e Nice -e IOScheduling
  systemctl show ssh.service | \
    grep -e CPUShares -e CPUQuota -e Nice -e IOScheduling

AIO-SX, AIO-DX:
- PASS: B&R
- PASS: K8S orchestrated upgrade from 1.24 to 1.29
- PASS: Platform USM upgrade, including pre-activation rollback
  Exception: docker override requires USM migration script.

Change-Id: Ide8f4269426385fc5fc8bddbdebfa6abb5eca2d1
Signed-off-by: Jim Gauld <James.Gauld@windriver.com>
2024-11-21 11:26:06 -05:00
2024-07-24 14:48:45 +00:00
2024-11-04 17:21:52 -03:00
2019-09-09 14:10:43 -05:00
2023-04-28 12:38:50 -04:00
2019-09-09 14:10:43 -05:00
2019-09-09 14:10:43 -05:00
2019-09-09 14:10:43 -05:00
2022-12-26 22:05:06 +00:00
Description
StarlingX System Configuration Files
4.1 MiB
Languages
Shell 88.5%
Makefile 8.6%
Python 1.7%
PHP 1%
DTrace 0.2%