Prometheus安装指南

这篇文章是关于Prometheus监控系统的安装指南,以下是文章的中文翻译:

安装 | Prometheus

使用预编译的二进制文件

我们为大多数官方Prometheus组件提供了预编译的二进制文件。请查看下载部分,了解所有可用版本的列表。

从源代码编译

如需从源代码构建Prometheus组件,请查看相应仓库中的
Makefile目标。

使用Docker

所有Prometheus服务都作为Docker镜像在Quay.io或Docker Hub上提供。

在Docker上运行Prometheus非常简单,只需执行
docker run -p 9090:9090 prom/prometheus。这将启动带有示例配置的Prometheus,并在9090端口上暴露它。

Prometheus镜像使用一个卷来存储实际的指标数据。对于生产部署,强烈建议使用命名卷,以便于在Prometheus升级时管理数据。

设置命令行参数

Docker镜像使用一系列默认的命令行参数启动,这些参数可以在Dockerfile中找到(调整链接以对应使用的版本)。

如果您想为
docker run命令添加额外的命令行参数,您需要自己重新添加这些参数,因为它们将被覆盖。

卷和绑定挂载

为了提供您自己的配置,有几种选项。以下是两个示例。

通过运行以下命令,将主机上的
prometheus.yml绑定挂载:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
```
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

1
2
3
4
5
6
7
8
9
10
11
  
```

### 保存您的Prometheus数据

Prometheus数据存储在容器内的
`/prometheus`目录中,因此每次容器重启时数据都会被清除。要保存您的数据,您需要为容器设置持久存储(或绑定挂载)。

使用持久存储运行Prometheus容器:

```

为您的数据创建持久卷

docker volume create prometheus-data

启动Prometheus容器

docker run
-p 9090:9090
-v /path/to/prometheus.yml:/etc/prometheus/prometheus.yml
-v prometheus-data:/prometheus
prom/prometheus

1
2
3
4
5
6
7
8
9
10
11
  
```

### 自定义镜像

为了避免在主机上管理文件并将其绑定挂载,可以将配置烘焙到镜像中。如果配置本身相当静态,并且所有环境都相同,这种方法效果很好。

为此,请创建一个新目录,其中包含Prometheus配置和一个如下所示的
`Dockerfile`:

```

FROM prom/prometheus
ADD prometheus.yml /etc/prometheus/

1
2
3
4
5
6
  
```

现在构建并运行它:

```

docker build -t my-prometheus .
docker run -p 9090:9090 my-prometheus

  

更高级的选项是在启动时使用某些工具动态渲染配置,甚至可以有一个守护进程定期更新它。

使用配置管理系统

如果您更喜欢使用配置管理系统,您可能对以下第三方贡献感兴趣:

Ansible

  • prometheus-community/ansible

Chef

  • rayrod2030/chef-prometheus

Puppet

  • puppet/prometheus

SaltStack

  • saltstack-formulas/prometheus-formula

本文档是开源的。请通过提交问题或拉取请求来帮助改进它。

请注意,这是一篇技术文档的翻译,可能存在一些术语和上下文的细微差别。如果您需要更详细的解释或有特定的问题,请随时提问。

江达小记