Skip to content

Instantly share code, notes, and snippets.

@takuma-saito
Last active July 21, 2020 16:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save takuma-saito/4072866618b5eed79182b1913f302991 to your computer and use it in GitHub Desktop.
Save takuma-saito/4072866618b5eed79182b1913f302991 to your computer and use it in GitHub Desktop.
install_exporter.sh
#!/bin/bash -xe
# update apt packages
sudo apt-get -o Acquire::Check-Valid-Until=false update
##
# node exporter
##
version=1.0.1
name=node_exporter-${version}.linux-amd64
wget "https://github.com/prometheus/node_exporter/releases/download/v${version}/${name}.tar.gz"
tar xzvf ${name}.tar.gz
sudo mv ${name}/node_exporter /usr/local/bin
rm ${name}.tar.gz
sudo userdel monitor || true
sudo useradd -M -s /bin/false monitor || true
[ ! -d /var/node_exporter ] && sudo mkdir /var/node_exporter
sudo chmod 775 /var/node_exporter
sudo chown monitor:monitor /var/node_exporter
sudo gpasswd -a $(whoami) monitor
cat <<EOF | sudo tee /etc/systemd/system/node_exporter.service
[Unit]
Description = node exporter
[Service]
ExecStart = /usr/local/bin/node_exporter --collector.textfile.directory /var/node_exporter
Restart = always
Type = simple
User=monitor
Group=monitor
[Install]
WantedBy = multi-user.target
EOF
sudo systemctl enable node_exporter
sudo systemctl restart node_exporter
##
# process exporter
##
curl -L -O "https://github.com/ncabatoff/process-exporter/releases/download/v0.2.12/process-exporter-0.2.12.linux-$(dpkg --print-architecture).tar.gz"
tar zxvf process-exporter-0.2.12.linux-amd64.tar.gz
sudo mv process-exporter-0.2.12.linux-amd64/process-exporter /usr/local/bin
sudo mkdir -p /etc/process-exporter
cat <<EOF | sudo tee /etc/process-exporter/all.yaml
process_names:
- name: "{{.Comm}}"
cmdline:
- '.+'
EOF
cat <<EOF | sudo tee /etc/systemd/system/process_exporter.service
[Unit]
Description = process exporter
[Service]
ExecStart = /usr/local/bin/process-exporter --config.path /etc/process-exporter/all.yaml --web.listen-address=:9256
Restart = always
Type = simple
User=monitor
Group=monitor
[Install]
WantedBy = multi-user.target
EOF
sudo systemctl enable process_exporter
sudo systemctl restart process_exporter
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment