docker 部署prometheus+grafana的過程詳解
首先進(jìn)行部署docker
配置阿里云依賴:
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo # 配置centos 7的鏡像源 yum install -y yum-utils device-mapper-persistent-data lvm2 # 安裝一些后期或需要的的一下依賴 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo sed -i 's/http/https/g' /etc/yum.repos.d/CentOS-Base.repo cat <<EOF > /etc/yum.repos.d/kubernetes.repo # 配置阿里云的k8s源 [kubernetes] name=Kubernetes baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/ enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg EOF sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo
開始進(jìn)行安裝docker
yum install docker-ce-19.03.* docker-ce-cli-19.03.* -y
# 由于新版kubelet建議使用systemd,所以可以把docker的CgroupDriver改成systemd
# "live-restore": true這個此參數(shù)相當(dāng)于是進(jìn)行加載docker不進(jìn)行重啟里面的鏡像
mkdir /etc/docker
cat > /etc/docker/daemon.json <<EOF
{
"registry-mirrors": [
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"https://docker.mirrors.ustc.edu.cn"
],
"exec-opts": ["native.cgroupdriver=systemd"],
"max-concurrent-downloads": 10,
"max-concurrent-uploads": 5,
"log-opts": {
"max-size": "300m",
"max-file": "2"
},
"live-restore": true
}
EOF
# 所有節(jié)點(diǎn)設(shè)置開機(jī)自啟動Docker:
systemctl daemon-reload && systemctl enable --now docker安裝普羅米修斯
下載鏡像:
docker pull docker.mirrors.sjtug.sjtu.edu.cn/prom/prometheus
創(chuàng)建普羅米的yaml
# my global config
global:
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
# scrape_timeout is set to the global default (10s).
# Alertmanager configuration
alerting:
alertmanagers:
- static_configs:
- targets:
# - alertmanager:9093
# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
# - "first_rules.yml"
# - "second_rules.yml"
# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
- job_name: "prometheus"
# metrics_path defaults to '/metrics'
# scheme defaults to 'http'.
static_configs:
- targets: ["localhost:9090"]創(chuàng)建普羅米使用的目錄:
mkdir /root/data/ cp prometheus.yml /root/.
啟動普羅米
docker run --name xixi -itd -u root -p 9091:9090 \ -v /root/prometheus.yml:/etc/prometheus/prometheus.yml \ -v /root/data: -v /root/data:/prometheus \ docker.mirrors.sjtug.sjtu.edu.cn/prom/prometheus:latest # 如果不寫-u root啟動的話可能出現(xiàn)沒有權(quán)限的報錯
進(jìn)行驗(yàn)證是否啟動成功:

grafana大屏展示
進(jìn)行下載grafana的docker鏡像
docker pull docker.mirrors.sjtug.sjtu.edu.cn/grafana/grafana:latest
進(jìn)行創(chuàng)建所有使用的目錄
mkdir -p /root/grafana/data /root/grafana/plugins /root/grafana/config
cp文件到config下
cp grafana.ini /root/grafana/config/grafana.ini
啟動grafana
docker run -dit \
-p 3000:3000 \
--name=grafana \
-u root \
-v /etc/localtime:/etc/localtime:ro \
-v /root/grafana/data:/var/lib/grafana \
-v /root/grafana/plugins/:/var/lib/grafana/plugins \
-v /root/grafana/config/grafana.ini:/etc/grafana/grafana.ini \
-e "GF_SECURITY_ADMIN_PASSWORD=admin" \
-e "GF_INSTALL_PLUGINS=grafana-clock-panel,grafana-simple-json-datasource,grafana-piechart-panel" \
docker.mirrors.sjtug.sjtu.edu.cn/grafana/grafana:latest進(jìn)行驗(yàn)證:

進(jìn)行關(guān)聯(lián)普羅米的數(shù)據(jù)源:




到此這篇關(guān)于docker 部署prometheus+grafana的文章就介紹到這了,更多相關(guān)docker 部署prometheus+grafana內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
centos8安裝docker(containerd.io與podman-manpages問題解決)及鏡像加速詳解
在CentOS 8中安裝Docker需先安裝VirtualBox,root用戶執(zhí)行卸載舊版、安裝基礎(chǔ)包、設(shè)置倉庫、安裝Docker Engine-Community及containerd.io,解決包沖突后配置阿里云鏡像加速器,最后運(yùn)行hello-world測試2025-09-09
Docker中namespace隔離的實(shí)戰(zhàn)
Namespace是Linux內(nèi)核的一個功能,用于隔離和管理系統(tǒng)資源,如進(jìn)程、網(wǎng)絡(luò)和文件系統(tǒng)等,通過創(chuàng)建隔離的命名空間,系統(tǒng)可以實(shí)現(xiàn)容器化和資源隔離,提高系統(tǒng)的安全性和穩(wěn)定性,這種技術(shù)廣泛應(yīng)用于Docker等容器技術(shù)中,本文就來介紹一下Docker中namespace隔離的實(shí)戰(zhàn)2024-11-11
Docker容器監(jiān)控及日志管理實(shí)現(xiàn)過程解析
這篇文章主要介紹了Docker容器監(jiān)控及日志管理實(shí)現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-08-08
docker容器通過ping直接運(yùn)行獲取公網(wǎng)IP操作
這篇文章主要介紹了docker容器通過ping直接運(yùn)行獲取公網(wǎng)IP操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-11-11
MySQL docker容器數(shù)據(jù)更新統(tǒng)計shell腳本代碼方式
本文介紹了如何創(chuàng)建和配置一個腳本文件,使其能夠每隔一小時執(zhí)行一次,用于更新MySQL統(tǒng)計信息,腳本使用Docker來執(zhí)行MySQL命令,并將結(jié)果保存到文件中,文章還強(qiáng)調(diào)了權(quán)限設(shè)置和配置定時任務(wù)的步驟2025-01-01
詳解Docker鏡像提交命令commit的工作原理和使用方法
這篇文章主要介紹了詳解Docker鏡像提交命令commit的工作原理和使用方法,可以依據(jù)這個容器創(chuàng)建本地鏡像,并可把這個鏡像推送到Docker hub中,以便在網(wǎng)絡(luò)上下載使用,感興趣的可以了解一下2018-11-11
在Docker環(huán)境中部署和運(yùn)行One API的操作方法
隨著技術(shù)的發(fā)展,API 作為服務(wù)連接的橋梁,變得越來越重要,One API 是一種流行的 API 管理平臺,能夠幫助我們更好地管理、監(jiān)控和擴(kuò)展 API 服務(wù),本文給大家介紹了如何在 Docker 環(huán)境中部署和運(yùn)行 One API,需要的朋友可以參考下2024-11-11
在?OpenKylin?上安裝?Docker的詳細(xì)過程
在?OpenKylin?上安裝?Docker可能會遇到與?Ubuntu?略有不同的包管理問題,這篇文章主要介紹了在?OpenKylin上安裝?Docker的過程,需要的朋友可以參考下2024-05-05

