使用Cortex实现Prometheus的多租户管理

本文涉及的产品
可观测监控 Prometheus 版,每月50GB免费额度
可观测可视化 Grafana 版,10个用户账号 1个月
简介: 我们都知道,Prometheus 是一个监控和可观察性的一个标准解决方案。这里呢,我也不准备去介绍 Prometheus 是什么,我们直接切入到我们主题。我们怎么使用 Cortex 实现Prometheus 的多租户的管理的一个平台的搭建,下一章,主要讲我们怎么使用 API 去实现对 Cortex 的管理控制。

Prometheus

安装 Prometheus

Promethwus下载地址

首先我们下载好我们的 Prometheus 之后,老夫下载的是: prometheus-2.13.0.linux-amd64.tar.gz . 解压到指定的目录:

tar -zxvf prometheus-2.13.0.linux-amd64.tar.gz -C /opt/module

执行:

./prometheus

这样,一个简单的 Prometheus 服务就启动了。

配置 监控服务

这里,当我们需要监控某一个服务时,我们需要在配置文件中进行一下配置。这里我们监控一下:

scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: 'prometheus'
    static_configs:
    - targets: ['192.168.1.111:9090']
      labels:
        instance: prometheus

这里,我们重新启动一下 Prometheus 服务,为了验证一下,我们需要在浏览器中输入地址: http://192.168.1.111:9090/

然后我们看到的是这个:
1.png

按照图中的红色框框,我们可以看到的是这个:
2.png

我们看最后一个,最后一个是我配置的 Prometheus 的配置。 他的 state 是 up , 表示当前的监控是 OK 的。上面的三个暂时不管,我有 exporter 没有启动。看到 up 之后,就表示我们的这个服务是正常的。

配置 远程存储

这里我们要将数据写入到 Cortex 中 ,这里,我们是将 Cortex 作为 Prometheus 的一个远程存储点。所以我们需要在 Prometheus 配置中针对这个 远程存储进行配置。

remote_write:
  - url: http://192.168.50.178:8088/api/prom/push
    basic_auth:
      username: "sunyang_2"
      password: "sunyang"

这里,我们的这个 basic_auth 会在请求的 Header 里面添加 Authorization 。 这里的url 是我们的 cortex 服务的地址,可以是你自己的的代理地址,也可以是 cortex 原地址。下面是 cortex 的地址。

remote_write:
- url: http://localhost:9009/api/prom/push

启动 Prometheus

Cortex

安装 Cortex

这里安装 Cortex ,主要看个人的网速。
首先,我们需要先克隆 cortex 下来:

git clone https://github.com/cortexproject/cortex.git

进入 cortex 的根目录:

go build ./cmd/cortex

这里,只要不出问题,那就没问题。出了问题,就只好跟着错误信息进行排除了。

启动 Cortex

./cortex -config.file=./docs/configuration/single-process-config.yaml

Grafana

安装 Grafana

老夫这个安装的是 Windows 版本的。 Linux 版本中,我们的安装也很简单:

Ubuntu & Debian

sudo apt-get install -y adduser libfontconfig1

wget https://dl.grafana.com/oss/release/grafana_6.6.2_amd64.deb

sudo dpkg -i grafana_6.6.2_amd64.deb

Standalone Linux Binaries

wget https://dl.grafana.com/oss/release/grafana-6.6.2.linux-amd64.tar.gz

tar -zxvf grafana-6.6.2.linux-amd64.tar.gz

Redhat & Centos

wget https://dl.grafana.com/oss/release/grafana-6.6.2-1.x86_64.rpm

sudo yum localinstall grafana-6.6.2-1.x86_64.rpm

配置DataSource

我们在 浏览器中 输入 "http://ip:3000" , 默认的账号密码是 : admin / admin

我们进去之后,首先创建一个 数据源,这里,我们需要创建的数据源是 Prometheus ,但是我们的真实地址在 Cortex 。现在他们的这个流程是这样的:

3.png

我们这里添加两个数据源,一个是 cortex , 一个是 prometheus .

这里我给大家看一下这两个数据源的配置后:
4.png

这里特别注意: cortex 中的 URL : "http://192.168.1.111:9009/api/prom"

我们在配置好数据源后,就开始添加我们的 DashBoard .
5.png
6.png

这里可以看到,我们的Prometheus , Cortex 添加的 DashBoard 都是有东西的,虽然我们的这个DashBoard 还是初始化的状态。但这说明,我们的DashBoard 是正常的。现在,我们就要来配置我们的 Query .

配置 Query

首先配置我们的 Prometheus-Dashboard .

我们选择 "Edit"
7.png

按照我的配置来:
8.png

这里我选择的 "metrics" 是 wmi_cpu_time_total , 这个大家可以随意 , 大家可以直接填 "up" . 我这里的是对我的 Windows 系统做的监控。然后,我们保存:
9.png

配置完Prometheus ,我们配置我们的 Cortex-Dashboard
10.png

这里,我为了方便查看 Cortex 和 Prometheus , 我把监控放在了一起。

11.png

两边都有了数据,说明我们的配置成功。

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
相关文章
|
8月前
|
存储 Prometheus 运维
All in One:Prometheus 多实例数据统一管理最佳实践
当管理多个Prometheus实例时,阿里云Prometheus托管版相比社区版提供了更可靠的数据采集和便捷的管理。本文比较了全局聚合实例与数据投递方案,两者在不同场景下各有优劣。
62863 24
|
Prometheus 监控 Kubernetes
告别低效繁琐的Prometheus告警管理,Nightingale助你快速响应故障!
Prometheus的告警规则、记录规则都是采用配置文件管理,适合奉行Infrastructure as Code的公司或团队内部使用。但如果要把监控能力开放给全公司,就要支持协同操作的 UI,让各个团队互不干扰的同时共享成果
728 0
|
存储 Prometheus Cloud Native
prometheus告警规则管理
prometheus告警规则管理
|
存储 Prometheus 监控
Prometheus 告警管理--企业级Alert Manager
Prometheus作为监控告警的事实标准,提供了标准的指标采集、数据查询以及告警管理开源方案。但是同时在短信、语音、微信等告警通知渠道,告警管理的便捷方面都有缺陷。阿里云日志服务SLS致力于为用户提供统一的可观测性平台,为用户提供了企业级的AlertManager服务,解决客户在告警管理工作中遇到的问题。
|
2月前
|
Prometheus 运维 监控
智能运维实战:Prometheus与Grafana的监控与告警体系
【10月更文挑战第26天】Prometheus与Grafana是智能运维中的强大组合,前者是开源的系统监控和警报工具,后者是数据可视化平台。Prometheus具备时间序列数据库、多维数据模型、PromQL查询语言等特性,而Grafana支持多数据源、丰富的可视化选项和告警功能。两者结合可实现实时监控、灵活告警和高度定制化的仪表板,广泛应用于服务器、应用和数据库的监控。
323 3
|
20天前
|
存储 数据采集 Prometheus
Grafana Prometheus Altermanager 监控系统
Grafana、Prometheus 和 Alertmanager 是一套强大的开源监控系统组合。Prometheus 负责数据采集与存储,Alertmanager 处理告警通知,Grafana 提供可视化界面。本文简要介绍了这套系统的安装配置流程,包括各组件的下载、安装、服务配置及开机自启设置,并提供了访问地址和重启命令。适用于希望快速搭建高效监控平台的用户。
94 20
|
17天前
|
Prometheus 监控 Cloud Native
Prometheus+Grafana监控Linux主机
通过本文的步骤,我们成功地在 Linux 主机上使用 Prometheus 和 Grafana 进行了监控配置。具体包括安装 Prometheus 和 Node Exporter,配置 Grafana 数据源,并导入预设的仪表盘来展示监控数据。通过这种方式,可以轻松实现对 Linux 主机的系统指标监控,帮助及时发现和处理潜在问题。
90 7
|
23天前
|
Prometheus 运维 监控
Prometheus+Grafana+NodeExporter:构建出色的Linux监控解决方案,让你的运维更轻松
本文介绍如何使用 Prometheus + Grafana + Node Exporter 搭建 Linux 主机监控系统。Prometheus 负责收集和存储指标数据,Grafana 用于可视化展示,Node Exporter 则采集主机的性能数据。通过 Docker 容器化部署,简化安装配置过程。完成安装后,配置 Prometheus 抓取节点数据,并在 Grafana 中添加数据源及导入仪表盘模板,实现对 Linux 主机的全面监控。整个过程简单易行,帮助运维人员轻松掌握系统状态。
161 3
|
23天前
|
Prometheus 监控 Cloud Native
无痛入门Prometheus:一个强大的开源监控和告警系统,如何快速安装和使用?
Prometheus 是一个完全开源的系统监控和告警工具包,受 Google 内部 BorgMon 系统启发,自2012年由前 Google 工程师在 SoundCloud 开发以来,已被众多公司采用。它拥有活跃的开发者和用户社区,现为独立开源项目,并于2016年加入云原生计算基金会(CNCF)。Prometheus 的主要特点包括多维数据模型、灵活的查询语言 PromQL、不依赖分布式存储、通过 HTTP 拉取时间序列数据等。其架构简单且功能强大,支持多种图形和仪表盘展示模式。安装和使用 Prometheus 非常简便,可以通过 Docker 快速部署,并与 Grafana 等可
124 2