debops.sysfs default variables
Sections
Main configuration
- sysfs__enabled
Enable or disable sysfs
configuration. if the role is disabled, existing
sysfs
configuration will not be modified.
Container environments usually don't allow modification of the /sys
filesystem.
sysfs__enabled: '{{ False
if (ansible_virtualization_type in [ "lxc", "openvz" ] and
ansible_virtualization_role == "guest")
else True }}'
- sysfs__base_packages
The list of default APT packages to install for sysfs
support.
sysfs__base_packages: [ 'sysfsutils' ]
- sysfs__packages
The list of additional APT packages to install with sysfsutils
.
sysfs__packages: []
Sysfs configuration
These variables define the options you can set in the sysfs
filesystem.
See sysfs__attributes for more details.
- sysfs__default_attributes
The list of default sysfs
attributes defined by the role.
sysfs__default_attributes:
- name: 'ksm'
comment: |
Kernel Same-page Merging (KSM) configuration.
These parameters can be useful on hosts that are used as Virtual Machine
hypervisors, to allow for lower memory footprint of virtual machines,
however this feature has certain security risks.
https://www.linux-kvm.org/page/KSM
https://en.wikipedia.org/wiki/Kernel_same-page_merging
state: 'defined'
options:
- name: 'kernel/mm/ksm/run'
comment: 'Enable Kernel Same-page Merging'
value: 1
- name: 'kernel/mm/ksm/sleep_milisecs'
comment: 'How long to sleep between scans, in miliseconds'
value: 20
- name: 'kernel/mm/ksm/pages_to_scan'
comment: 'How many pages to scan in one run'
value: 100
- name: 'transparent_hugepages'
comment: |
Configuration of Transparent HugePages support.
Disable THP by default to increase performance in certain applications
like MongoDB, Redis, MariaDB, PostgreSQL. This is only effective when
real HugePages support is configured.
https://www.kernel.org/doc/Documentation/vm/transhuge.txt
https://stackoverflow.com/a/42592382/6996970
state: 'defined'
options:
- name: 'kernel/mm/transparent_hugepage/enabled'
value: 'never'
- name: 'kernel/mm/transparent_hugepage/defrag'
value: 'never'
- name: 'kernel/mm/transparent_hugepage/khugepaged/defrag'
value: 0
- sysfs__attributes
The list of sysfs
attributes defined on all hosts in the Ansible
inventory.
sysfs__attributes: []
- sysfs__group_attributes
The list of sysfs
attributes defined on hosts in a specific Ansible
inventory group.
sysfs__group_attributes: []
- sysfs__host_attributes
The list of sysfs
attributes defined on specific hosts in the Ansible
inventory.
sysfs__host_attributes: []
- sysfs__dependent_attributes
The list of sysfs
attributes defined by other Ansible roles through role
dependent variables.
sysfs__dependent_attributes: []
- sysfs__dependent_attributes_filter
The variable which is used to filter the data from dependent variables, join it with the data from other roles and pass it to the combined attributes variable.
sysfs__dependent_attributes_filter: '{{ lookup("template",
"lookup/sysfs__dependent_attributes_filter.j2")
| from_yaml }}'
- sysfs__combined_attributes
The variable which combines all of the attribute configuration and is used in the Ansible tasks. It also defines the other in which different attribute variables are combined.
sysfs__combined_attributes: '{{ sysfs__default_attributes
+ sysfs__dependent_attributes_filter
+ sysfs__attributes
+ sysfs__group_attributes
+ sysfs__host_attributes }}'