diff --git a/templates/proxmox-prometheus-pve-exporter/install-prometheus.sh b/templates/proxmox-prometheus-pve-exporter/install-prometheus.sh new file mode 100644 index 0000000..3150934 --- /dev/null +++ b/templates/proxmox-prometheus-pve-exporter/install-prometheus.sh @@ -0,0 +1,59 @@ +#!/bin/bash +PROMETHEUS_VERSION="2.46.0" +wget https://github.com/prometheus/prometheus/releases/download/v${PROMETHEUS_VERSION}/prometheus-${PROMETHEUS_VERSION}.linux-amd64.tar.gz +tar -xzvf prometheus-${PROMETHEUS_VERSION}.linux-amd64.tar.gz +cd prometheus-${PROMETHEUS_VERSION}.linux-amd64/ +# if you just want to start prometheus as root +#./prometheus --config.file=prometheus.yml + +# Create user +useradd --no-create-home --shell /bin/false prometheus + +# Create Directories +mkdir -p /etc/prometheus +mkdir -p /var/lib/prometheus + +# Set ownership +chown prometheus:prometheus /etc/prometheus +chown prometheus:prometheus /var/lib/prometheus + +# Copy binaries +cp prometheus /usr/local/bin/ +cp promtool /usr/local/bin/ + +chown prometheus:prometheus /usr/local/bin/prometheus +chown prometheus:prometheus /usr/local/bin/promtool + +# Copy config +cp -r consoles /etc/prometheus +cp -r console_libraries /etc/prometheus +# cp prometheus.yml /etc/prometheus/prometheus.yml + +# Copy Soncini config +cd /etc/prometheus/ +wget https://raw.githubusercontent.com/gsoncini/monitoring/main/Config/prometheus.yml + +chown -R prometheus:prometheus /etc/prometheus/consoles +chown -R prometheus:prometheus /etc/prometheus/console_libraries + +# Setup systemd +echo '[Unit] +Description=Prometheus +Wants=network-online.target +After=network-online.target + +[Service] +User=prometheus +Group=prometheus +Type=simple +ExecStart=/usr/local/bin/prometheus \ + --config.file /etc/prometheus/prometheus.yml \ + --storage.tsdb.path /var/lib/prometheus/ \ + --web.console.templates=/etc/prometheus/consoles \ + --web.console.libraries=/etc/prometheus/console_libraries + +[Install] +WantedBy=multi-user.target' > /etc/systemd/system/prometheus.service + +systemctl daemon-reload +systemctl enable prometheus