一、prometheus
1.1解壓文件
# tar -xzvf prometheus-2.42.0.linux-amd64.tar.gz -C ~/apps/
prometheus-2.42.0.linux-amd64/
prometheus-2.42.0.linux-amd64/NOTICE
prometheus-2.42.0.linux-amd64/consoles/
prometheus-2.42.0.linux-amd64/consoles/index.html.example
prometheus-2.42.0.linux-amd64/consoles/node.html
prometheus-2.42.0.linux-amd64/consoles/prometheus-overview.html
prometheus-2.42.0.linux-amd64/consoles/node-disk.html
prometheus-2.42.0.linux-amd64/consoles/prometheus.html
prometheus-2.42.0.linux-amd64/consoles/node-overview.html
prometheus-2.42.0.linux-amd64/consoles/node-cpu.html
prometheus-2.42.0.linux-amd64/console_libraries/
prometheus-2.42.0.linux-amd64/console_libraries/menu.lib
prometheus-2.42.0.linux-amd64/console_libraries/prom.lib
prometheus-2.42.0.linux-amd64/prometheus.yml
prometheus-2.42.0.linux-amd64/LICENSE
prometheus-2.42.0.linux-amd64/promtool
prometheus-2.42.0.linux-amd64/prometheus
1.2修改名稱
# mv prometheus-2.42.0.linux-amd64/ prometheus
1.3編寫啟停腳本
# 啟動腳本
# cat start.sh
nohup ./prometheus --config.file=prometheus.yml >> /data/apps/prometheus/prometheus.out 2>&1 &# 停止腳本
echo ' pkill prometheus' > stop.sh && chmod +x stop.sh
1.4啟動
tail -300f prometheus.out
ts=2025-09-15T08:23:37.761Z caller=main.go:512 level=info msg="No time or size retention was set so using the default time retention" duration=15d
ts=2025-09-15T08:23:37.761Z caller=main.go:556 level=info msg="Starting Prometheus Server" mode=server version="(version=2.42.0, branch=HEAD, revision=225c61122d88b01d1f0eaaee0e05b6f3e0567ac0)"
ts=2025-09-15T08:23:37.761Z caller=main.go:561 level=info build_context="(go=go1.19.5, platform=linux/amd64, user=root@c67d48967507, date=20230201-07:53:32)"
ts=2025-09-15T08:23:37.761Z caller=main.go:562 level=info host_details="(Linux 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64 host-10-15-32-71 (none))"
ts=2025-09-15T08:23:37.761Z caller=main.go:563 level=info fd_limits="(soft=655360, hard=655360)"
ts=2025-09-15T08:23:37.761Z caller=main.go:564 level=info vm_limits="(soft=unlimited, hard=unlimited)"
ts=2025-09-15T08:23:37.764Z caller=web.go:561 level=info component=web msg="Start listening for connections" address=0.0.0.0:9090
ts=2025-09-15T08:23:37.764Z caller=main.go:993 level=info msg="Starting TSDB ..."
ts=2025-09-15T08:23:37.766Z caller=tls_config.go:232 level=info component=web msg="Listening on" address=[::]:9090
ts=2025-09-15T08:23:37.766Z caller=tls_config.go:235 level=info component=web msg="TLS is disabled." http2=false address=[::]:9090
ts=2025-09-15T08:23:37.769Z caller=head.go:564 level=info component=tsdb msg="Replaying on-disk memory mappable chunks if any"
ts=2025-09-15T08:23:37.769Z caller=head.go:608 level=info component=tsdb msg="On-disk memory mappable chunks replay completed" duration=7.861μs
ts=2025-09-15T08:23:37.769Z caller=head.go:614 level=info component=tsdb msg="Replaying WAL, this may take a while"
ts=2025-09-15T08:23:37.772Z caller=head.go:685 level=info component=tsdb msg="WAL segment loaded" segment=0 maxSegment=0
ts=2025-09-15T08:23:37.772Z caller=head.go:722 level=info component=tsdb msg="WAL replay completed" checkpoint_replay_duration=28.034μs wal_replay_duration=3.003054ms wbl_replay_duration=453ns total_replay_duration=3.067185ms
ts=2025-09-15T08:23:37.776Z caller=main.go:1014 level=info fs_type=XFS_SUPER_MAGIC
ts=2025-09-15T08:23:37.776Z caller=main.go:1017 level=info msg="TSDB started"
ts=2025-09-15T08:23:37.776Z caller=main.go:1197 level=info msg="Loading configuration file" filename=prometheus.yml
ts=2025-09-15T08:23:37.777Z caller=main.go:1234 level=info msg="Completed loading of configuration file" filename=prometheus.yml totalDuration=1.36262ms db_storage=6.379μs remote_storage=5.581μs web_handler=803ns query_engine=4.284μs scrape=607.294μs scrape_sd=61.524μs notify=84.945μs notify_sd=22.443μs rules=5.972μs tracing=31.812μs
ts=2025-09-15T08:23:37.777Z caller=main.go:978 level=info msg="Server is ready to receive web requests."
ts=2025-09-15T08:23:37.777Z caller=manager.go:974 level=info component="rule manager" msg="Starting rule manager..."
1.5查看頁面
二、grafana
2.1下載地址
https://mirrors.huaweicloud.com/grafana
2.2編寫start.sh
# cat start.sh
#!/bin/bash
nohup ./bin/grafana-server --config=./conf/custom.ini > logs/grafana.log 2>&1 &
2.3啟動
logger=migrator t=2025-09-15T17:14:49.999438776+08:00 level=info msg="Executing migration" id="builtin role migration"
logger="builtin-role migrator" t=2025-09-15T17:14:50.004479811+08:00 level=info msg="no permission to create"
logger=migrator t=2025-09-15T17:14:50.020443663+08:00 level=info msg="Executing migration" id="seed permissions migration"
logger=migrator t=2025-09-15T17:14:50.045292656+08:00 level=info msg="Executing migration" id="managed permissions migration enterprise"
logger=migrator t=2025-09-15T17:14:50.064177991+08:00 level=info msg="migrations completed" performed=555 skipped=0 duration=52.21416628s
logger=sqlstore t=2025-09-15T17:14:50.63994826+08:00 level=info msg="Created default admin" user=admin
logger=sqlstore t=2025-09-15T17:14:50.641549473+08:00 level=info msg="Created default organization"
logger=licensing t=2025-09-15T17:14:50.662044382+08:00 level=info msg="Validated license token" appURL=http:/127.0.0.1:3000/ source=disk status=NotFound
logger=plugin.loader t=2025-09-15T17:14:50.757897484+08:00 level=info msg="Plugin registered" pluginID=input
logger=secrets t=2025-09-15T17:14:50.758477026+08:00 level=info msg="Envelope encryption state" enabled=true currentprovider=secretKey.v1
logger=query_data t=2025-09-15T17:14:50.76300753+08:00 level=info msg="Query Service initialization"
logger=live.push_http t=2025-09-15T17:14:50.858144587+08:00 level=info msg="Live Push Gateway initialization"
logger=infra.usagestats.collector t=2025-09-15T17:14:51.348265962+08:00 level=info msg="registering usage stat providers" usageStatsProvidersLen=2
vision alerting"
ng.alerting t=2025-09-15T17:14:51.349695788+08:00 level=info msg="starting to provision alerting"
logger=provisioning.alerting t=2025-09-15T17:14:51.349770585+08:00 level=info msg="finished to provision alerting"
logger=grafanaStorageLogger t=2025-09-15T17:14:51.350150116+08:00 level=info msg="storage starting"
-15T17:14:51.350438772+08:00 level=info msg="Warming state cache for startup"
logger=report t=2025-09-15T17:14:51.350539253+08:00 level=warn msg="Scheduling and sending of reports disabled, SMTP is not configured and enabled. Configure SMTP to enable."
logger=ngalert.state.manager t=2025-09-15T17:14:51.350438772+08:00 level=info msg="Warming state cache for startup"
logger=ngalert.state.manager t=2025-09-15T17:14:51.354009767+08:00 level=info msg="State cache has been initialized" states=0 duration=3.567255ms
logger=ticker t=2025-09-15T17:14:51.354176273+08:00 level=info msg=starting first_tick=2025-09-15T17:15:00+08:00
logger=ngalert.multiorg.alertmanager t=2025-09-15T17:14:51.354267264+08:00 level=info msg="starting MultiOrg Alertmanager"
logger=http.server t=2025-09-15T17:14:51.356067513+08:00 level=info msg="HTTP Server Listen" address=[::]:3000 protocol=http subUrl= socket=
2.4頁面登錄
三、node_exporter
3.1解壓
# tar -xzvf node_exporter-1.5.0.linux-amd64.tar.gz
node_exporter-1.5.0.linux-amd64/
node_exporter-1.5.0.linux-amd64/LICENSE
node_exporter-1.5.0.linux-amd64/NOTICE
node_exporter-1.5.0.linux-amd64/node_exporter
3.2啟動
# cat start.sh
./node_exporter &
# ./start.sh
[isee@host-10-15-32-71 node_exporter]$ ts=2025-09-15T09:32:43.494Z caller=node_exporter.go:180 level=info msg="Starting node_exporter" version="(version=1.5.0, branch=HEAD, revision=1b48970ffcf5630534fb00bb0687d73c66d1c959)"
ts=2025-09-15T09:32:43.494Z caller=node_exporter.go:181 level=info msg="Build context" build_context="(go=go1.19.3, user=root@6e7732a7b81b, date=20221129-18:59:09)"
ts=2025-09-15T09:32:43.495Z caller=filesystem_common.go:111 level=info collector=filesystem msg="Parsed flag --collector.filesystem.mount-points-exclude" flag=^/(dev|proc|run/credentials/.+|sys|var/lib/docker/.+|var/lib/containers/storage/.+)($|/)
ts=2025-09-15T09:32:43.495Z caller=filesystem_common.go:113 level=info collector=filesystem msg="Parsed flag --collector.filesystem.fs-types-exclude" flag=^(autofs|binfmt_misc|bpf|cgroup2?|configfs|debugfs|devpts|devtmpfs|fusectl|hugetlbfs|iso9660|mqueue|nsfs|overlay|proc|procfs|pstore|rpc_pipefs|securityfs|selinuxfs|squashfs|sysfs|tracefs)$
ts=2025-09-15T09:32:43.496Z caller=diskstats_common.go:111 level=info collector=diskstats msg="Parsed flag --collector.diskstats.device-exclude" flag=^(ram|loop|fd|(h|s|v|xv)d[a-z]|nvme\d+n\d+p)\d+$
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:110 level=info msg="Enabled collectors"
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=arp
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=bcache
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=bonding
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=btrfs
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=conntrack
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=cpu
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=cpufreq
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=diskstats
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=dmi
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=edac
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=entropy
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=fibrechannel
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=filefd
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=filesystem
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=hwmon
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=infiniband
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=ipvs
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=loadavg
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=mdadm
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=meminfo
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=netclass
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=netdev
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=netstat
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=nfs
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=nfsd
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=nvme
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=os
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=powersupplyclass
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=pressure
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=rapl
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=schedstat
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=selinux
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=sockstat
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=softnet
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=stat
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=tapestats
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=textfile
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=thermal_zone
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=time
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=timex
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=udp_queues
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=uname
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=vmstat
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=xfs
ts=2025-09-15T09:32:43.498Z caller=node_exporter.go:117 level=info collector=zfs
ts=2025-09-15T09:32:43.499Z caller=tls_config.go:232 level=info msg="Listening on" address=[::]:9100
ts=2025-09-15T09:32:43.499Z caller=tls_config.go:235 level=info msg="TLS is disabled." http2=false address=[::]:9100
3.3查看進程
# netstat -antp |grep 9100
(Not all processes could be identified, non-owned process infowill not be shown, you would have to be root to see it all.)
tcp6 0 0 :::9100 :::* LISTEN 30904/./node_export
3.4頁面查看
四、配置prometheus
4.1修改prometheus.yml
文件最后添加被監控的主機ip:port,將ip換成自己的ip。
static_configs: - targets: #["192.168.202.128:9090",'192.168.202.128:9100','192.168.202.129:9100'] - "192.168.202.128:9090"- '192.168.202.128:9100'- '192.168.202.129:9100'
4.2重啟prometheus
?pkill prometheus
4.3查看頁面
新監控的主機,已經能獲取到了。
五、配置grafana
5.1登錄grafana頁面,并進入主頁面
5.2訪問下面地址,去選擇模板
https://grafana.com/grafana/dashboards/https://grafana.com/grafana/dashboards/
5.3選擇一個模板后
5.4記錄第二步,第三步,然后到自己的grafana頁面
5.5完成效果
https://blog.csdn.net/m0_74766687/article/details/143424636