#!/usr/bin/env bash set -euo pipefail STAGE=${STAGE:-/tmp/lisglosips-s06-stage} stamp=$(date +%Y%m%d%H%M%S) backup=/var/backups/lisglosips-s06/$stamp install -d -m 0700 "$backup" systemctl cat prometheus-node-exporter.service >"$backup/prometheus-node-exporter.service.before" 2>/dev/null || true systemctl cat lisglosips-node-exporter.service >"$backup/lisglosips-node-exporter.service.before" 2>/dev/null || true dpkg-query -W -f='${Package}\t${Version}\n' prometheus-node-exporter >"$backup/packages.before" 2>/dev/null || true apt-get update -qq DEBIAN_FRONTEND=noninteractive apt-get install -y prometheus-node-exporter=1.7.0-1ubuntu0.3 install -d -o root -g root -m 0755 /etc/nftables.d install -o root -g root -m 0644 "$STAGE/nftables/node-exporter.nft" /etc/nftables.d/lisglosips-s06-exporter.nft install -o root -g root -m 0644 "$STAGE/systemd/lisglosips-exporter-firewall.service" /etc/systemd/system/lisglosips-exporter-firewall.service install -o root -g root -m 0644 "$STAGE/systemd/lisglosips-node-exporter.service" /etc/systemd/system/lisglosips-node-exporter.service install -o root -g root -m 0644 "$STAGE/node-exporter.env" /etc/default/lisglosips-node-exporter systemctl daemon-reload systemctl disable --now prometheus-node-exporter.service prometheus-node-exporter.socket 2>/dev/null || true systemctl kill prometheus-node-exporter.service 2>/dev/null || true pkill -f '^/usr/bin/prometheus-node-exporter$' 2>/dev/null || true systemctl mask prometheus-node-exporter.service 2>/dev/null || true systemctl disable --now openipmi.service 2>/dev/null || true systemctl mask openipmi.service 2>/dev/null || true systemctl reset-failed prometheus-node-exporter.service openipmi.service lisglosips-node-exporter.service 2>/dev/null || true systemctl enable --now lisglosips-exporter-firewall.service lisglosips-node-exporter.service systemctl is-active --quiet lisglosips-exporter-firewall.service systemctl is-active --quiet lisglosips-node-exporter.service curl -fsS http://100.90.90.90:9100/metrics >/dev/null echo "S06 A node exporter configured. Backup: $backup"