Commit Graph

563 Commits

Author SHA1 Message Date
Joshua Boniface d6cb28b639 Add immutability to PVC subrole
1. Remove the obsolete pvc-vacuum script install.

2. Remove notifies when modifying configs; we do not want to restart the
daemons uncontrolled.

3. Add bootstrap check to package installs so they only happen on
bootstrap.

This ensures this part of the role, on re-runs, will *only* update
configs and not actually touch the running daemon. This makes it safe to
run before a oneshot/update-pvc-daemons.yml playbook run.
2023-09-01 15:42:28 -04:00
Joshua Boniface 77be96bf6f Fix a few more splits 2023-09-01 15:42:28 -04:00
Joshua Boniface 95b47f8b09 Fix a few more extraneous splits
Just use this_node if applicable, or the raw node.hostname.
2023-09-01 15:42:28 -04:00
Joshua Boniface 87803cb7a2 Remove extraneous splits
The node.hostname should always be short.
2023-09-01 15:42:28 -04:00
Joshua Boniface 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
Joshua Boniface 5de3ab0c3a Move pvc maintenance to separate plays
This ensures that the maintenance on/off happens before all tasks and
after all tasks and not intermittently.
2023-09-01 15:42:28 -04:00
Joshua Boniface 056c325486 Add option for setting CPU governor
Allows the administrator to set a CPU frequency governor if they need
to, though the default of ondemand is usually sufficient.
2023-09-01 15:42:28 -04:00
Joshua Boniface fc5bcf139c Fix name of IPMI check again 2023-09-01 15:42:28 -04:00
Joshua Boniface 44cedf66c9 Fix name of ipmi check 2023-09-01 15:42:28 -04:00
Joshua Boniface 9f7dbfb4f8 Add IPMI check to tasks 2023-09-01 15:42:28 -04:00
Joshua Boniface b9ae4d1009 Adjust headers and add LOM check 2023-09-01 15:42:27 -04:00
Joshua Boniface 48fb21af75 Add node list to PVC MOTD 2023-09-01 15:42:27 -04:00
Joshua Boniface 94e9bf9133 Ignore errors during flush commands
These might inexplicably fail, but that is fine.
2023-09-01 15:42:27 -04:00
Joshua Boniface e009cf4076 Fix whitespaced manufacturer and bad [[ 2023-09-01 15:42:27 -04:00
Joshua Boniface e65f1d15a6 Add coordinator state to MOTD 2023-09-01 15:42:27 -04:00
Joshua Boniface 894ce9b517 Support unknown manufacturers in MOTD 2023-09-01 15:42:27 -04:00
Joshua Boniface 55ec177919 Ignore errors restarting libvirtd
This seems to inexplicably fail sometimes. We can just ignore it.
2023-09-01 15:42:27 -04:00
Joshua Boniface b814ec60f6 Add resolv.conf customization 2023-09-01 15:42:27 -04:00
Joshua Boniface cf1d8114e2 Add note about moving files up 2023-09-01 15:42:27 -04:00
Joshua Boniface 197000a48d Revert "Add symlink for Ceph file pickup"
This reverts commit 3ac946bf2e.
2023-09-01 15:42:27 -04:00
Joshua Boniface 94c019f960 Add symlink for Ceph file pickup 2023-09-01 15:42:27 -04:00
Joshua Boniface 3161708593 Include another upgrade in deb11 playbook
Ensures that the system is fully updated after re-enabling the security
repository during the base run.
2023-09-01 15:42:27 -04:00
Joshua Boniface 593599c148 Add Debian 10 -> Debian 11 upgrade playbook 2023-09-01 15:42:27 -04:00
Joshua Boniface ceace45bed Include pvc-installer in create repo update script 2023-09-01 15:42:27 -04:00
Joshua Boniface 428c41e9d9 Add pvc-installer to create-local-repo script 2023-09-01 15:42:27 -04:00
Joshua Boniface 13d1c00eda Add create-local-repo.sh script 2023-09-01 15:42:27 -04:00
Joshua Boniface 24fd853294 Update README for Ansible vers and Debian vers 2023-09-01 15:42:27 -04:00
Joshua Boniface ddecb94348 Disable unified cgroup heirarchy on kernel cmdline
This is required on Debian 11 to use the cset tool, since the newer
systemd implementation of a unified cgroup hierarchy is not compatible
with the cset tool.

Ref for future use:
  https://github.com/lpechacek/cpuset/issues/40
2023-09-01 15:42:27 -04:00
Joshua Boniface be3ce67574 Use inventory_hostname in IPMI fragment 2023-09-01 15:42:27 -04:00
Joshua Boniface 5f05835721 Update bondX configuration 2023-09-01 15:42:27 -04:00
Joshua Boniface 4cb2d7835c Add setting bridge_mtu to config 2023-09-01 15:42:27 -04:00
Joshua Boniface ec2fd99eb6 Avoid errors if noout fails 2023-09-01 15:42:27 -04:00
Joshua Boniface 9f16995f59 Add smartmontools to base package list 2023-09-01 15:42:27 -04:00
Joshua Boniface 6e2d661134 Adjust documentation and behaviour of cpuset
1. Detail the caveats and specific situations and ref the documentation
which will provide more details.

2. Always install the configs, but use /etc/default/ceph-osd-cpuset to
control if the script does anything or not (so, the "osd" cset set is
always active just not set in a special way.
2023-09-01 15:42:27 -04:00
Joshua Boniface 83bd1b1efd Install cset configs even if disabled
The setup script handles this instead.
2023-09-01 15:42:27 -04:00
Joshua Boniface 7927ec4f11 Allow dynamic enabling/disabling of cset
Add a separate config to handle enable/disable on the system itself.
2023-09-01 15:42:27 -04:00
Joshua Boniface 2ae9b9075a Adjust default ceph.conf parameters
1. Remove an explicit OSD journal size, especially such a small one (no
clue why I ever added that...)

2. Add max scrubs, disable scrub during recovery, and set scrub sleep.

3. Add max backfills, tune recovery sleep to 0 to prioritize recovery.
2023-09-01 15:42:27 -04:00
Joshua Boniface 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
Joshua Boniface 45424a28ce Fix bad flag 2023-09-01 15:42:27 -04:00
Joshua Boniface 5186b3dc8a Add interpreter var to sites group 2023-09-01 15:42:27 -04:00
Joshua Boniface 044a14fa6d Add package installs for different Debian versions 2023-09-01 15:42:27 -04:00
Joshua Boniface ae40227ea1 Move paths and keys to defaults 2023-09-01 15:42:27 -04:00
Joshua Boniface f25a80ff53 Add additional CMK checks 2023-09-01 15:42:26 -04:00
Joshua Boniface 88491befab Update default repo domain
We now have parallelvirtualcluster.org set up, so use that instead of
the bonifacelabs domain.
2023-09-01 15:42:26 -04:00
Joshua Boniface 8c2d117a3c Wait longer when restarting services
From 15 -> 30 seconds to ensure more time for stabilization before
proceeding with the next.
2023-09-01 15:42:26 -04:00
Joshua Boniface 647ca1c446 Add default features flag to ceph.conf generator
Coupled with the removal of explicit --image-features flags to the RBD
command in PVC itself, this ensures that only the two features supported
on kernel 4.19 are enabled by default.
2023-09-01 15:42:26 -04:00
Joshua Boniface 86eaeed2b4 Fix sources.list for Bullseye 2023-09-01 15:42:26 -04:00
Joshua Boniface b9f00e3faf Increase flush/unflush wait timeout
Bump this from 10 minutes (60 * 10 seconds) to 30 minutes (180 * 10
seconds) to ensure there is sufficient time for (relatively) large VMs
to migrate with (relatively) slow networking.
2023-09-01 15:42:26 -04:00
Joshua Boniface 4fe6204dfb Use wait on secondary and delay for 15 seconds 2023-09-01 15:42:26 -04:00
Joshua Boniface 43d4f69608 Rename Daemon upgrade playbook to match 2023-09-01 15:42:26 -04:00