2 # Copyright (C) The Arvados Authors. All rights reserved.
4 # SPDX-License-Identifier: AGPL-3.0
6 {%- set controller_nodes = "__CONTROLLER_NODES__".split(',') %}
7 {%- set enable_balancer = ("__ENABLE_BALANCER__"|to_bool) %}
8 {%- set data_retention_time = "__PROMETHEUS_DATA_RETENTION_TIME__" %}
19 use_upstream_repo: false
20 use_upstream_archive: true
23 config_file: /etc/prometheus/blackbox_exporter.yml
30 valid_http_versions: [HTTP/1.1, HTTP/2]
31 valid_status_codes: [] # Default is [200]
33 fail_if_not_ssl: false
37 storage.tsdb.retention.time: {{ data_retention_time }}
41 evaluation_interval: 15s
46 - job_name: prometheus
47 # metrics_path defaults to /metrics
48 # scheme defaults to http.
50 - targets: ['localhost:9090']
52 instance: mon.__CLUSTER__
55 - job_name: http_probe
60 - targets: ['https://__DOMAIN__']
62 instance: controller.__CLUSTER__
63 - targets: ['https://workbench.__DOMAIN__']
65 instance: workbench.__CLUSTER__
66 - targets: ['https://workbench2.__DOMAIN__']
68 instance: workbench2.__CLUSTER__
69 - targets: ['https://download.__DOMAIN__']
71 instance: download.__CLUSTER__
72 - targets: ['https://grafana.__DOMAIN__']
74 instance: grafana.__CLUSTER__
75 - targets: ['https://prometheus.__DOMAIN__']
77 instance: prometheus.__CLUSTER__
78 - targets: ['https://webshell.__DOMAIN__']
80 instance: webshell.__CLUSTER__
81 - targets: ['https://ws.__DOMAIN__']
83 instance: ws.__CLUSTER__
85 - source_labels: [__address__]
86 target_label: __param_target
87 - source_labels: [__param_target]
88 target_label: instance
89 - target_label: __address__
90 replacement: 127.0.0.1:9115 # blackbox exporter.
92 ## Arvados unique jobs
93 - job_name: arvados_ws
94 bearer_token: __MANAGEMENT_TOKEN__
97 - targets: ['ws.__DOMAIN__:443']
99 instance: ws.__CLUSTER__
101 - job_name: arvados_controller
102 bearer_token: __MANAGEMENT_TOKEN__
103 {%- if enable_balancer %}
109 {%- if enable_balancer %}
110 {%- for controller in controller_nodes %}
111 - targets: ['{{ controller }}']
113 instance: {{ controller.split('.')[0] }}.__CLUSTER__
117 - targets: ['__DOMAIN__:443']
119 instance: controller.__CLUSTER__
123 bearer_token: __MANAGEMENT_TOKEN__
126 - targets: ['keep.__DOMAIN__:443']
128 instance: keep-web.__CLUSTER__
130 - job_name: keep_balance
131 bearer_token: __MANAGEMENT_TOKEN__
133 - targets: ['__KEEPBALANCE_INT_IP__:9005']
135 instance: keep-balance.__CLUSTER__
137 - job_name: keepstore
138 bearer_token: __MANAGEMENT_TOKEN__
140 - targets: ['__KEEPSTORE0_INT_IP__:25107']
142 instance: keep0.__CLUSTER__
144 - job_name: arvados_dispatch_cloud
145 bearer_token: __MANAGEMENT_TOKEN__
147 - targets: ['__DISPATCHER_INT_IP__:9006']
149 instance: arvados-dispatch-cloud.__CLUSTER__
152 {%- if "__DATABASE_INT_IP__" != "" %}
154 - job_name: postgresql
157 '__DATABASE_INT_IP__:9187',
158 '__DATABASE_INT_IP__:3903'
161 instance: database.__CLUSTER__
166 {%- set node_list = "__NODELIST__".split(',') %}
167 {%- set nodes = [] %}
168 {%- for node in node_list %}
169 {%- set _ = nodes.append(node.split('.')[0]) %}
173 {% for node in nodes %}
174 - targets: [ "{{ node }}.__DOMAIN__:9100" ]
176 instance: "{{ node }}.__CLUSTER__"