28 Commits

Author SHA1 Message Date
cf426408f2 Restore original setting 2023-09-01 16:18:20 -04:00
3680717daa Remove extra restarts on bootstrap 2023-09-01 15:42:30 -04:00
1f4cd92d63 Fix bad calls to node primary 2023-09-01 15:42:30 -04:00
6da9956811 Fix delegate_to 2023-09-01 15:42:30 -04:00
1e497413e8 Remove extra whitespace 2023-09-01 15:42:30 -04:00
64ce09122d Add additional primary node switch 2023-09-01 15:42:30 -04:00
9411679004 Fix reboot 2023-09-01 15:42:30 -04:00
71d956dab7 Add final pvcnoded restart 2023-09-01 15:42:30 -04:00
017e1405ed Use debian_version custom fact 2023-09-01 15:42:29 -04:00
5a48ec4d79 Ensure CPU tuning is only applied on Debian 11+ 2023-09-01 15:42:29 -04:00
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
d24cb8a8ef Unify and standardize inventory_hostname
This was causing some confusing conflicts, so create a new fact called
"this_node" which is inventory_hostname.split('.')[0], i.e. the short
name, and use that everywhere instead of an FQDN or true inventory
hostname.
2023-09-01 15:42:28 -04:00
6e48d6fe84 Add Ceph OSD cpuset tuning options
Allows an administrator to set CPU pinning with the cpuset tool for Ceph
OSDs, in situations where CPU contention with VMs or other system tasks
may be negatively affecting OSD performance. This is optional, advanced
tuning and is disabled by default.
2023-09-01 15:42:27 -04:00
f98a2ee433 Add logrotate configuration 2023-09-01 15:42:21 -04:00
823310e8a3 Limit database tasks to coordinators only
Non-coordinators don't need these configurations as they shouldn't run
there.
2023-09-01 15:42:21 -04:00
bcce7f5445 Remove per-host pvc.yml for good 2023-09-01 15:42:20 -04:00
aef72555c1 Consistent newhost format between roles 2023-09-01 15:42:20 -04:00
9b457890d5 Use separate bootstrap files for base and pvc roles 2023-09-01 15:42:20 -04:00
a19d9c77ad Clean up some tasks during bootstrap; parallel PVC 2023-09-01 15:42:20 -04:00
aa72bb9bac Move IP removal and restart after install 2023-09-01 15:42:20 -04:00
256a89d7cc Reorganize some elements 2023-09-01 15:42:19 -04:00
a922fe4df7 Reorganize and rejigger 2023-09-01 15:42:19 -04:00
fbd0ed9390 Improve handling around loop var and correct pvcd 2023-09-01 15:42:19 -04:00
8fbbce3d16 Make things even nicer 2023-09-01 15:42:19 -04:00
e0fa826cfd Flush handlers properly 2023-09-01 15:42:19 -04:00
37506b981f Flush handlers before starting PVC install 2023-09-01 15:42:19 -04:00
f126d3b071 Compatability with Ansible 2.2 2023-09-01 15:42:19 -04:00
6dfaf433dc Initial commit of PVC Ansible role 2023-09-01 15:42:19 -04:00