-
Notifications
You must be signed in to change notification settings - Fork 44
Expand file tree
/
Copy pathmain.yml
More file actions
121 lines (97 loc) · 6.66 KB
/
Copy pathmain.yml
File metadata and controls
121 lines (97 loc) · 6.66 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
---
# scylla_cluster_name: 'testcluster123'
# This is the name the cluster is going to be reported by the Alert Manager.
# Default to a scylla_cluster_name value.
scylla_cluster_name_for_alerts: "{{ scylla_cluster_name }}"
# In some rare scenarios, it is impossible to run docker containers as a regular user. Set this to True if you need
# to use `sudo`
run_docker_with_sudo: False
# The scylla_node role generates this file, which should be used with the monitoring.
# Alternatively, this file can be written manually, following the example at the
# scylla-monitoring github: https://github.com/scylladb/scylla-monitoring/blob/master/prometheus/scylla_servers.example.yml
scylla_servers_yml_path: scylla_servers.yml
# Will configure scylla_manager if the manager IP is configured. Comment out if running without manager
scylla_manager_ip: '127.0.0.1'
# Download the scylla-monitoring from here
scylla_monitoring_archive_url: 'https://github.com/scylladb/scylla-monitoring/archive/refs/tags/4.12.1.tar.gz'
# The path where the role will look for config files
scylla_monitoring_role_config_path: "{{ inventory_dir }}"
scylla_monitoring_deploy_path: /opt/scylla-monitoring
scylla_monitoring_start_script_path: "{{ scylla_monitoring_deploy_path }}/start-monitoring.sh"
scylla_monitoring_stop_script_path: "{{ scylla_monitoring_deploy_path }}/stop-monitoring.sh"
scylla_monitoring_start_env_path: "{{ scylla_monitoring_deploy_path }}/start-monitoring.env"
scylla_monitoring_data_path: "{{ scylla_monitoring_deploy_path }}/data"
scylla_monitoring_config_path: "{{ scylla_monitoring_deploy_path }}/config"
scylla_monitoring_prom_rules_path: "{{ scylla_monitoring_config_path }}/prom_rules"
scylla_monitoring_alertdata_path: "{{ scylla_monitoring_deploy_path }}/alertdata"
# If set to True, the role will generate scylla_servers.yml based on the output of 'nodetool status' executed on the
# first node from the 'scylla' inventory section.
# If set to False, the dc variable must be defined in the inventory for each one of the nodes and the role
# will use the information from the inventory 'scylla' section to generate scylla_servers.yml.
use_nodetool_status_with_genconfig: false
# List of monitoring dashboards to enable. If empty or not set the Role will auto-select the one that corresponds to a
# Scylla version installed on the first host from the 'scylla' inventory section.
#scylla_monitoring_dashboards_versions:
# - '2021.1'
# Username which will be used for the cql plugin if auth is enabled on scylla-server side
# scylla_monitoring_cql_default_user: 'scylla_cql_monitor'
# Prometheus configuration, alerting and monitoring settings files:
# ---
# If a path is provided, the file(s) will be taken from a local path and pushed to the config directory for the monitoring installation.
# If "default" is set, the default file will be taken from the prometheus directory in the unpacked monitoring stack distribution.
#
# The default prometheus.rules.yml from https://github.com/scylladb/scylla-monitoring/blob/master/prometheus/prom_rules/
# is always installed.
# If below value is different from 'default' a corresponding file is going to be installed as 'userdefined.rules.yml'
# in scylla_monitoring_prom_rules_path folder.
# The value should be a file path relative to 'scylla_monitoring_role_config_path'.
prometheus_rules_file: default
# Reject filter for alerts in the prometheus.rules.yml that comes as part of the Monitoring distribution.
# A value is a regular expression string that will be applied to an 'alert' field and entries that are going to
# match will be filtered out from the prometheus.rules.yml that is going to be installed.
# Examples: ".*Full", ".*Full|cql.*"
#scylla_monitoring_default_alert_reject_filter: "DiskFull"
# See the original default file at https://github.com/scylladb/scylla-monitoring/blob/master/prometheus/prometheus.yml.template
prometheus_yml_template_file: default
# See the original default file at https://github.com/scylladb/scylla-monitoring/blob/master/prometheus/rule_config.yml
rule_config_yml_path: rule_config.yml
# If no rule_config file was provided, the role will try to generate it automatically
# and these variables must be provided
# alerts_sender_email: example-email@scylladb.com
# alerts_sender_password: Sender_p@ssw0rd
# alerts_receiver_email: example-email@scylladb.com
# How long to keep data for.
# Format: [NUMBER][s|m|h|d]
# Example: "1000h" will keep data to 1000 hours
scylla_monitoring_retention: "14d"
# Other scylla monitoring parameters used with start-all.sh.
# If '-M <Scylla Manager version>' is not explicitly specified and if inventory has a 'scylla-manager' section, a Scylla Manager
# dashboard version will be auto-selected according to a version installed on the first host from the 'scylla-manager' inventory section.
# scylla_monitoring_params: '-M 2.1 '
### The following settings are only relevant for non-dockerized setup
# Check https://prometheus.io/download/ for newer versions or stick to the default below
alert_manager_url: 'https://github.com/prometheus/alertmanager/releases/download/v0.23.0/alertmanager-0.23.0.linux-amd64.tar.gz'
# Check https://prometheus.io/download/ for newer versions or stick to the default below
prometheus_url: 'https://github.com/prometheus/prometheus/releases/download/v2.32.0/prometheus-2.32.0.linux-amd64.tar.gz'
# Additional arguments to pass to the prometheus binary
#prometheus_args: "--web.enable-admin-api --storage.tsdb.retention.size=50G"
# Use this variable for setting any custom configuration allowed by dockerd (https://docs.docker.com/reference/cli/dockerd/#on-linux)
# The content of this variable will be coppied to /etc/docker/daemon.json
# docker_daemon_custom_config: { "bip": "172.17.0.1/24" }
# Set 'grafana_enable_https' to true for enabling HTTPS for Grafana.
# If the specified certificate and key files are not found on the localhost,
# a self-signed certificate will be generated at the provided paths.
# At the end, the certificate and key will be copied to the monitoring instance
# at the locations specified in 'grafana_cert_path' and 'grafana_cert_key_path'.
grafana_enable_https: false
grafana_localhost_cert_path: "{{ inventory_dir }}/ssl/grafana.crt"
grafana_localhost_cert_key_path: "{{ inventory_dir }}/ssl/grafana.pem"
grafana_cert_path: "{{ scylla_monitoring_config_path }}/grafana.crt"
grafana_cert_key_path: "{{ scylla_monitoring_config_path }}/grafana.key"
grafana_root_url: "{{ 'https://localhost:3000' if grafana_enable_https|bool else 'http://localhost:3000' }}"
#####################################
# User configuration
####################################
grafana_admin_user: "admin"
grafana_admin_password: "admin"
# grafana_viewer_password (in case a viewer user, with username: 'viewer', should be created)