thp.yml #1

  • //
  • guest/
  • russell_jackson/
  • ansible-sdp/
  • roles/
  • perforce-sdp-install/
  • tasks/
  • dependencies/
  • thp.yml
  • View
  • Commits
  • Open Download .zip Download (1 KB)
---
# Disable Transparent Huge Pages (recommended for database workloads). RedHat
# uses a tuned profile; Debian uses a small systemd service.
- name: "Install tuned"
  ansible.builtin.dnf:
    name: "tuned"
    state: "latest"
  when: ansible_facts["os_family"] == "RedHat"

- name: "Create tuned nothp_profile directory"
  ansible.builtin.file:
    path: '/etc/tuned/nothp_profile'
    state: "directory"
    mode: '0755'
    owner: 'root'
    group: 'root'
  when: ansible_facts["os_family"] == "RedHat"

- name: "Set up nothp_profile tuned.conf file"
  ansible.builtin.copy:
    src: "./nothp_profile_tuned.conf"
    dest: "/etc/tuned/nothp_profile/tuned.conf"
    owner: "root"
    group: "root"
    mode: '0755'
  when: ansible_facts["os_family"] == "RedHat"

- name: "Disable transparent huge pages"
  ansible.builtin.copy:
    src: "./disable-thp.service"
    dest: "/etc/systemd/system/disable-thp.service"
    owner: "root"
    group: "root"
    mode: '0755'
  notify: "Start THP"
  when: ansible_facts["os_family"] == "Debian"
# Change User Description Committed
#1 32842 Russell C. Jackson (Rusty) Reorganize ansible-sdp into per-concern task files; ansible-lint production-clean

- Split install.yml/cron.yml/dependencies.yml and the monitoring role into thin
  orchestrators plus single-purpose phase files; extract shared steps into
  tasks/common/ (fetch_sdp, fetch_binaries, run_mkdirs, copy_ssl,
  configure_broker, sudoers).
- Full best-practices pass: FQCN, true/false, quoted modes, changed_when, loops,
  document-start markers; fill both roles' meta; add .ansible-lint.
- RedHat parity: parameterized EPEL enable, dnf, full upgrade, sysctl/bbr tuning.
- Collapse the 12 journal-rotation cron tasks to one; consolidate duplicate
  download/broker logic; fix broken tests/test.yml role reference.
- Validated ansible-lint clean at the production profile (ansible-core 2.21 /
  python 3.12) and ansible-playbook --syntax-check OK.