diff --git a/app/scripts/ansible/roles/grafana.yml b/app/scripts/ansible/roles/grafana.yml
index 2d80679c..6ad812d0 100644
--- a/app/scripts/ansible/roles/grafana.yml
+++ b/app/scripts/ansible/roles/grafana.yml
@@ -32,6 +32,9 @@
- dashboard_id: 11879
revision_id: 3
datasource: prometheus
+ - dashboard_id: 11074
+ revision_id: 9
+ datasource: prometheus
tasks:
- name: populate service facts
service_facts:
diff --git a/app/scripts/ansible/roles/node_exporter.yml b/app/scripts/ansible/roles/node_exporter.yml
new file mode 100644
index 00000000..d9931e45
--- /dev/null
+++ b/app/scripts/ansible/roles/node_exporter.yml
@@ -0,0 +1,38 @@
+- hosts: "{{ variable_host }}"
+ become: yes
+ become_method: sudo
+ tasks:
+ - name: Set SSH port
+ set_fact:
+ ansible_port: "{{SSH_PORT}}"
+
+
+ - name: collect facts about system services
+ service_facts:
+ register: services_state
+
+
+ - name: Open stat port for firewalld
+ firewalld:
+ port: "9100/tcp"
+ state: enabled
+ permanent: yes
+ immediate: yes
+ ignore_errors: yes
+ when: (ansible_facts['os_family'] == "RedHat" or ansible_facts['os_family'] == 'CentOS') and ansible_facts.services["firewalld.service"]['state'] == "running"
+
+
+ - name: Open stat port for iptables
+ iptables:
+ chain: INPUT
+ destination_port: "9100"
+ jump: ACCEPT
+ protocol: tcp
+ ignore_errors: yes
+
+
+ roles:
+ - role: cloudalchemy.node_exporter
+ environment:
+ http_proxy: "{{PROXY}}"
+ https_proxy: "{{PROXY}}"
diff --git a/app/scripts/install_node_exporter.sh b/app/scripts/install_node_exporter.sh
new file mode 100644
index 00000000..76ffc50f
--- /dev/null
+++ b/app/scripts/install_node_exporter.sh
@@ -0,0 +1,53 @@
+#!/bin/bash
+for ARGUMENT in "$@"
+do
+ KEY=$(echo $ARGUMENT | cut -f1 -d=)
+ VALUE=$(echo $ARGUMENT | cut -f2 -d=)
+
+ case "$KEY" in
+ PROXY) PROXY=${VALUE} ;;
+ HOST) HOST=${VALUE} ;;
+ USER) USER=${VALUE} ;;
+ PASS) PASS=${VALUE} ;;
+ KEY) KEY=${VALUE} ;;
+ SSH_PORT) SSH_PORT=${VALUE} ;;
+ *)
+ esac
+done
+
+if [ ! -d "/var/www/haproxy-wi/app/scripts/ansible/roles/cloudalchemy.node_exporterr" ]; then
+ if [ ! -z $PROXY ];then
+ export https_proxy="$PROXY"
+ export http_proxy="$PROXY"
+ fi
+ ansible-galaxy install cloudalchemy.node_exporter --roles-path /var/www/haproxy-wi/app/scripts/ansible/roles/
+fi
+
+export ANSIBLE_HOST_KEY_CHECKING=False
+export ANSIBLE_DISPLAY_SKIPPED_HOSTS=False
+export ACTION_WARNINGS=False
+export LOCALHOST_WARNING=False
+export COMMAND_WARNINGS=False
+
+PWD=`pwd`
+PWD=$PWD/scripts/ansible/
+echo "$HOST ansible_port=$SSH_PORT" > $PWD/$HOST
+
+if [[ $KEY == "" ]]; then
+ ansible-playbook $PWD/roles/node_exporter.yml -e "ansible_user=$USER ansible_ssh_pass=$PASS variable_host=$HOST PROXY=$PROXY SSH_PORT=$SSH_PORT" -i $PWD/$HOST
+else
+ ansible-playbook $PWD/roles/node_exporter.yml --key-file $KEY -e "ansible_user=$USER variable_host=$HOST PROXY=$PROXY SSH_PORT=$SSH_PORT" -i $PWD/$HOST
+fi
+
+if [ $? -gt 0 ]
+then
+ echo "error: Can't install Node exporter
"
+ exit 1
+fi
+
+if ! sudo grep -Fxq " - $HOST:9100" /etc/prometheus/prometheus.yml; then
+ sudo echo " - $HOST:9100" | sudo tee -a /etc/prometheus/prometheus.yml > /dev/null
+fi
+
+sudo systemctl reload prometheus
+rm -f $PWD/$HOST