|
@@ -0,0 +1,64 @@
|
|
|
+# Copyright 2021 Dell Inc. or its subsidiaries. All Rights Reserved.
|
|
|
+#
|
|
|
+# Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
+# you may not use this file except in compliance with the License.
|
|
|
+# You may obtain a copy of the License at
|
|
|
+#
|
|
|
+# http://www.apache.org/licenses/LICENSE-2.0
|
|
|
+#
|
|
|
+# Unless required by applicable law or agreed to in writing, software
|
|
|
+# distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
+# See the License for the specific language governing permissions and
|
|
|
+# limitations under the License.
|
|
|
+---
|
|
|
+
|
|
|
+- name: Include control_plane_monitoring variables
|
|
|
+ include_vars: "{{ role_path }}/../../control_plane/roles/control_plane_monitoring/vars/main.yml"
|
|
|
+
|
|
|
+- name: Create prometheus datasource in grafana
|
|
|
+ community.grafana.grafana_datasource:
|
|
|
+ name: "hpc-prometheus-{{ ansible_default_ipv4.address }}"
|
|
|
+ grafana_url: "http://{{ grafana_svc_ip }}:{{ grafana_svc_port }}"
|
|
|
+ grafana_user: "{{ grafana_username }}"
|
|
|
+ grafana_password: "{{ grafana_password }}"
|
|
|
+ ds_type: prometheus
|
|
|
+ ds_url: "http://{{ ansible_default_ipv4.address }}"
|
|
|
+ access: direct
|
|
|
+ delegate_to: localhost
|
|
|
+ no_log: true
|
|
|
+
|
|
|
+- name: Replace data source in slurm dashboard
|
|
|
+ replace:
|
|
|
+ path: "{{ role_path }}/files/{{ item }}"
|
|
|
+ regexp: '"uid": "hpc.*'
|
|
|
+ replace: '"uid": "hpc-prometheus-{{ ansible_default_ipv4.address }}"'
|
|
|
+ with_items: "{{ slurm_dashboard_json_files }}"
|
|
|
+ delegate_to: localhost
|
|
|
+
|
|
|
+- name: Replace title in slurm dashboard (1/2)
|
|
|
+ replace:
|
|
|
+ path: "{{ role_path }}/files/slurm-dashboard-node-exporter.json"
|
|
|
+ regexp: '"title": "SLURM - Node Exporter Server Metrics.*'
|
|
|
+ replace: '"title": "SLURM - Node Exporter Server Metrics - ({{ ansible_default_ipv4.address }})",'
|
|
|
+ delegate_to: localhost
|
|
|
+
|
|
|
+- name: Replace title in slurm dashboard (2/2)
|
|
|
+ replace:
|
|
|
+ path: "{{ role_path }}/files/slurm-dashboard.json"
|
|
|
+ regexp: '"title": "SLURM - CPUs/GPUs, Nodes, Jobs, Scheduler.*'
|
|
|
+ replace: '"title": "SLURM - CPUs/GPUs, Nodes, Jobs, Scheduler ({{ ansible_default_ipv4.address }})",'
|
|
|
+ delegate_to: localhost
|
|
|
+
|
|
|
+- name: Import Slurm Grafana dashboards
|
|
|
+ community.grafana.grafana_dashboard:
|
|
|
+ grafana_url: "http://{{ grafana_svc_ip }}:{{ grafana_svc_port }}"
|
|
|
+ grafana_user: "{{ grafana_username }}"
|
|
|
+ grafana_password: "{{ grafana_password }}"
|
|
|
+ state: present
|
|
|
+ commit_message: Updated by ansible
|
|
|
+ overwrite: yes
|
|
|
+ path: "{{ role_path }}/files/{{ item }}"
|
|
|
+ with_items: "{{ slurm_dashboard_json_files }}"
|
|
|
+ delegate_to: localhost
|
|
|
+ no_log: true
|