Commit Graph

518 Commits

Author SHA1 Message Date
Joshua Boniface 07d75573d6 Add updated tuning configuration
Uses a much nicer CPU tuning configuration, leveraging systemd's
AllowedCPUs and CPUAffinity options within a set of slices (some
default, some custom).

Configuration is also greatly simplified versus the previous
implementation, simply asking for a number of CPUS for both the system
and OSDs, and calculating everything else that is required.

Also switches (back) to the v2 unified cgroup hierarchy by default as
required by the systemd AllowedCPUs directive.
2023-09-01 15:42:29 -04:00
Joshua Boniface 131caba0bd Add valid selectors to example 2023-09-01 15:42:29 -04:00
Joshua Boniface 31734672d2 Adjust name of variable selector 2023-09-01 15:42:29 -04:00
Joshua Boniface fa4f1cff0f Adjust variable used for migrate selector 2023-09-01 15:42:29 -04:00
Joshua Boniface 1d35fec8a8 Remove cpuset configurations
This functionality simply did not work, with Libvirt continuing to dump
its processes into the root cset thus defeating the purpose entirely.

Just remove it, from some very initial testing it isn't worth the
headache.
2023-09-01 15:42:29 -04:00
Joshua Boniface f51fc2ce64 Fix setting of csets for OSDs 2023-09-01 15:42:29 -04:00
Joshua Boniface 8f685116b7 Add Ceph monitor backup 2023-09-01 15:42:29 -04:00
Joshua Boniface c3ce11dacf Fix update-motd so it runs properly 2023-09-01 15:42:29 -04:00
Joshua Boniface 267494d58a Add lm-sensors configuration 2023-09-01 15:42:29 -04:00
Joshua Boniface d94f587e37 Remove obsolete logrotate settings 2023-09-01 15:42:29 -04:00
Joshua Boniface 73e1f2042c Add extra space for clarity 2023-09-01 15:42:29 -04:00
Joshua Boniface 30ddeb0fee Update MOTD automatically on boot
The cron every minute was pointlessly excessive considering this doesn't
actually change minute-to-minute.
2023-09-01 15:42:29 -04:00
Joshua Boniface 86026de8ef Adjust colour scheme of MOTD 2023-09-01 15:42:29 -04:00
Joshua Boniface 8e1d005d43 Obtain more information for MOTD header
Add model and serial numbers to the vendor, and put this on its own
line. Also use BASH for proper syntax formatting. Reformat the header to
be a more compact format.
2023-09-01 15:42:29 -04:00
Joshua Boniface b987c4ea8f Adjust GRUB_DIST and add UEFI regeneration
Keeps the UEFI boot list cleaned and consistent
2023-09-01 15:42:29 -04:00
Joshua Boniface 144f519e76 Add rinse dependency for provisioner 2023-09-01 15:42:29 -04:00
Joshua Boniface 7cac7b26ce Ensure freshness check is proper 2023-09-01 15:42:28 -04:00
Joshua Boniface be091f66d4 Remove pvc-flush references
This service causes more problems than it solves usually, so it is being
removed in the next PVC version.
2023-09-01 15:42:28 -04:00
Joshua Boniface 5aeca53212 Add PostgreSQL cleanup to upgrade 2023-09-01 15:42:28 -04:00
Joshua Boniface d8cad85e91 Add oneshot playbook to reboot cluster 2023-09-01 15:42:28 -04:00
Joshua Boniface 08c8be66b3 Increase timeout threshold for freshness 2023-09-01 15:42:28 -04:00
Joshua Boniface 00482aec06 Fix the other instance too 2023-09-01 15:42:28 -04:00
Joshua Boniface fb03b0659d Add argument example to bootstrap.yml 2023-09-01 15:42:28 -04:00
Joshua Boniface da98a4d445 Ignore errors about removing keys 2023-09-01 15:42:28 -04:00
Joshua Boniface 1a9655be7b Add example of copy hook for bootstrap 2023-09-01 15:42:28 -04:00
Joshua Boniface 6cf8948107 Add Ceph support for single-node clusters
Ensures that the pool default size/min size is set to something
reasonable for a single node (effective RAID-1) and replace teh default
CRUSH replicate_rule set for this situation with one choosing OSD
instead of host as the default.
2023-09-01 15:42:28 -04:00
Joshua Boniface 7d29665805 Add examples of bootstrap settings 2023-09-01 15:42:28 -04:00
Joshua Boniface e4ccafee73 Add cgroup delegation override
Required to solve the occasional
  libvirt: QEMU Driver error : Requested operation is not valid:
  cgroup CPUACCT controller is not mounted
problem, as per:
  https://answers.launchpad.net/ubuntu/+question/665132
2023-09-01 15:42:28 -04:00
Joshua Boniface e8fe165e00 Further optimize ownership agent output 2023-09-01 15:42:28 -04:00
Joshua Boniface cbea6e284c Make ownership check consistent with cmk-agent 2.1
The new CheckMK agent uses UID 998 (dynamic) for itself. This causes
ownership problems with the old logic of this check. Move instead to a
range, where the UIDs from 200-599 are reserved for administrators, and
check for this range explicitly. Also eliminates the exceptions for ceph
and 2000 from previous iterations.
2023-09-01 15:42:28 -04:00
Joshua Boniface 9e20e47903 Update freshness checks 2023-09-01 15:42:28 -04:00
Joshua Boniface d47d320bb3 Replace freshness and kernel_version checks
Use an updated plugin from BLSE that uses needrestart instead of manual
parsing of these elements.
2023-09-01 15:42:28 -04:00
Joshua Boniface ea9fe5570f Add method to remove inactive SSH keys 2023-09-01 15:42:28 -04:00
Joshua Boniface 25dde4709b Ensure packages are installed as newhost 2023-09-01 15:42:28 -04:00
Joshua Boniface 4dfd877c7f Ensure Admin users are in additional groups 2023-09-01 15:42:28 -04:00
Joshua Boniface ce9304e43e Populate /etc/timezone as well 2023-09-01 15:42:28 -04:00
Joshua Boniface b28dc5b700 Add clusters.yml to setup 2023-09-01 15:42:28 -04:00
Joshua Boniface 5e1475235f Add additional hook type webhook to example 2023-09-01 15:42:28 -04:00
Joshua Boniface 33c34bd182 Update example bootstrap.yml 2023-09-01 15:42:28 -04:00
Joshua Boniface 9fe43efac2 Convert default libvirtd to template 2023-09-01 15:42:28 -04:00
Joshua Boniface aa6b4ac3dc Make locale generation universal
Don't rely on a notify/handler, just do it every time in the base role.
2023-09-01 15:42:28 -04:00
Joshua Boniface 91ca3d1510 Ensure insecure_global_id_reclaim is false 2023-09-01 15:42:28 -04:00
Joshua Boniface 3397dacab4 Fix bugs with Patroni bootstrap 2023-09-01 15:42:28 -04:00
Joshua Boniface 167599ac6c Don't reboot if purge fails 2023-09-01 15:42:28 -04:00
Joshua Boniface 8692e1fd4b Add SD-CARD example 2023-09-01 15:42:28 -04:00
Joshua Boniface 2b32cbef19 Add example of a pvcbootstrapd variables file
Also add a README to clarify some details.
2023-09-01 15:42:28 -04:00
Joshua Boniface 1838f8ff56 Add proper PostgreSQL versioning 2023-09-01 15:42:28 -04:00
Joshua Boniface 773fd5a9d4 Ensure all zkCli has -server set 2023-09-01 15:42:28 -04:00
Joshua Boniface 3c465f4e7f Purge ceph too 2023-09-01 15:42:28 -04:00
Joshua Boniface b1ca13070e Improve purge configuration 2023-09-01 15:42:28 -04:00