blob: e7aac005a60a77087d7f1350f7782eee21c0d25d (
plain)
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
122
123
124
125
126
127
128
129
130
131
132
133
|
---
grafana_services:
grafana:
container_name: grafana
group: grafana
enabled: true
image: "{{ grafana_image_full }}"
volumes: "{{ grafana_default_volumes + grafana_extra_volumes }}"
dimensions: "{{ grafana_dimensions }}"
healthcheck: "{{ grafana_healthcheck }}"
haproxy:
grafana_server:
enabled: "{{ enable_grafana }}"
mode: "http"
external: false
port: "{{ grafana_server_port }}"
listen_port: "{{ grafana_server_listen_port }}"
backend_http_extra:
- "option httpchk GET /api/health"
- "http-check expect status 200"
grafana_server_external:
enabled: "{{ enable_grafana_external | bool }}"
mode: "http"
external: true
external_fqdn: "{{ grafana_external_fqdn }}"
port: "{{ grafana_server_public_port }}"
listen_port: "{{ grafana_server_listen_port }}"
backend_http_extra:
- "option httpchk GET /api/health"
- "http-check expect status 200"
####################
# Database
####################
grafana_database_name: "grafana"
grafana_database_user: "{% if use_preconfigured_databases | bool and use_common_mariadb_user | bool %}{{ database_user }}{% else %}grafana{% endif %}"
grafana_database_address: "{{ database_address | put_address_in_context('url') }}:{{ database_port }}"
####################
# Database sharding
####################
grafana_database_shard_root_user: "{% if enable_proxysql | bool %}root_shard_{{ grafana_database_shard_id }}{% else %}{{ database_user }}{% endif %}"
grafana_database_shard_id: "{{ mariadb_default_database_shard_id | int }}"
grafana_database_shard:
users:
- user: "{{ grafana_database_user }}"
password: "{{ grafana_database_password }}"
shard_id: "{{ grafana_database_shard_id }}"
rules:
- schema: "{{ grafana_database_name }}"
shard_id: "{{ grafana_database_shard_id }}"
- user: "{{ grafana_database_user }}"
shard_id: "{{ grafana_database_shard_id }}"
####################
# Datasource
####################
grafana_data_sources:
opensearch:
enabled: "{{ enable_opensearch | bool }}"
data:
name: "opensearch"
type: "grafana-opensearch-datasource"
access: "proxy"
url: "{{ opensearch_internal_endpoint }}"
jsonData:
flavor: "OpenSearch"
database: "{{ opensearch_log_index_prefix }}-*"
version: "2.11.1"
timeField: "@timestamp"
logLevelField: "log_level"
alertmanager:
enabled: "{{ enable_prometheus_alertmanager | bool }}"
data:
name: "Alertmanager"
type: "alertmanager"
access: "proxy"
url: "{{ prometheus_alertmanager_internal_endpoint }}"
jsonData:
implementation: "prometheus"
alertmanager: true
timeInterval: "30s"
basicAuth: true
basicAuthUser: "{{ prometheus_alertmanager_user }}"
secureJsonData:
basicAuthPassword: "{{ prometheus_alertmanager_password }}"
##########
# Grafana
##########
grafana_image: "{{ docker_image_url }}grafana"
grafana_tag: "{{ openstack_tag }}"
grafana_image_full: "{{ grafana_image }}:{{ grafana_tag }}"
grafana_admin_username: "admin"
grafana_enable_healthchecks: "{{ enable_container_healthchecks }}"
grafana_healthcheck_interval: "{{ default_container_healthcheck_interval }}"
grafana_healthcheck_retries: "{{ default_container_healthcheck_retries }}"
grafana_healthcheck_start_period: "{{ default_container_healthcheck_start_period }}"
grafana_healthcheck_test:
- "CMD-SHELL"
- >-
healthcheck_curl http://{{
api_interface_address | put_address_in_context('url') }}:{{ grafana_server_port }}/api/health
grafana_healthcheck_timeout: "{{ default_container_healthcheck_timeout }}"
grafana_healthcheck:
interval: "{{ grafana_healthcheck_interval }}"
retries: "{{ grafana_healthcheck_retries }}"
start_period: "{{ grafana_healthcheck_start_period }}"
test: "{% if grafana_enable_healthchecks | bool %}{{ grafana_healthcheck_test }}{% else %}NONE{% endif %}"
timeout: "{{ grafana_healthcheck_timeout }}"
grafana_dimensions: "{{ default_container_dimensions }}"
grafana_default_volumes:
- "{{ node_config_directory }}/grafana/:{{ container_config_directory }}/:ro"
- "/etc/localtime:/etc/localtime:ro"
- "kolla_logs:/var/log/kolla/"
grafana_extra_volumes: "{{ default_extra_volumes }}"
grafana_start_first_node_delay: 10
grafana_start_first_node_retries: 12
grafana_remove_old_volume: true
############
# Prometheus
############
grafana_prometheus_url: "{{ internal_protocol }}://{{ kolla_internal_fqdn | put_address_in_context('url') }}:{{ prometheus_port }}"
###################
# Copy certificates
###################
grafana_copy_certs: "{{ kolla_copy_ca_into_containers | bool }}"
|