安装
使用预编译二进制文件
我们为大多数官方 Prometheus 组件提供预编译二进制文件。请查看 下载部分 以获取所有可用版本的列表。
从源代码构建
有关从源代码构建 Prometheus 组件的信息,请参阅相应存储库中的 Makefile 目标。
使用 Docker
所有 Prometheus 服务都可以在 Quay.io 或 Docker Hub 上作为 Docker 镜像提供。
使用 Docker 运行 Prometheus 非常简单,只需执行 docker run -p 9090:9090 prom/prometheus。这会启动一个带有示例配置的 Prometheus,并将其暴露在 9090 端口。
Prometheus 镜像使用一个卷来存储实际指标。对于生产部署,强烈建议使用 命名卷 ,以便在 Prometheus 升级时更轻松地管理数据。
设置命令行参数
Docker 镜像使用一些默认命令行参数启动,这些参数可以在 Dockerfile 中找到(请调整链接以对应当前使用的版本)。
如果您想为 docker run 命令添加额外的命令行参数,您需要自己重新添加它们,因为它们会被覆盖。
卷和绑定挂载
要提供自己的配置,有几种选择。这里有两个例子。
通过运行以下命令,将您的 prometheus.yml 从主机绑定挂载
docker run \
-p 9090:9090 \
-v /path/to/prometheus.yml:/etc/prometheus/prometheus.yml \
prom/prometheus
或者,通过运行以下命令,将包含 prometheus.yml 的目录绑定挂载到 /etc/prometheus
docker run \
-p 9090:9090 \
-v /path/to/config:/etc/prometheus \
prom/prometheus
保存您的 Prometheus 数据
Prometheus 数据存储在容器内的 /prometheus 目录中,因此每次容器重新启动时数据都会被清除。要保存您的数据,您需要为您的容器设置持久存储(或绑定挂载)。
运行带有持久存储的 Prometheus 容器
# Create persistent volume for your data
docker volume create prometheus-data
# Start Prometheus container
docker run \
-p 9090:9090 \
-v /path/to/prometheus.yml:/etc/prometheus/prometheus.yml \
-v prometheus-data:/prometheus \
prom/prometheus
自定义镜像
为了避免管理主机上的文件并进行绑定挂载,可以将配置烘焙到镜像中。如果配置本身相当静态且在所有环境中都相同,这会非常有效。
为此,请创建一个包含 Prometheus 配置和 Dockerfile 的新目录,如下所示
FROM prom/prometheus
ADD prometheus.yml /etc/prometheus/
现在构建并运行它
docker build -t my-prometheus .
docker run -p 9090:9090 my-prometheus
更高级的选项是使用一些工具在启动时动态渲染配置,甚至让一个守护进程定期更新它。
使用配置管理系统
如果您更喜欢使用配置管理系统,您可能会对以下第三方贡献感兴趣