Docker部署Prometheus的實現示例
環(huán)境:阿里云CentOS7.9
docker部署
1、確定是CentOS7及以上版本
cat /etc/redhat-release
2、如有舊版本,需要先卸載舊版本
yum remove docker
3、yum安裝gcc相關以及需要的軟件包
yum -y install gcc gcc-c++ yum-utils
4、配置國內docker-ce的yum源(采用的是阿里云)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
5、配置完yum源后可以切換到/etc/yum.repos.d/目錄下,查看下是否存在docker-ce.repo,存在的話說明配置成功
6、更新yum軟件包索引
yum makecache fast
7、安裝docker
yum -y install docker-ce docker-ce-cli containerd.io
8、啟動docker
systemctl start docker systemctl status docker
9、查看docker版本
docker --version Docker version 26.1.4, build 5650f9b
10、配置鏡像加速器
sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://cz1numin.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker
11、docker info命令查看一下是否新增了阿里云的地址,確保配置成功
Prometheus部署
1、下載鏡像包
docker pull prom/node-exporter docker pull prom/mysqld-exporter docker pull oliver006/redis_exporter docker pull prom/prometheus docker pull grafana/grafana
prom/node-exporter
:用于收集主機系統(tǒng)信息和指標的prom/mysqld-exporter
:用于收集數據庫系統(tǒng)信息和指標的oliver006/redis_exporter
:用于收集redis信息和指標的grafana/grafana
:是一個用于可視化和分析監(jiān)控指標的開源平臺。prom/prometheus
:是一個開源的監(jiān)控系統(tǒng),用于收集和存儲時間序列數據,并提供基于數據的查詢、報警和可視化功能。
2、啟動容器
2.1啟動node-exporter
docker run -d --name node-exporter \ --restart=always -p 9100:9100 \ -v /proc:/host/proc:ro \ -v /sys:/host/sys:ro \ -v /:/rootfs:ro prom/node-exporter
訪問地址:http://47.119.27.111:9100/metrics
2.2啟動 mysqld-exporter
docker run -d --name mysqld_exporter \ --restart=always -p 9104:9104 \ -e DATA_SOURCE_NAME="root:Password123@(192.168.0.230:3306)/" \ prom/mysqld-exporter
訪問地址:http://47.119.27.111:9104/metrics
2.3啟動 redis_exporter
#不帶密碼 docker run -d --name redis_exporter -p 9121:9121 oliver006/redis_exporter --redis.addr redis://192.168.0.230:6379 # 綁定集群中一個redis實例就可以了 # 帶密碼 docker run -d --name redis_exporter -p 9121:9121 oliver006/redis_exporter --redis.addr redis://192.168.0.230:6379 --redis.password '123123'
訪問地址:http://47.119.27.111:9121/metrics
2.4查看容器IP
查看當前運行的網絡列表
docker network ls NETWORK ID NAME DRIVER SCOPE 16dab27fe490 bridge bridge local 05a7e6db54e6 host host local f2da59c2d4f9 none null local
查看指定網絡中的容器和其IP地址
docker network inspect <網絡ID或網絡名稱> "0f8f21d3d4cb8a892e3915430a56569c5182346d79a7dd6434718b7dfa59ab0a": { "Name": "redis_exporter", "EndpointID": "597b8133bfc51af671889a8786000fc27b4c53a74edda683b2be4272ceac0310", "MacAddress": "02:42:ac:11:00:04", "IPv4Address": "172.17.0.4/16", "IPv6Address": "" }, "940f4c0ca99bc9af06dd17f405bb5fb5f52bcd147149270f07ebe5af72128d9f": { "Name": "node-exporter", "EndpointID": "111ecdc84bd9682018f09d8e5010802dcb5c6d4052c126b931abbc0e539dff90", "MacAddress": "02:42:ac:11:00:02", "IPv4Address": "172.17.0.2/16", "IPv6Address": "" }, "cdc09d537f36572104e001d071cbc4642b0b9a528019f37149de3727f96827e1": { "Name": "mysqld_exporter", "EndpointID": "63029028def1861190829aec2a4d2f75048bd8e3acfe0fee0c628c169562e998", "MacAddress": "02:42:ac:11:00:03", "IPv4Address": "172.17.0.3/16", "IPv6Address": "" }
2.5啟動Prometheus
新建目錄prometheus,編輯配置文件prometheus.yml
mkdir /opt/prometheus cd /opt/prometheus/ vim prometheus.yml
global: scrape_interval: 60s evaluation_interval: 60s scrape_configs: - job_name: prometheus static_configs: - targets: ['localhost:9090'] labels: instance: prometheus - job_name: node static_configs: - targets: ['172.17.0.2:9100'] labels: instance: node-exporter - job_name: redis static_configs: - targets: ['172.17.0.4:9121'] labels: instance: redis_exporter - job_name: mysqld static_configs: - targets: ['172.17.0.3:9104'] labels: instance: mysql-exporter
啟動(注意:宿主機的路徑必須是絕對路徑:/opt/prometheus/prometheus.yml
,否則會報錯)
docker run -d --name prometheus --restart=always -p 9090:9090 -v /opt/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus
訪問地址:http://47.119.27.111:9090/graph
訪問targets地址:http://47.119.27.111:9090/targets
2.6啟動grafana
新建空文件夾grafana-storage,用來存儲數據
mkdir /opt/grafana-storage
添加權限
chmod 777 -R /opt/grafana-storage
啟動
docker run -d --name grafana --restart=always \ -p 3000:3000 --name=grafana \ -v /opt/grafana-storage:/var/lib/grafana grafana/grafana
訪問地址:http://47.119.27.111:3000/login
配置Grafana
默認登錄:admin/admin
設置----》Data sources----》Add data source
選擇Prometheus
Name:Prometheus
URL【Prometheus的ip(docker容器私網ip)+端口】:http://172.17.0.5:9090
點擊下面的Save & Test,如果出現綠色的,說明ok了
監(jiān)控mysql
導入grafana監(jiān)控模板,mysql監(jiān)控模板id為7362,填入如下輸入框內
監(jiān)控主機
導入主機的監(jiān)控模板,模板id為8919,以相同方式導入即可
監(jiān)控容器
導入容器的監(jiān)控模板,模板id為179,以相同方式導入即可
監(jiān)控redis
導入容器的監(jiān)控模板,模板id為 763,以相同方式導入即可
到此這篇關于Docker部署Prometheus的實現示例的文章就介紹到這了,更多相關Docker部署Prometheus內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
- 基于docker 搭建Prometheus+Grafana的過程詳解
- Docker 部署 Prometheus的安裝詳細教程
- 使用docker部署grafana+prometheus配置
- docker 搭建基于prometheus的監(jiān)控體系步驟實現
- docker安裝prometheus和grafana的詳細過程
- docker-compose搭建prometheus+grafana+釘釘告警
- docker部署Prometheus+Cadvisor+Grafana實現服務器監(jiān)控
- Docker搭建prometheus(普羅米修斯)的方法步驟
- docker 部署prometheus+grafana的過程詳解
相關文章
兩臺互通的服務器使用Docker部署一主兩從MySQL8.0.35的方法
本文主要介紹了在兩臺服務器上使用Docker部署一主兩從的MySQL?8.0.35架構,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2025-03-03淺談Docker-compose中的depends_on順序的問題解決
本文主要介紹了淺談Docker-compose中的depends_on順序的問題解決,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-11-11CentOS服務器部署Docker+Jenkins持續(xù)集成環(huán)境的方法
本文詳細介紹在CentOS服務器上部署Docker和Jenkins持續(xù)集成環(huán)境的步驟,涵蓋了準備工作、安裝Docker、配置Docker鏡像加速、安裝Jenkins、配置Jenkins以及集成Docker與Jenkins,通過這些步驟,讀者可以實現代碼的持續(xù)集成與快速部署,提高軟件開發(fā)效率,感興趣的朋友一起看看吧2025-02-02docker根據已生成的容器生成docker-compose.yml文件的實現步驟
這篇文章主要給大家介紹了docker 如何根據已生成的容器生成docker-compose.yml 文件,文中有詳細的代碼示例和實現步驟,對大家的學習有一定的幫助,需要的朋友可以參考下2023-10-10