主旨
上一章写了通过二进制的方式安装prometheus,其实有那么一些复杂与不方便性哈,那么这里我们写一下如何通过其他的方式,也就是docker的方式来部署prometheus,下面是具体的步骤,可以根据实际情况来进行选择。
1、安装依赖包
首先我们先安装下安装docker的依赖包;
[root@loaclhost ~]# yum -y install yum-utils device-mapper-persistent-data lvm2
复制
2、安装docker软件
2.1 配置yum源
[root@loaclhost ~]# cd /etc/yum.repos.d/
[root@loaclhost yum.repos.d]# ls
CentOS-Base.repo CentOS-CR.repo CentOS-Debuginfo.repo CentOS-fasttrack.repo CentOS-Media.repo CentOS-Sources.repo CentOS-Vault.repo
[root@loaclhost yum.repos.d]# mkdir bak
[root@loaclhost yum.repos.d]# mv *.repo bak/
[root@loaclhost yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
[root@loaclhost yum.repos.d]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
[root@loaclhost yum.repos.d]# ls
bak CentOS-Base.repo docker-ce.repo
[root@loaclhost yum.repos.d]#复制
2.2 安装docker
使用如下命令查看docker的版本
[root@loaclhost ~]# yum list docker-ce --showduplicates | sort -r
复制
我们可以通过上面的命令找到最新的版本,或者其他版本,而后采用下面的方式进行安装;
# 安装最新版本
yum -y install docker-ce
# 安装指定版本,例如安装25.0.1-1版本,那么命令如下
yum -y install docker-ce-25.0.1-1.el7复制
2.3 启停docker
# 启动
[root@loaclhost ~]# systemctl start docker
# 停止
[root@loaclhost ~]# systemctl stop docker
# 重启
[root@loaclhost ~]# systemctl restart docker
# 开机自启动
[root@loaclhost ~]# systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /etc/systemd/system/docker.service.
[root@loaclhost ~]#
# 查看版本
[root@loaclhost ~]# docker version
Client: Docker Engine - Community
Version: 18.09.9
API version: 1.39
Go version: go1.11.13
Git commit: 039a7df9ba
Built: Wed Sep 4 16:50:02 2019
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 18.09.9
API version: 1.39 (minimum version 1.12)
Go version: go1.11.13
Git commit: 039a7df9ba
Built: Wed Sep 4 16:55:50 2019
OS/Arch: linux/amd64
Experimental: false
[root@loaclhost ~]#复制
2.4 给docker配置国内源
docker默认的源是国外的,访问特别慢,使用起来不是很方便,所以我们对这个源进行替换,什么是源呢,就是你从哪里拉取镜像。
[root@loaclhost ~]# vim /etc/docker/daemon.json
[root@loaclhost ~]# cat !$
cat /etc/docker/daemon.json
{
"registry-mirrors": [
"https://ung2thfc.mirror.aliyuncs.com",
"https://docker.mirrors.ustc.edu.cn",
"http://hub-mirror.c.163.com",
"https://registry.docker-cn.com"
]
}
# 配置解释
# 阿里云镜像加速:https://ung2thfc.mirror.aliyuncs.com
# 中国科技大学镜像加速:https://docker.mirrors.ustc.edu.cn
# 网易镜像加速:http://hub-mirror.c.163.com
# docker中国区官方镜像加速:https://registry.docker-cn.com
[root@loaclhost ~]# systemctl restart docker # 重启一下docker
[root@loaclhost ~]# docker info | grep 'Registry Mirrors' -A5 # 看一下镜像源已经修改完毕了
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled
Registry Mirrors:
https://ung2thfc.mirror.aliyuncs.com/
https://docker.mirrors.ustc.edu.cn/
http://hub-mirror.c.163.com/
https://registry.docker-cn.com/
Live Restore Enabled: false
[root@loaclhost ~]#复制
3、安装prometheus
3.1 修改主机名
PS:我这台服务器的IP地址是:10.1.5.56 在宿主机上操作,修改主机名:
[root@loaclhost ~]# vim /etc/hosts
# 新增下面的配置
10.1.5.56 test-01
[root@loaclhost ~]#复制
3.2 拉取镜像
[root@loaclhost ~]# docker pull prom/prometheus
[root@loaclhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
prom/prometheus latest a3d385fc29f9 2 years ago 201MB
[root@loaclhost ~]#复制
3.3 复制配置文件
[root@loaclhost ~]# mkdir /etc/prometheus # 新建一个目录,用来存放prometheus配置文件
[root@loaclhost ~]# find / -name prometheus.yml # 找一下prometheus的配置文件
/var/lib/docker/overlay2/626cda1a84840b095888f4e454135e15ba3a6cbc7ed686d3b2553d1f0a881e08/diff/etc/prometheus/prometheus.yml
/var/lib/docker/overlay2/dc68c4b9538af91e6b6e38c27cff74722e606963a9e773e03d3f48a1c65067e4/diff/etc/prometheus/prometheus.yml
/usr/local/prometheus/prometheus.yml
[root@loaclhost ~]#
# 复制一个配置文件到我们刚创建的目录中
[root@loaclhost ~]# cp /var/lib/docker/overlay2/626cda1a84840b095888f4e454135e15ba3a6cbc7ed686d3b2553d1f0a881e08/diff/etc/prometheus/prometheus.yml /etc/prometheus/
[root@loaclhost ~]#复制
3.4 修改配置文件
[root@loaclhost ~]# vim /etc/prometheus/prometheus.yml
scrape_configs:
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
- job_name: "test-001" # 这里修改了,同一个集群中每一个prometheus的名字最好保持不一致
# metrics_path defaults to '/metrics'
# scheme defaults to 'http'.
static_configs:
- targets: ["test-01:9090"] # 这里原来是localhost,只能本地,我们现在映射到了宿主机上复制
3.5 启动容器
[root@loaclhost ~]# docker run -d -p 9090:9090 --restart=always -v /etc/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml -v /etc/hosts:/etc/hosts --name prometheus prom/prometheus
c3d9db274c577a65bfa46d57c395c2ef4361f47ac5c5cee328637ea431c06502
# 参数解释
# -d # 后台启动
# -p # 端口映射,宿主机的9090:容器的9090
# --restart=always # 让这个容器始终随着docker的启停而启动
# -v # 目录映射,宿主机的目录:容器的目录
# --name prometheus # 给这个容器起一个名字,叫做prometheus复制
3.6 浏览器访问
访问地址如下:http://10.1.5.56:9090怎么样,是不是使用docker的方式部署prometheus要比二进制的方式更加简单,只要你的环境中有docker的环境,那么其实我们安装prometheus真的是非常方便与快捷的。安装完了,下来我们就开始深入prometheus其他的内容了。
领取红包,能省则省
“🎉🎁 独家福利来啦!美团、饿了么、滴滴打车、菜鸟裹裹、电影票红包大放送!每天都有哦!🎁🎉
👀 快来瞅瞅,动动手指就能省下一笔!别错过,赶紧按照下方操作领取你的专属红包吧!👇
💬 如果你还有其他想要的红包类型,记得留言告诉我们哦,我们会尽力满足大家的需求!🎁💖”
文章转载自运维家,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
周边生态|PGRX for Cloudberry 开源,pgvector for Cloudberry 升级到 0.8.0
HashData
149次阅读
2025-04-11 15:35:07
NineData 社区版征文评测活动圆满收官!
NineData
119次阅读
2025-04-09 11:01:15
下一代DBA必备技能
Bytebase
45次阅读
2025-03-28 14:59:40
如何使用 RisingWave 和 PuppyGraph 构建高性能实时图分析框架
RisingWave中文开源社区
37次阅读
2025-03-18 10:49:54
一键部署 GPU Kind 集群,体验 vLLM 极速推理
Se7en的架构笔记
36次阅读
2025-03-24 09:41:41
Oracle云大翻车:传6百万用户认证数据泄漏
非法加冯
35次阅读
2025-03-31 10:00:54
演讲切片 | GreptimeDB MCP 如何让大模型驾驭实时数据?
GreptimeDB
34次阅读
2025-03-31 10:03:03
OB 企业版单机版探秘——安装部署
数据库技术闲谈
28次阅读
2025-04-10 11:53:00
docker安装jenkins
IT那活儿
27次阅读
2025-03-31 10:00:41
PostgreSQL 登顶全球数据库之战:3 个让甲骨文工程师失眠的「核功能」
开源软件联盟PostgreSQL分会
24次阅读
2025-03-18 10:45:57