Skip to content

Instantly share code, notes, and snippets.

@MikeeI
Forked from cfbarbero/prometheus-userdata.sh.tpl
Last active July 24, 2021 19:49
Show Gist options
  • Save MikeeI/0a610e029a83dd8ded3c116ae59a66c8 to your computer and use it in GitHub Desktop.
Save MikeeI/0a610e029a83dd8ded3c116ae59a66c8 to your computer and use it in GitHub Desktop.
prometheus-install.sh
#!/bin/bash
prometheus_version=$1
sudo useradd --no-create-home --shell /bin/false prometheus
sudo mkdir /etc/prometheus
sudo mkdir /var/lib/prometheus
sudo chown prometheus:prometheus /etc/prometheus
sudo chown prometheus:prometheus /var/lib/prometheus
curl -LO https://github.com/prometheus/prometheus/releases/download/v$prometheus_version/prometheus-$prometheus_version.linux-amd64.tar.gz
tar xvf prometheus-$prometheus_version.linux-amd64.tar.gz
sudo cp prometheus-$prometheus_version.linux-amd64/prometheus /usr/local/bin/
sudo cp prometheus-$prometheus_version.linux-amd64/promtool /usr/local/bin/
sudo chown prometheus:prometheus /usr/local/bin/prometheus
sudo chown prometheus:prometheus /usr/local/bin/promtool
sudo cp -r prometheus-$prometheus_version.linux-amd64/consoles /etc/prometheus
sudo cp -r prometheus-$prometheus_version.linux-amd64/console_libraries /etc/prometheus
sudo chown -R prometheus:prometheus /etc/prometheus
rm -rf prometheus-$prometheus_version.linux-amd64.tar.gz prometheus-$prometheus_version.linux-amd64
## remote exec originially
#sudo mv /tmp/prometheus.service /etc/systemd/system/
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
sudo chown root:root /etc/systemd/system/prometheus.service
sudo systemctl daemon-reload
sleep 10
sudo systemctl enable prometheus
#sudo mv /tmp/prometheus.yml /etc/prometheus/
echo "global:
scrape_interval: 15s
scrape_configs:
- job_name: 'prometheus'
scrape_interval: 15s
static_configs:
- targets: ['localhost:54091']" > /etc/prometheus/prometheus.yml
sudo chown prometheus:prometheus /etc/prometheus/prometheus.yml
sudo systemctl start prometheus
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment