基于Linux系统部署、非docker容器部署方式。
所需要的包已经全部放
123云盘 提取码000 永久生效 https://www.123pan.com/s/wkyA-bN7cv%E6%8F%90%E5%8F%96%E7%A0%81:0000

版本如图。
下载后将以上内容放置到服务器/opt目录下进行部署。
测试无问题。
?最后访问
http://ip:9090 prometheus?
http://ip:3000 grafana
模板根据实际情况添加吧。
8919
1 Node Exporter Dashboard 22/04/13 ConsulManager自动同步版 | Grafana Labs
其他服务器或者虚拟机只需要配置node_exporter 即可,默认配置文件无需变动。
参考脚本中的命令。(123网盘居然审核脚本 禁止分享)
#!/bin/bash
# prometheus_grafana.sh 单节点全部署
# SET PATH: /usr/local/prometheus data: /data/prometheus
#********************************************************************
#********************************************************************
. /etc/rc.d/init.d/functions
set -e
echo -e "\033[31m 创建prometheus用户 \033[0m"
Useradd () {
useradd -s /sbin/nologin -M prometheus
}
Package_install () {
#建议提前浏览器下载准备好安装包,配置文件根据需求后期编写或提前准备
# prometheus-2.33.5.linux-amd64.tar.gz grafana-enterprise-9.0.2.linux-amd64.tar.gz alertmanager-0.23.0.linux-amd64.tar.gz node_exporter-1.3.1.linux-amd64.tar.gz
#安装包放opt目录下
cd /opt
[ -f ./prometheus-2.33.5.linux-amd64.tar.gz ] || wget https://github.com/prometheus/prometheus/releases/download/v2.33.5/prometheus-2.33.5.linux-amd64.tar.gz
[ -f ./node_exporter-1.3.1.linux-amd64.tar.gz ] || wget https://github.com/prometheus/node_exporter/releases/download/v1.3.1/node_exporter-1.3.1.linux-amd64.tar.gz
[ -f ./alertmanager-0.23.0.linux-amd64.tar.gz ] || wget https://github.com/prometheus/alertmanager/releases/download/v0.23.0/alertmanager-0.23.0.linux-amd64.tar.gz
[ -f ./grafana-enterprise-9.0.2.linux-amd64.tar.gz ] || wget https://dl.grafana.com/enterprise/release/grafana-enterprise-9.0.2.linux-amd64.tar.gz
echo -e "\033[31m 1.安装 Prometheus \033[0m"
tar xvf prometheus-2.33.5.linux-amd64.tar.gz -C /usr/local/
mv /usr/local/prometheus-2.33.5.linux-amd64 /usr/local/prometheus
#将提前准备好的配置文件替换掉初始配置yml文件,如果没有注释下面这行
mv -f /opt/prometheus.yml /usr/local/prometheus
mkdir -p /data/prometheus
chown -R prometheus:prometheus /usr/local/prometheus /data/prometheus
echo 'export PATH=/usr/local/prometheus:$PATH' >> /etc/profile && source /etc/profile
cat > /usr/lib/systemd/system/prometheus.service <<'EOF'
[Unit]
Description=Prometheus
Documentation=https://prometheus.io/
After=network.target
[Service]
Type=simple
User=prometheus
ExecReload=/bin/kill -HUP $MAINPID
ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml \
--storage.tsdb.path=/data/prometheus/data \
--storage.tsdb.retention=30d \
--web.console.libraries=/usr/local/prometheus/console_libraries \
--web.console.templates=/usr/local/prometheus/consoles \
--web.listen-address=0.0.0.0:9090 \
--web.read-timeout=5m \
--web.max-connections=10 \
--query.max-concurrency=20 \
--query.timeout=2m \
--web.enable-lifecycle
PrivateTmp=true
PrivateDevices=true
ProtectHome=true
NoNewPrivileges=true
LimitNOFILE=infinity
ReadWriteDirectories=/data/prometheus
ProtectSystem=full
SyslogIdentifier=prometheus
Restart=always
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl restart prometheus
systemctl enable prometheus
echo -e "\033[31m 2.安装 node_exporter \033[0m"
tar xvf /opt/node_exporter-1.3.1.linux-amd64.tar.gz -C /usr/local/
mv /usr/local/node_exporter-1.3.1.linux-amd64 /usr/local/node_exporter
chown -R prometheus:prometheus /usr/local/node_exporter
cat > /usr/lib/systemd/system/node_exporter.service <<EOF
[Unit]
Description=node_exporter
After=network.target
[Service]
Type=simple
User=prometheus
Group=prometheus
ExecStart=/usr/local/node_exporter/node_exporter \
--web.listen-address=0.0.0.0:9100 \
--web.telemetry-path=/metrics \
--log.level=info \
--log.format=logfmt
Restart=always
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable node_exporter && systemctl start node_exporter
echo -e "\033[31m 3.安装 alertmanager \033[0m"
mkdir -p /usr/local/alertmanager
tar xvf /opt/alertmanager-0.23.0.linux-amd64.tar.gz -C /usr/local/alertmanager --strip-components 1
#去除目录结构加上 --strip-components N N代表去除几层
# useradd -M -s /sbin/nologin prometheus
#若该节点已创建,可省略该步
mkdir /usr/local/alertmanager/data
chown -R prometheus:prometheus /usr/local/alertmanager
cat > /usr/lib/systemd/system/alertmanager.service <<EOF
[Unit]
Description=Alertmanager
After=network.target
[Service]
Type=simple
User=prometheus
Group=prometheus
ExecStart=/usr/local/alertmanager/alertmanager \
--config.file=/usr/local/alertmanager/alertmanager.yml \
--storage.path=/usr/local/alertmanager/data \
--web.listen-address=0.0.0.0:9093 \
--cluster.listen-address=0.0.0.0:9094 \
--log.level=info \
--log.format=logfmt
Restart=always
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable alertmanager && systemctl start alertmanager
systemctl restart prometheus
echo -e "\033[31m 4.安装 grafana \033[0m"
mkdir -p /usr/local/grafana
tar -xvf grafana-enterprise-9.0.2.linux-amd64.tar.gz -C /usr/local/grafana --strip-components 1
cat > /usr/lib/systemd/system/grafana-server.service <<EOF
[Unit]
Description=Grafana
After=network.target
[Service]
Type=notify
ExecStart=/usr/local/grafana/bin/grafana-server -homepath /usr/local/grafana
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl start grafana-server
systemctl enable grafana-server
}
Useradd
Package_install && echo -e "\033[32m 主节点 prometheus node_exporter alertmanager grafana 安装成功,good luck \033[0m"
注意注释内容,你是否已经提前准备好对应文件,不然报错再运行就会退出。
(若遇到的话注释set -e 即可)
|