Prometheus integration

Prometheus integration

在 GitLab 9.0 中引入 .

GitLab 提供与强大集成,可直接在 GitLab 中监视您的应用程序的关键指标. 从 Prometheus 检索每个环境的度量,然后在 GitLab 界面中显示.

有两种方法可以设置 Prometheus 集成,具体取决于应用程序的运行位置:

启用后,GitLab 将自动从中的已知服务中检测度量标准 . 您还可以并创建自定义仪表板 .

在 GitLab 10.5 中 .

GitLab 可以在连接的 Kubernetes 集群上无缝部署和管理 Prometheus,从而使对应用程序的监视变得容易.

Requirements

Getting started

拥有连接的 Kubernetes 集群后,只需单击即可轻松部署托管的 Prometheus.

  1. 转到操作> Kubernetes页面以查看已连接的集群
  2. 选择您要部署 Prometheus 的集群
  3. 单击安装按钮以将 Prometheus 部署到群集

About managed Prometheus deployments

使用将 Prometheus 部署到命名空间中. Prometheus 仅可在集群中访问,并且 GitLab 通过Kubernetes API 进行通信.

Prometheus 服务器将节点,吊舱和端点. 要配置 Prometheus 监视的资源,只需设置以下Kubernetes 批注

  • prometheus.io/scrapetrue以启用对资源的监视.
  • 定义度量标准端点的端口.
  • prometheus.io/path来定义度量标准端点的路径. 默认为/metrics .

CPU 和内存使用情况受到监视,但是需要使用来确定环境. 如果您使用的是Auto DevOps ,则会自动处理.

由 GitLab 部署到群集的会自动添加注释,以进行监视,以提供关键的响应指标:延迟,吞吐量和错误率.

Requirements

与 Prometheus 集成需要满足以下条件:

  1. GitLab 9.0 或更高版本
  2. 必须将 Prometheus 配置为收集
  3. Each metric must be have a label to indicate the environment

Getting started

安装和配置 Prometheus 来监视应用程序非常简单.

  1. 设置受支持的监视目标之一
  2. 配置 Prometheus 服务器以

Configuration in GitLab

GitLab 中 Prometheus 集成的实际配置非常简单. 您只需要与您要集成的 Prometheus 服务器的域名或 IP 地址. 如果 Prometheus 资源由 Google 的身份识别代理(IAP)保护,则可以传递其他信息,例如客户端 ID 和服务帐户凭据,GitLab 可以使用这些信息来访问资源. 有关从服务帐户进行身份验证的更多信息,请参见 Google 的” 进行身份验证”文档.

  1. 导航至位于的” 设置>集成 .
  2. 单击Prometheus服务.
  3. 对于API URL ,请提供服务器的域名或 IP 地址,例如或http://192.0.2.1/ .
  4. (可选)在Google IAP Audience Client ID 中 ,提供受 Google IAP 保护的 Prometheus OAuth Client 的 Client ID.
  5. (可选)在Google IAP 服务帐户 JSON 中 ,提供被授权访问 Prometheus 资源的服务帐户凭据文件的内容.
  6. Click 保存更改.

Configure Prometheus Service

Thanos configuration in GitLab

  1. 导航到” 集成”页面 .
  2. 单击Prometheus服务.
  3. 提供服务器的域名或 IP 地址,例如http://thanos.example.com/或 .
  4. Click 保存更改.

尽管可以同时启用 Prometheus 的和自动配置 ,但仅使用其中之一:

  • 如果您已启用了Prometheus 手动配置和 ,则手动配置优先,并用于从仪表板和运行查询.
  • 如果您已在不同级别(项目,组,实例)的 Kubernetes 集群上安装了托管的 Prometheus 应用程序,则集群的优先级中将描述优先级的顺序 .
  • If you have managed Prometheus applications installed on multiple Kubernetes clusters at the same level, the Prometheus application of a cluster with a matching is used.

Determining the performance impact of a merge

版本历史

  • 在 GitLab 9.2 中 .
  • GitLab 9.3 添加了 30 分钟平均值的数字比较 .

开发人员可以在合并请求工作流程中查看其更改对性能的影响.

Note: Requires metrics.

将源分支部署到环境后,将出现迷你图和平均内存消耗的数值比较. 在迷你图上,圆点指示部署当前更改的时间,前后最多显示 30 分钟的性能数据. 比较结果显示了部署前后 30 分钟平均值之间的差异. 部署每个提交后,将更新此信息.

合并并重新部署目标分支后,指标将切换为显示此修订版已部署到的新环境.

性能数据将在 Prometheus 服务器上持久保存的时间内可用.