Commit Graph

37 Commits

Author SHA1 Message Date
Joshua Boniface 3c1c97dbf5 Ensure CPU tuning is only applied on Debian 11+ 2022-11-15 16:21:48 -05:00
Joshua Boniface 8c808c9c2c Adjust readme texts 2022-11-13 02:30:27 -05:00
Joshua Boniface c5ec0f4f62 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.
2022-11-13 01:33:09 -05:00
Joshua Boniface e52c46f68d Add valid selectors to example 2022-11-07 11:25:34 -05:00
Joshua Boniface 064ce8038a Adjust name of variable selector 2022-11-07 10:29:51 -05:00
Joshua Boniface 7d329708bc 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.
2022-11-06 01:08:27 -04:00
Joshua Boniface 243c910d6d 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.
2021-11-11 17:19:03 -05:00
Joshua Boniface 2c0e09f657 Add setting bridge_mtu to config 2021-10-09 19:29:22 -04:00
Joshua Boniface 5797535997 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.
2021-09-29 20:49:00 -04:00
Joshua Boniface 732bfe732c 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.
2021-09-27 00:27:57 -04:00
Joshua Boniface 2fa1b8fb2b Readjust warning one more time
The actual cause of the issue wasn't memory, but still leave this
warning in (albeit a little less strict).
2021-07-18 22:15:13 -04:00
Joshua Boniface f285cf4ffc Tweak the memory warning to be even stricter 2021-07-18 21:41:45 -04:00
Joshua Boniface 87cfb643a7 Adjust warning message about Zookeeper memory size 2021-07-18 20:36:13 -04:00
Joshua Boniface 764c2c3928 Fix memory tuning issues 2021-07-18 18:51:21 -04:00
Joshua Boniface 0e046b48d4 Add Zookeeper logging configs 2021-07-18 17:47:02 -04:00
Joshua Boniface 53872c0056 Add generic SR-IOV configuration 2021-06-22 03:47:03 -04:00
Joshua Boniface 8a140f70dc Use inventory_hostname for IPMI dict 2021-06-22 03:15:23 -04:00
Joshua Boniface 16715f0e35 Adjust comments and IPMI value 2021-06-06 00:41:34 -04:00
Joshua Boniface 6d8f08e1b2 Add updated IPMI configuration to match base role 2021-06-05 01:47:09 -04:00
Joshua Boniface 7585553225 Add default values 2020-12-21 00:20:45 -05:00
Joshua Boniface ac071f4bf0 Add configurable ZK memory limits 2020-12-21 00:20:45 -05:00
Joshua Boniface de04105a38 Add tuning for Ceph OSDs 2020-12-21 00:20:45 -05:00
Joshua Boniface 934f73af0f Support using existing SSL certs on system
Add the additional pvc_api_ssl_cert_path and pvc_api_ssl_key_path
group_vars options, which can be used to set the SSL details to existing
files on the filesystem if desired. If these are empty (or nonexistent),
the original pvc_api_ssl_cert and pvc_api_ssl_key raw format options
will be used as they were.

Allows the administrator to use outside methods (such as Let's Encrypt)
to obtain the certs locally on the system, avoiding changes to the
group_vars and redeployment to manage SSL keys.
2020-08-26 14:11:14 -04:00
Joshua Boniface 2f2123b70e Rename remaining "pvc_prov" items to pvc_api 2020-08-25 13:01:48 -04:00
Joshua Boniface d79c587384 Change name of default API database
From pvcprov to pvcapi to reflect the changing use of this database.
2020-08-25 02:00:29 -04:00
Joshua Boniface 7f60033282 Add more detailed comments 2020-08-20 21:42:44 -04:00
Joshua Boniface e32dfe6200 Add additional configuration to group_vars
Also include defaults and the new pvc_vm_shutdown_timeout option.
2020-08-20 21:39:44 -04:00
Joshua Boniface cd7cdf2719 Add bridge_device entry to config
Used to properly allow bridged networks to be formed.

Ref parallelvirtualcluster/pvc#64
2020-01-06 14:35:25 -05:00
Joshua Boniface a10fc7eb3f Move netmask to separate config 2019-12-24 14:15:14 -05:00
Joshua Boniface d113d7080d Set some slightly nicer defaults 2019-12-24 09:07:11 -05:00
Joshua Boniface 93f44dd9dc Add additional API configuration 2019-12-23 23:25:27 -05:00
Joshua Boniface db2c77d330 Support new log flags and update default log conf
Tweak the defaults a bit; pvc-ansible assumes we're running under
systemd, so set a log format that's better for it (no colour or date).
2019-07-10 21:49:38 -04:00
Joshua Boniface 75182b1570 Complete configuration of API via Ansible 2019-07-08 11:33:14 -04:00
Joshua Boniface c438d2c9cd Add client API to configuration 2019-07-06 02:49:25 -04:00
Joshua Boniface a9b2942027 Add templating of network interfaces
Closes #1
2019-07-04 11:19:49 -04:00
Joshua Boniface 4b5237ac5e Support for detailed keepalive logging 2019-06-18 19:56:46 -04:00
Joshua Boniface 39a21477b6 Update default variables based on recent changes 2019-06-18 12:59:36 -04:00