首页 > 其他分享 >可观测实践|如何使用阿里云 Prometheus 观测 ECS 应用

可观测实践|如何使用阿里云 Prometheus 观测 ECS 应用

时间:2022-10-28 18:22:33浏览次数:91  
标签:观测 Prometheus 阿里 ECS VPC 组件

作者:颍川

引言

Prometheus + Grafana 已经成为云原生时代的可观测性事实标准。我们使用 Prometheus 观测云原生时代的 Kubernetes 体系下的 Node、ApiServer、workload 等的基础 metric,同时通过 Prometheus Exporters 采集各种组件(如 Redis、Kafka 等)和业务应用的 metric,最后通过 Grafana 展示大盘、AlertManager 进行告警,实现了云原生 Kubernetes 体系下 metric 可观测闭环。

由于大量非云原生的历史系统演进到云原生体系是个长时期过程,因此这些非云原生系统的可观测闭环也是我们必须解决的问题。我们很自然地想到“既然 Prometheus + Grafana 实现了云原生体系的 metric 可观测闭环,是否可以使用这套神器来解决非云原生体系应用的同样问题呢?”,答案是肯定的。

本文介绍如何使用阿里云 Prometheus 来实现非 Kubernetes 应用(即 ECS 应用)的 metric 观测。

ECS 应用的典型部署场景

场景 1:纯公有云 VPC

业务应用部署在一个或多个 VPC 内,每个 VPC 内购买了一批 ECS,在这些 ECS 上部署了基础组件(数据库和中间件等)和业务应用。此场景下,我们需要对这些 ECS OS(Linux 或 Windows)、基础组件和业务应用本身进行 metric 观测。

1.png

场景 2:公有云 VPC+线下 IDC

业务除了部署公有云 VPC 上外,还需要与线下 IDC 机房进行互通互联。通常,我们使用专线方式打通云上 VPC 和线下 IDC 机房。此场景下,我们期望有一套完整的 metric 观测平台,同时解决线上 VPC 和线下 IDC 的 metric 观测。

2.png

场景 3:公有云 VPC+多云 ECS

业务除了部署在阿里云 VPC 上外,还通过公网与其它云上的 ECS 进行互通互联。此场景下,我们也期望有一套完整的 metric 观测平台,实现一体化全局视角观测。

3.png

自建 Prometheus 观测 ECS 应用的痛点

自建 Prometheus 观测 ECS 应用,我们将面临的典型问题有:

  1. 由于安全、组织管理等因素,用户业务通常部署在多个相互隔离的 VPC,需要在多个 VPC 内都重复、独立部署 Prometheus,导致部署和运维成本高。

  2. 每套完整的自建观测系统都需要安装并配置 Prometheus、Grafana、AlertManager 以及各组件 Exporter,过程复杂、实施周期长。

  3. 缺少与阿里云 ECS 无缝集成的服务发现(ServiceDiscovery)机制,无法根据 ECS 标签来灵活定义抓取 targets。如果自行实现类似功能,则需要使用 Golang 语言开发代码(调用阿里云 ECS POP 接口)、集成进开源 Prometheus 代码、编译打包后部署,实现门槛高、过程复杂、版本升级困难。

  4. 常用组件的开源 Grafana 大盘不够专业,缺少结合观测组件的原理和最佳实践进行深入定制。

  5. 缺少常用组件的告警项模板,需要用户自行研究、配置告警项,工作量大,且很可能缺少各组件领域的专业技术沉淀。

阿里云 Prometheus 监控的能力框架

阿里云 Prometheus 监控 [ 1] 是一款全面对接开源 Prometheus 生态,支持类型丰富的组件观测,提供多种开箱即用的预置观测大盘,且提供全面托管的混合云/多云 Prometheus 服务。除了支持阿里云容器服务、自建 Kubernetes、Remote Write 外,阿里云 Prometheus 还提供混合云+多云 ECS 应用的 metric 观测能力;并且支持多实例聚合观测能力,实现 Prometheus 指标的统一查询,统一 Grafana 数据源和统一告警。其逻辑架构如下示意:

4.png

对于 ECS 应用,阿里云 Prometheus 提供以下 metric 数据采集方式:

  • 托管 exporter:提供 MySQL、Redis 等数十种常见组件 [ 2] (持续更新中)的托管部署。用户只需要在阿里云 Prometheus 控制台配置观测组件相关信息(如 IP 地址、端口等),即可实现 VPC 内 ECS 上这些组件的 metric 监控。由于线下 IDC 通过专线与 VPC 互通,因此托管 exporter 同时也能采集到线下 IDC 内的组件 metric。

  • 非托管 exporter:对于我们暂未提供托管 exporter 的组件,或用户业务应用的自定义 metric,用户可以在 VPC 或 IDC 内部署自定义 exorter,然后在阿里云 Prometheus 控制台上配置自定义服务发现(ServiceDiscovery),最后阿里云 Prometheus 主动发现这些 exporter,并定时抓取和存储 metric。

  • Node/Windows exporter:它们是一类特殊的非托管 exporter,因为需要部署在每台 ECS 上,以便采集 ECS OS 上观测信息。阿里云 Prometheus 提供了 Node exporter 的原生支持,Windows exporter 原生支持也即将上线。

ECS 应用场景下,自建 Prometheus 与阿里云 Prometheus 对比

5.png

如何使用阿里云 Prometheus 观测 ECS 应用

步骤 1:创建 VPC 实例

登录 Prometheus 控制台 [ 3] ,选择新建 Prometheus 实例,根据界面提示,填写实例名、选择 VPC / VSwitch / SecurityGroup / Grafana 工作区,即可创建 VPC 实例成功。操作说明详见阿里云帮助中心文档 [ 4]

6.png

7.png

步骤 2:接入组件监控

目前阿里云 Prometheus 已支持 Node exporter、MySQL、Redis、ElasticSearch、Kafka、Nginx、MongoDB、PostgreSQL、RabbitMQ、RocketMQ、BlackBox 等组件观测。

阿里云 Prometheus 天然内置支持了 static_configs和aliyun_sd_configs 两种最常用/实用的服务发现方式,方便用户进行组件观测目标 ECS 的配置。

此处以 MySQL 为例,简要描述接入配置方法。登录 Prometheus 控制台后,进入已创建的 VPC 实例详情的集成中心界面,新建 MySQL 接入,填写 MySQL 监控名称、MySQL 地址、端口、用户名/密码等信息即可。详细操作步骤和说明,参见阿里云帮助中心文档 [ 5]

8.png

步骤 3:查看大盘

阿里云 Prometheus 无缝集成了共享版 Grafana 和专家版 Grafana,用户无需单独安装 Grafana,即可查看各个组件的观测大盘。

接入需要监控的组件后,在集成中心点击对应组件图标的已安装 Exporter,可以看到该组件的大盘略缩图和链接,点击即可进入阿里云 Grafana,查看对应观测大盘。详见阿里云帮助中心文档 [ 6]

9.png

10.png

步骤 4:配置告警

进入 VPC 实例详情的集成中心界面,进入 MySQL 组件的告警界面,即可创建 Prometheus 告警规则,详见阿里云帮助中心文档 [ 7]

11.png

12.png

阿里云 Prometheus 提供了免运维、开箱即用的 VPC(以及和 VPC 打通的线下 IDC 机房)内 ECS 的 OS、常见中间件、业务应用的 metric 观测能力,实现了一站式的云原生和非云原生环境的 metric 观测协同和闭环。同时我们正在持续升级和丰富常用组件的观测能力(如 Windows、JMX、ClickHouse、Jenkins、Process 等),敬请期待。

关于阿里云 Prometheus 监控

阿里云 Prometheus 服务是基于云原生可观测事实标准 - Prometheus 开源项目构建的全托管观测服务。默认集成常见云服务,兼容主流开源组件,全面覆盖业务观测/应用层观测/˙中间件观测/系统层观测。通过开箱即用的 Grafana 看板与智能告警功能,并全面优化探针性能与系统可用性,帮助企业快速搭建一站式指标可观测体系。助业务快速发现和定位问题,减轻故障给业务带来的影响,并免去系统搭建与日常维护工作量,有效提升运维观测效率。

13.jpeg

与此同时,阿里云 Prometheus 作为阿里云可观测套件的重要组成部分,与 Grafana 服务、链路追踪服务,形成指标存储分析、链路存储分析、异构构数据源集成的可观测数据层,同时通过标准的 PromQL 和 SQL,提供数据大盘展示,告警和数据探索能力。为 IT 成本管理、企业风险治理、智能运维、业务连续性保障等不同场景赋予数据价值,让可观测数据真正做到不止于观测。

更具性价比的计费选择,Prometheus 包年包月

14.png

相关链接

[1] 阿里云 Prometheus监控

https://help.aliyun.com/document_detail/122123.html

[2] 常见组件

https://help.aliyun.com/document_detail/251830.html

[3] 应用实时监控服务ARMS

https://arms.console.aliyun.com/#/home

[4] Prometheus实例 for ECS

https://help.aliyun.com/document_detail/274450.html

[5] 使用阿里云Prometheus监控MySQL

https://help.aliyun.com/document_detail/161838.html

[6] 集成中心

https://help.aliyun.com/document_detail/427600.html

[7] Prometheus告警规则

https://help.aliyun.com/document_detail/331981.html

标签:观测,Prometheus,阿里,ECS,VPC,组件
From: https://www.cnblogs.com/alisystemsoftware/p/16837018.html

相关文章

  • Prometheus和Zabbix的对比
    1、https://blog.csdn.net/qq_33326449/article/details/112725317新公司要上监控,面试提到了Prometheus是公司需要的监控解决方案,作为喜新厌旧的程序员,我当然是选择跟风......
  • K8S之prometheus-operator监控
    prometheus-operator1.PrometheusOperator介绍介绍文章:http://t.zoukankan.com/twobrother-p-11164391.html2016年年末,CoreOs引入了Operator模式,并发布了Prometheu......
  • linux7系统搭建Prometheus+Grafana+Alertmanager监控平台
    一、环境准备1.系统   centos7.92.安装包下载​​https://prometheus.io/download/​​grafana官网下载:https://grafana.com/grafana/downloadalertmanager-0.23.0.......
  • 华为云ECS,如何助力数字化企业创新发展​
    华为云ECS,如何助力数字化企业创新发展​在网络信息技术高速发展的时代,现代化企业的业务类型越来越复杂多样,除了简单地将线下业务转为云上业务,现代化企业云上业务的运行往往......
  • 弹性伸缩,轻松上云-华为云弹性云服务器 ECS
    随着网络技术的迅速发展,传统行业和电子商务之间的紧密结合正在迅速地改变着企业的生产和运营方式,同时由于用户数量和业务规模的迅速增加,现有的电子商务平台很难适应快速发展......
  • 华为弹性云服务器ECS,协同优化网络产业信息
    华为在研究工作方面富有创新性、挑战性、可持续性。华为弹性云服务器ECS运用新方法创新突破,以新概念创新技术支持,巩固优化云服务。在网络上打造出一个安全可靠的服务平台,同......
  • 快速启动Prometheus
    文档说明:只记录关键地方;试验环境:linuxdebian11Prometheusversion:"3"services:prometheus:image:prom/prometheusports:-"9090:9090"......
  • 快速启动prometheus node-exporter
    文档说明:只记录关键地方;试验环境:linuxdebian11node-exporterversion:"3"services:node-export:image:prom/node-exporter:latestnetwork......
  • 快速启动Prometheus pushgateway
    文档说明:只记录关键地方;试验环境:linuxdebian11version:"3"services:prometheus:image:prom/pushgatewayports:-"9091:909......
  • Prometheus+Grafana搭建 (未完待续)
    1.Prometheus介绍prometheus是由谷歌研发的一款开源的监控软件,它通过安装在远程机器上的exporter,通过HTTP协议从远程的机器收集数据并存储在本地的时序数据库上同时Prome......