目标读者
需要对阿里云负载均衡访问日志进行分析监控的开发、运维、安全审计人员。
适用场景
开发运维
通过CloudLens对负载均衡进行全面观测,可实时关注负载均衡的各类指标信息,包括PV、请求成功率、平均延迟、P50延迟、P99延迟、P9999延迟、出入流量等,结合内置的告警可第一时间监控感知到流量高峰以及异常场景并及时通知给特定的开发人员做后续的服务调整。同时CloudLens for ALB/CLB提供负载均衡访问日志的实时存储、查询与分析,提高了问题定位效率。
IT运维
IT运维人员更注重后台服务的稳定性、黄金指标、并告警监控进行及时响应。IT运维人员可通过CloudLens for ALB/CLB 的告警功能对负载均衡的错误码、流量、异常事件、错误率、延迟等指标及时识别异常并响应(24×7的值班)。
安全审计
安全审计更加偏重对后台重要服务访问日志的记录与较长时间保存以便审计,也可以对重要频繁访问的后台服务,基于访问日志或指标进行安全类监控(例如异常IP访问、DDoS攻击等)和一定响应,在需要时进行安全分析与审计等。
相关概念
负载均衡SLB(Server Load Balancer)是一种对流量进行按需分发的服务,通过将流量分发到不同的后端服务器来扩展应用系统的吞吐能力,并且可以消除系统中的单点故障,提升应用系统的可用性。阿里云负载均衡SLB分为两类:传统型负载均衡CLB和应用型负载均衡ALB。
负载均衡分类 |
说明 |
ALB(应用型负载均衡) |
专门面向七层,提供超强的业务处理性能,例如HTTPS卸载能力。单实例每秒查询数QPS(Query Per Second)可达100万次。同时ALB提供基于内容的高级路由特性,例如基于HTTP报头、Cookie和查询字符串进行转发、重定向和重写等,是阿里云官方云原生Ingress网关。 |
CLB(传统型负载均衡) |
支持TCP、UDP、HTTP和HTTPS协议,具备强大的四层处理能力,以及基础的七层处理能力。 |
方案架构
SLS团队联合负载均衡团队发布的应用型负载均衡日志中心(CloudLens for ALB)以及传统型负载均衡日志中心(CloudLens for CLB),为不同类型的负载均衡提供访问日志分析、秒级监控指标分析、实时告警等功能,并提供基于AIOps的自动异常巡检功能,具体包括:
- 支持集中管理当前阿里云账号下所有的ALB/CLB实例。
- 支持一键开启ALB/CLB访问日志的采集功能,集中管理日志的采集状态。
- 提供ALB/CLB访问日志的实时存储、查询与分析。
- 基于原始访问日志实时提取各类指标信息,包括PV、请求成功率、平均延迟、P50延迟、P99延迟、P9999延迟、出入流量等。并支持多个维度组合,包括app_lb_id、host、status。
- 提供丰富的可视化报表,包括监控中心、秒级监控、实例巡检等,并支持报表邮件、钉钉群订阅。
- 提供智能巡检功能,支持全局巡检和app_lb_id粒度巡检,并支持在可视化报表中直接标注异常点。
- 自定义告警配置,告警通知直接对接消息中心、短信、邮件、语音(电话)、钉钉,并支持对接自定义WebHook。
方案优势
- 操作简单:一站式开通、中心化使用,无需关心日志收集、存储、计算、可视化等问题,将开发、运维人员从日志处理的繁琐耗时中解放出来,将更多的精力集中到业务开发和技术探索上去。
- 海量数据:负载均衡日志中心支持自定义配置预聚合功能,实时计算聚合指标,计算后的聚合结果可降低几个数量级,使查询速度大大提升。
- 实时查询:阿里云负载均衡结合日志服务强大的大数据计算能力,秒级分析处理实时产生的日志,满足DevOps、监控、告警等场景对日志数据的实时性的要求。
- 弹性存储:Logstore容量可动态伸缩,支持实例级别开通或关闭访问日志功能,任意设置日志存储周期以及冷热存储。
- 智能巡检:基于达摩院智能AIOps算法,提供ALB/CLB指标自动巡检功能,有助于更快、更准确的发现并定位问题。
- 开放平台:支持与三方系统进行对接,包括流计算框架、常见数仓、SDK消费、三方可视化系统等。
接入管理模块介绍
接入管理提供实例集中管理视图。负载均衡CloudLens开启后会拉取所有ALB(CLB) 实例全局展示,包括实例的基本信息:实例id、名称、地域以及标签;实例日志采集状态:访问日志的采集操作、存储信息以及采集状态,开启访问日志后的实例通过访问日志按钮可一键跳转查询分析页面。
存储目标库汇聚实例开启访问日志存储的project 以及logstore信息,支持修改日志存储周期
告警中心模块介绍
CloudLens for CLB/ALB预设了丰富的监控告警规则,如基线告警、同环比告警、智能告警等,涵盖了QPS、延迟、错误率、流量等场景,同时也支持短信、钉钉、邮件、语音、自定义Webhook等通知方式,用户可以根据实际应用场景选择开启不同的告警。
报表中心模块介绍
负载均衡7层访问日志支持的指标包括:全局指标,app_lb_id维度指标、status维度指标和upstream_status维度指标,具体可参考CloudLens for ALB指标说明以及CloudLens for CLB指标说明。报表中心包含监控概览、监控中心、秒级监控、实例巡检、访问概览这5部分。
监控概览
监控概览主要展示负载均衡实例监控指标的总体情况,包括核心指标、错误码、流量、异常事件、访问PV、访问成功率、流量、平均延迟等指标。
监控中心
监控中心主要展示实例的实时监控数据,包括访问PV、请求成功率、平均延时、4xx请求数、Status分布、流量、P50延迟、P90延迟、P99延迟、P9999延迟、TOP请求Host、TOP延迟Host、TOP失败率Host、TOP请求URL、TOP延迟URL、TOP失败率URL、TOP请求后端、TOP延迟后端、TOP失败率后端等指标。
秒级监控
秒级监控主要展示实例的秒级监控指标,包括QPS、访问延迟、Upstream延迟、成功率、请求流量、返回Body流量、2xx状态码、3xx状态码、错误状态码、Upstream2xx状态码、Upstream3xx状态码、Upstream错误状态码等指标。
实例巡检
基于日志服务提供的机器学习算法,自动检测ALB(CLB)实例的异常点,包括异常总数、高等级异常、异常等级分布、中等级异常、低等级异常、异常指标分布、异常列表、异常事件等指标。
访问概览
访问概览主要展示实例的整体状态,包括PV对比昨日、PV对比上周、UV对比昨日、UV对比上周、PV分布、UV分布、今日访问PV、7天访问PV、TOP10访问省份、移动端占比、TOP10访问Host、TOP10访问UserAgent、TOP访问IP等指标。
方案实施
前提条件
下面以ALB举例说明如何使用CloudLens进行分析观测。前提需要创建ALB实例,以及创建日志服务Project和Logstore,可参考前提条件。
操作步骤
步骤一:开启访问日志监控
- 登录ALB控制台配置监听规则和服务器组。
- 在实例页面,单击目标实例ID,在监听页签,单击创建监听。
- 按照配置向导配置监听 > 选择服务器组 > 配置审核。
- 在服务器组页面,点击目标服务器组ID,添加后端服务器。
- CloudLens for ALB 控制台开启实例访问日志
- 单击左侧接入管理 > ALB实例接入。
- 选择需要开启访问日志的ALB实例,点击访问日志 > 开启。
步骤二:配置告警规则
- 进入CloudLens for ALB告警管理
- 在左侧导航栏中,单击告警管理。
- 在告警管理页面选择需要的告警规则,点击添加/开启。
方案验证
完成操作步骤后CloudLens for ALB会提供访问操作的监控与分析。
- 进入CloudLens for ALB报表中心
- 在左侧导航栏中,单击报表中心。
- 在报表中心选择ALB实例ID > 监控中心。
- 在CloudLens for ALB的查询分析页面查看实例访问日志详情
- 在左侧导航栏中,单击查询分析。
- 在查询分析页面选择ALB实例ID > 访问日志查询。
参考文献
CloudLens for CLB 前端入口:https://sls.console.aliyun.com/lognext/app/lens/clb
CloudLens for ALB 前端入口:https://sls.console.aliyun.com/lognext/app/lens/alb
SLS各个云产品日志应用文档列表:https://help.aliyun.com/document_detail/151620.html
- 欢迎钉钉扫群加入阿里云-日志服务(SLS)技术交流, 获得第一手资料与支持
- 更多SLS的系列直播与培训视频会同步到微信公众号、知乎与B站,敬请留意