|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- {%- from "linux/map.jinja" import system with context %}
-
- {%- if system.cgroup.enabled|default(True) %}
-
- cgroup_package:
- pkg.installed:
- - pkgs:
- - cgroup-bin
-
- include:
- - linux.system.grub
-
- /etc/default/grub.d/80-cgroup.cfg:
- file.managed:
- - contents: 'GRUB_CMDLINE_LINUX_DEFAULT="quiet cgroup_enable=memory swapaccount=1"'
- - require:
- - file: grub_d_directory
- {%- if grains.get('virtual_subtype', None) not in ['Docker', 'LXC'] %}
- - watch_in:
- - cmd: grub_update
- {%- endif %}
-
- /etc/cgconfig.conf:
- file.managed:
- - user: root
- - group: root
- - mode: 0644
- - template: jinja
- - source: salt://linux/files/cgconfig.conf
- {%- if grains.get('virtual_subtype', None) not in ['Docker', 'LXC'] %}
- - check_cmd: /usr/sbin/cgconfigparser -l
- {%- endif %}
-
- /etc/cgrules.conf:
- file.managed:
- - user: root
- - group: root
- - mode: 0644
- - template: jinja
- - source: salt://linux/files/cgrules.conf
-
- /etc/default/cgred:
- file.managed:
- - contents: |
- OPTIONS=-v --logfile=/var/log/cgrulesengd.log
-
- /etc/systemd/system/cgred.service:
- file.managed:
- - contents: |
- [Unit]
- Description=CGroups Rules Engine Daemon
- After=syslog.target
-
- [Service]
- Type=forking
- EnvironmentFile=-/etc/default/cgred
- ExecStart=/usr/sbin/cgrulesengd $OPTIONS
-
- [Install]
- WantedBy=multi-user.target
-
- cgred_service_running:
- service.running:
- - enable: true
- - names: ['cgred']
- - watch:
- - file: /etc/cgconfig.conf
- - file: /etc/cgrules.conf
- - file: /etc/default/cgred
- - file: /etc/systemd/system/cgred.service
- {%- if grains.get('noservices') %}
- - onlyif: /bin/false
- {%- endif %}
-
- {%- else %}
-
- cgred_service_dead:
- service.dead:
- - enable: false
- - names: ['cgred']
- {%- if grains.get('noservices') %}
- - onlyif: /bin/false
- {%- endif %}
-
- include:
- - linux.system.grub
-
- remove_/etc/default/grub.d/80-cgroup.cfg:
- file.absent:
- - name: /etc/default/grub.d/80-cgroup.cfg
- - require:
- - file: grub_d_directory
- {%- if grains.get('virtual_subtype', None) not in ['Docker', 'LXC'] %}
- - watch_in:
- - cmd: grub_update
- {%- endif %}
-
- remove_/etc/systemd/system/cgred.service:
- file.absent:
- - name: /etc/systemd/system/cgred.service
-
- remove_/etc/cgconfig.conf:
- file.absent:
- - name: /etc/cgconfig.conf
-
- remove_/etc/cgrules.conf:
- file.absent:
- - name: /etc/cgrules.conf
-
- remove_/etc/default/cgred:
- file.absent:
- - name: /etc/default/cgred
-
- purge_cgroup_package:
- pkg.purged:
- - pkgs:
- - cgroup-tools
-
- {%- endif %}
|