Add roles for lego, logcli, mimir, process_exporter, smokeping_prober, and vector
This commit is contained in:
68
roles/mimir/defaults/main.yaml
Normal file
68
roles/mimir/defaults/main.yaml
Normal file
@ -0,0 +1,68 @@
|
||||
---
|
||||
mimir_package_name: mimir
|
||||
mimir_package_state: present
|
||||
|
||||
mimir_service_name: mimir.service
|
||||
mimir_service_enabled: true
|
||||
mimir_service_state: started
|
||||
|
||||
mimir_apt_repository_repo: deb [signed-by=/etc/apt/keyrings/grafana.gpg] https://apt.grafana.com stable main
|
||||
mimir_apt_repository_state: present
|
||||
|
||||
mimir_version_regex: ^mimir, version ([\d.]+)
|
||||
|
||||
mimir_user_name: mimir
|
||||
mimir_user_comment: mimir user
|
||||
mimir_user_state: present
|
||||
mimir_user_shell: /usr/sbin/nologin
|
||||
mimir_user_system: true
|
||||
mimir_user_createhome: false
|
||||
|
||||
mimir_group_name: mimir
|
||||
mimir_group_state: "{{ mimir_user_state | default('present') }}"
|
||||
mimir_group_system: true
|
||||
|
||||
mimir_var_dir_path: /var/lib/mimir
|
||||
mimir_var_dir_owner: "{{ mimir_user_name }}"
|
||||
mimir_var_dir_group: "{{ mimir_group_name }}"
|
||||
mimir_var_dir_mode: "0700"
|
||||
|
||||
mimir_etc_dir_path: /etc/mimir
|
||||
mimir_etc_dir_owner: "{{ mimir_user_name }}"
|
||||
mimir_etc_dir_group: "{{ mimir_group_name }}"
|
||||
mimir_etc_dir_mode: "0755"
|
||||
|
||||
mimir_config_file_path: "{{ mimir_etc_dir_path }}/config.yml"
|
||||
mimir_config_file_path_owner: "{{ mimir_user_name }}"
|
||||
mimir_config_file_path_group: "{{ mimir_group_name }}"
|
||||
mimir_config_file_path_mode: "0755"
|
||||
|
||||
m# imir_common:
|
||||
# {}
|
||||
|
||||
mimir_server:
|
||||
http_listen_port: 9009
|
||||
|
||||
mimir_alertmanager:
|
||||
sharding_ring:
|
||||
replication_factor: 1
|
||||
|
||||
# mimir_compactor:
|
||||
# {}
|
||||
|
||||
# mimir_distributor:
|
||||
# {}
|
||||
|
||||
mimir_ingester:
|
||||
ring:
|
||||
replication_factor: 1
|
||||
|
||||
mimir_store_gateway:
|
||||
sharding_ring:
|
||||
replication_factor: 1
|
||||
|
||||
# mimir_blocks_storage:
|
||||
# {}
|
||||
|
||||
# mimir_ruler_storage:
|
||||
# {}
|
BIN
roles/mimir/files/grafana.gpg
Normal file
BIN
roles/mimir/files/grafana.gpg
Normal file
Binary file not shown.
6
roles/mimir/handlers/main.yaml
Normal file
6
roles/mimir/handlers/main.yaml
Normal file
@ -0,0 +1,6 @@
|
||||
---
|
||||
- name: restart mimir
|
||||
systemd:
|
||||
name: "{{ mimir_service_name }}"
|
||||
daemon_reload: true
|
||||
state: restarted
|
14
roles/mimir/tasks/Debian.yaml
Normal file
14
roles/mimir/tasks/Debian.yaml
Normal file
@ -0,0 +1,14 @@
|
||||
---
|
||||
- name: trust grafana apt respository key
|
||||
ansible.builtin.copy:
|
||||
src: "grafana.gpg"
|
||||
dest: "/etc/apt/keyrings/grafana.gpg"
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
|
||||
- name: configure grafana apt repository
|
||||
ansible.builtin.apt_repository:
|
||||
repo: "{{ mimir_apt_repository_repo }}"
|
||||
state: "{{ mimir_apt_repository_state | default('present') }}"
|
||||
filename: grafana
|
48
roles/mimir/tasks/configure.yaml
Normal file
48
roles/mimir/tasks/configure.yaml
Normal file
@ -0,0 +1,48 @@
|
||||
---
|
||||
- name: create group
|
||||
ansible.builtin.group:
|
||||
name: "{{ mimir_group_name }}"
|
||||
system: "{{ mimir_group_system | default(true) }}"
|
||||
state: "{{ mimir_group_name_state | default('present') }}"
|
||||
|
||||
- name: create user
|
||||
ansible.builtin.user:
|
||||
name: "{{ mimir_user_name }}"
|
||||
comment: "{{ mimir_user_comment }}"
|
||||
system: "{{ mimir_user_system | default(true) }}"
|
||||
shell: "{{ mimir_user_shell | default('/usr/sbin/nologin') }}"
|
||||
group: "{{ mimir_group_name }}"
|
||||
createhome: "{{ mimir_user_createhome | default(false) }}"
|
||||
home: "{{ mimir_var_dir_path }}"
|
||||
state: "{{ mimir_user_state | default('present') }}"
|
||||
|
||||
- name: create etc path
|
||||
ansible.builtin.file:
|
||||
path: "{{ mimir_etc_dir_path }}"
|
||||
state: directory
|
||||
owner: "{{ mimir_etc_dir_owner }}"
|
||||
group: "{{ mimir_etc_dir_group }}"
|
||||
mode: "{{ mimir_etc_dir_mode }}"
|
||||
|
||||
- name: create var path
|
||||
ansible.builtin.file:
|
||||
path: "{{ mimir_var_dir_path }}"
|
||||
state: directory
|
||||
owner: "{{ mimir_var_dir_owner }}"
|
||||
group: "{{ mimir_var_dir_group }}"
|
||||
mode: "{{ mimir_var_dir_mode }}"
|
||||
|
||||
- name: configure
|
||||
template:
|
||||
src: config.yml.j2
|
||||
dest: "{{ mimir_config_file_path }}"
|
||||
owner: "{{ mimir_user_name }}"
|
||||
group: "{{ mimir_group_name }}"
|
||||
mode: 0400
|
||||
notify: restart mimir
|
||||
|
||||
- name: manage service
|
||||
service:
|
||||
name: "{{ mimir_service_name }}"
|
||||
enabled: "{{ mimir_service_enabled }}"
|
||||
state: "{{ mimir_service_state }}"
|
0
roles/mimir/tasks/default.yaml
Normal file
0
roles/mimir/tasks/default.yaml
Normal file
5
roles/mimir/tasks/install.yaml
Normal file
5
roles/mimir/tasks/install.yaml
Normal file
@ -0,0 +1,5 @@
|
||||
---
|
||||
- name: install package
|
||||
ansible.builtin.package:
|
||||
name: "{{ mimir_package_name }}"
|
||||
state: "{{ mimir_package_state | default('present') }}"
|
28
roles/mimir/tasks/main.yaml
Normal file
28
roles/mimir/tasks/main.yaml
Normal file
@ -0,0 +1,28 @@
|
||||
---
|
||||
- name: gather os specific variables
|
||||
ansible.builtin.include_vars: "{{ lookup('first_found', params) }}"
|
||||
vars:
|
||||
params:
|
||||
files:
|
||||
- "{{ ansible_distribution }}-{{ ansible_distribution_version }}.yaml"
|
||||
- "{{ ansible_distribution }}.yaml"
|
||||
- "{{ ansible_os_family }}.yaml"
|
||||
- "default.yaml"
|
||||
paths:
|
||||
- vars
|
||||
|
||||
- name: include os specific tasks
|
||||
ansible.builtin.include_tasks: "{{ lookup('first_found', params) }}"
|
||||
vars:
|
||||
params:
|
||||
files:
|
||||
- "{{ ansible_distribution }}-{{ ansible_distribution_version }}.yaml"
|
||||
- "{{ ansible_distribution }}.yaml"
|
||||
- "{{ ansible_os_family }}.yaml"
|
||||
- "default.yaml"
|
||||
paths:
|
||||
- tasks
|
||||
|
||||
- ansible.builtin.include_tasks: install.yaml
|
||||
|
||||
- ansible.builtin.include_tasks: configure.yaml
|
51
roles/mimir/templates/config.yml.j2
Normal file
51
roles/mimir/templates/config.yml.j2
Normal file
@ -0,0 +1,51 @@
|
||||
# {{ ansible_managed }}
|
||||
---
|
||||
{% if mimir_common is defined %}
|
||||
common:
|
||||
{{ mimir_common | to_nice_yaml(indent=2) | indent(4, False) }}
|
||||
{% endif -%}
|
||||
|
||||
{% if mimir_server is defined %}
|
||||
server:
|
||||
{{ mimir_server | to_nice_yaml(indent=2) | indent(4, False) }}
|
||||
{% endif -%}
|
||||
|
||||
{% if mimir_alertmanager is defined %}
|
||||
alertmanager:
|
||||
{{ mimir_alertmanager | to_nice_yaml(indent=2) | indent(4, False) }}
|
||||
{% endif -%}
|
||||
|
||||
{% if mimir_compactor is defined %}
|
||||
compactor:
|
||||
{{ mimir_compactor | to_nice_yaml(indent=2) | indent(4, False) }}
|
||||
{% endif -%}
|
||||
|
||||
{% if mimir_distributor is defined %}
|
||||
distributor:
|
||||
{{ mimir_distributor | to_nice_yaml(indent=2) | indent(4, False) }}
|
||||
{% endif -%}
|
||||
|
||||
{% if mimir_ingester is defined %}
|
||||
ingester:
|
||||
{{ mimir_ingester | to_nice_yaml(indent=2) | indent(4, False) }}
|
||||
{% endif -%}
|
||||
|
||||
{% if mimir_store_gateway is defined %}
|
||||
store_gateway:
|
||||
{{ mimir_store_gateway | to_nice_yaml(indent=2) | indent(4, False) }}
|
||||
{% endif -%}
|
||||
|
||||
{% if mimir_alertmanager_storage is defined %}
|
||||
alertmanager_storage:
|
||||
{{ mimir_alertmanager_storage | to_nice_yaml(indent=2) | indent(4, False) }}
|
||||
{% endif -%}
|
||||
|
||||
{% if mimir_blocks_storage is defined %}
|
||||
blocks_storage:
|
||||
{{ mimir_blocks_storage | to_nice_yaml(indent=2) | indent(4, False) }}
|
||||
{% endif -%}
|
||||
|
||||
{% if mimir_ruler_storage is defined %}
|
||||
ruler_storage:
|
||||
{{ mimir_ruler_storage | to_nice_yaml(indent=2) | indent(4, False) }}
|
||||
{% endif -%}
|
0
roles/mimir/vars/default.yaml
Normal file
0
roles/mimir/vars/default.yaml
Normal file
Reference in New Issue
Block a user