12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- ---
- - name: create prometheus system group
- group:
- name: prometheus
- system: true
- state: present
- - name: create prometheus system user
- user:
- name: prometheus
- system: true
- shell: "/usr/sbin/nologin"
- group: prometheus
- createhome: false
- home: "{{ prometheus_db_dir }}"
- - name: create prometheus data directory
- file:
- path: "{{ prometheus_db_dir }}"
- state: directory
- owner: prometheus
- group: prometheus
- mode: 0755
- - name: create prometheus configuration directories
- file:
- path: "{{ item }}"
- state: directory
- owner: root
- group: prometheus
- mode: 0770
- with_items:
- - "{{ prometheus_config_dir }}"
- - "{{ prometheus_config_dir }}/rules"
- - "{{ prometheus_config_dir }}/file_sd"
- - name: propagate official prometheus and promtool binaries
- copy:
- src: "/tmp/{{ prometheus_tarball }}/{{ item }}"
- dest: "{{ prometheus_binary_install_dir }}/{{ item }}"
- mode: 0755
- owner: root
- group: root
- remote_src: true
- with_items:
- - prometheus
- - promtool
- notify:
- - restart prometheus
- - name: propagate official console templates
- copy:
- src: "/tmp/{{ prometheus_tarball }}/{{ item }}/"
- dest: "{{ prometheus_config_dir }}/{{ item }}"
- mode: 0644
- owner: root
- group: root
- remote_src: true
- with_items:
- - console_libraries
- - consoles
- notify:
- - restart prometheus
- #- name: propagate locally distributed prometheus and promtool binaries
- # copy:
- # src: "{{ prometheus_binary_local_dir }}/{{ item }}"
- # dest: "{{ prometheus_binary_install_dir }}/{{ item }}"
- # mode: 0755
- # owner: root
- # group: root
- # remote_src: true
- # with_items:
- # - prometheus
- # - promtool
- # notify:
- # - restart prometheus
- - name: create systemd service unit
- template:
- src: prometheus.service.j2
- dest: /etc/systemd/system/prometheus.service
- owner: root
- group: root
- mode: 0644
- notify:
- - restart prometheus
- - name: Allow prometheus to bind to port in SELinux
- seport:
- ports: "{{ prometheus_web_listen_address.split(':')[1] }}"
- proto: tcp
- setype: http_port_t
- state: present
- when:
- - (ansible_os_family == "RedHat")
- - (ansible_selinux.status == "enabled")
|