# 基于Prometheus的企业级监控体系探索与实践## 背景我行自2018年开始从传统集中式应用架构向分布式微服务应用架构转型,2020年开始拥抱云原生体系,实现应用、平台上云。随着架构转型的不断深入,对监控体系的要求也不断提高,本文回顾我们基于Prometheus对微服务监控体系的一些探索和实践。Prometheus是CNCF基金会管理的第二个毕业项目(第一个是Kubernetes),由于其良好的架构设计和完善的生态,迅速成为了监控领域的主流解决方...
微服务是一种云原生的架构方法,它将一个单一的应用程序拆分为多个松耦合的、可独立部署的小型服务,每个服务都有自己的技术栈、数据库和数据模型,通过轻量级的通信协议(如 REST API、事件流和消息代理)进行协作,按照业务能力进行组织,具有清晰的边界和职责。微服务的优势在于提高了系统的可扩展性、可维护性、可测试性、可复用性和敏捷性,同时也带来了一些挑战,如服务的划分、协调、治理、监控、安全和事务等。在微服务的技术栈...
在技术方面进行了微服务架构向云原生架构的演进升级,打造更稳定、安全、实用的平台,支持业务更好的发展。### 1.2 平台简介[SmartOps](https://smartops.anchnet.com/)多云管理平台解决异构的基础设施资源复杂难管理问题。平台可纳管不同环境、不同云厂商资源统一管理,并结合平台的统一监控告警、统一服务管理、统一运营管理、统一运维管理、自动化运维等能力能极大简化云用户、云运维、云运营各角色的工作复杂度,提升管理效率...
微服务架构是一个松耦合架构,其要求各个微服务自发进行演化生长。如果组织缺乏自上向下的管理,很容易导致微服务野蛮生长,造成治理负担。 Go 服务性能分析集群性能优化一般有如下思路:收集原始性能数据——建立指标体系——跟踪监控异常/手动分析——定位性能瓶颈——优化方案。需要注意的是,只做一次优化是远远不够的,我们更希望将相关最佳实践做成系统或工具,日常运行下去,在字节内部,我们的做...
微服务是一种云原生的架构方法,它将一个单一的应用程序拆分为多个松耦合的、可独立部署的小型服务,每个服务都有自己的技术栈、数据库和数据模型,通过轻量级的通信协议(如 REST API、事件流和消息代理)进行协作,按照业务能力进行组织,具有清晰的边界和职责。微服务的优势在于提高了系统的可扩展性、可维护性、可测试性、可复用性和敏捷性,同时也带来了一些挑战,如服务的划分、协调、治理、监控、安全和事务等。在微服务的技术栈...
微服务架构是一个松耦合架构,其要求各个微服务自发进行演化生长。如果组织缺乏自上向下的管理,很容易导致微服务野蛮生长,造成治理负担。 Go 服务性能分析集群性能优化一般有如下思路:收集原始性能数据——建立指标体系——跟踪监控异常/手动分析——定位性能瓶颈——优化方案。需要注意的是,只做一次优化是远远不够的,我们更希望将相关最佳实践做成系统或工具,日常运行下去,在字节内部,我们的做...
在微服务架构中,应用程序将调用栈(call stack)的硬性(rigidity)和稳定性(stability)换成了网络的灵活性(flexibility)和混乱(chaos)。与调用栈无关的诸如延迟、中断重试、安全性和可追溯性已成为服务调用的关注点。... 本文探讨了服务网格的概念、优点、与 API 网关的不同,并为服务网格的使用提供了建议。**建议摘要****对于在容器上运行的大型组件化分布式应用程序,应用程序团队均应使用服务网格来管理、保护和监控其服务。**...
操作步骤登录 VMP 服务控制台。 在顶部导航栏,选择目标地域。 单击左侧导航栏的 告警中心 > 告警规则。单击 创建,在弹出的下拉菜单中选择 手动创建。 配置基本信息。 配置项 说明 名称 配置告警规则的名称。 描述 配置告警规则的描述信息。 配置告警触发条件。 配置项 说明 工作区 在下拉菜单中选择需要监控并触发告警的工作区。 查询语句 使用标准 PromQL 语句,配置监控对象或指标。MSE 常用指标参见 微服务引擎常见指标。 触...
完备的应用健康性和数据指标的监控非常重要,通过采集准确的监控指标、配置合理的告警机制,我们能够提前或者尽早发现问题,并做出响应、解决问题,进而保证产品的稳定性,提升用户体验。过去单体服务或者微服务时代,对我们 JavaBoy 来说,或是通过 SpringBoot 的 Actuator 模块实现了本地应用的监控与管理,或者通过 javamelody 对 Tomcat 应用进行线程级别的监控(参考我另一篇文章:《[一文看懂:性能监控神器JavaMelody](https://xie...
操作步骤创建工作区 绑定工作区。 创建告警规则。支持两种方式 手动创建:基于您的业务需求,通过 PromQL 语句 手动配置告警规则,实现更贴合您的业务场景的监控告警能力。操作详情参见 创建告警规则。MSE 常用指标参见 微服务引擎常见指标。 通过模板创建:微服务引擎基于通用的监控告警场景沉淀而成的监控告警规则模板。模板将部分规则的 PromQL 语句转化为可视化操作页面,降低规则配置的门槛。操作详情参见 创建实例监控告警规则...
微服务引擎通过托管微服务核心组件的方式为微服务应用提供注册发现、配置管理的能力。本文介绍 VMP 中关于微服务引擎常见查询指标和语法。 类型 参数 说明 VMP 指标 资源用量概览 出口流量 实例所部署集群中各节点... 注册中心监控 服务数 注册中心中已注册服务的总数。 mse_nacos_monitor{module="naming",name="serviceCount"} 服务提供者数 注册中心已注册的服务提供者的数量。 mse_nacos_monitor{module="naming",name="ipCou...
微服务引擎通过托管微服务核心组件的方式为微服务应用提供注册发现、配置管理的能力。本文介绍 VMP 中关于微服务引擎常见查询指标。 类型 参数 说明 VMP 指标 资源用量概览 出口流量 实例所部署集群中各节点的网络... 注册中心监控 服务数 注册中心中已注册服务的总数。 mse_nacos_monitor{module="naming",name="serviceCount"} 服务提供者数 注册中心已注册的服务提供者的数量。 mse_nacos_monitor{module="naming",name="ipCou...
**自动修复**:Kubernetes可以会监测这个集群中所有的宿主机,当宿主机或者OS出现故障,节点健康检查会自动进行应用迁移;K8s也支持应用的自愈,极大简化了运维管理的复杂性;- **服务发现与负载均衡**:通过Service资源出现各种应用服务,结合DNS和多种负载均衡机制,支持容器化应用之间的相互通信;- **弹性伸缩**:K8s可以监测业务上所承担的负载,如果这个业务本身的CPU利用率过高,或者响应时间过长,它可以对这个业务进行自动扩...