HCIP学习笔记-华为云运维方案-9

1.云运维概述

1.1 传统运维方式面临的挑战

image.png

  • 运维人员技能要求高,配置烦杂,同时需要维护多套系统
  • 无法关联分析,虽然指标很多,但需要根据运维经验逐一排查
  • 对于分布式追踪系统,学习和使用成本高,并且稳定性较差。

1.2 云上架构对运维的要求

image.png

  • 随着IT架构不断演进,系统架构变得越来越复杂,企业云上运维和传统IT运维的差异明显,运维人员也面临着诸多的挑战。
  • 在企业内部开发和运维往往是两个独立的部门,在工作和技术方向上存在明显的差异这就造成了在共同完成,个应用项目的时候沟通不顺畅,进而导致应用进度推迟,企业效率大幅度下降。因此,整个体系架构需要不断演进,从传统运维走向自动化运维将运维工程师、开发工程师、质量保障工程师的壁垒打破,从而形成一套高效的工作体系。

1.3 华为云运维及业务运维全景

image.png

  • 支撑用户聚焦业务层运维,减少用户在平台日常维护上消耗精力,由华为负责平台运维,为客户提供稳定可靠的云平台
  • Console是面向云资源用户的,用于日常管理资源及发放资源的一个可视化入口。
  • CES/AOM/APM为用户提供立体化监控平台,可以全面了解云上资源使用情况、业务的运行状况,并及时收到异常告警做出反应,保证业务顺畅运行。
  • 用户可以通过使用Console(控制台)、CES/AOM/APM(云监控服务)等工具组合完成租户业务支撑活动。

1.4 企业云化应用多样性灵活性带来的挑战

image.png

  • 随着微服务的普及,应用间关联关系越来越复杂,单纯通过维护人员进行管理已经越来越不现实。需要借助专业的软件工具,对应用间调用等场景进行全方面的监控,可视化地还原业务的执行轨迹和状态,协助性能及故障快速定位等。
  • 应用上云后,微服务依赖关系能否可视化、最终用户体验如何、问题如何快速追踪散落的日志无法关联分析?如何解决或改善此类问题?华为云包含多种运维服务,帮助运维人员简化运维流程、提高运维效率。

1.5 云应用立体运维解决方案全景

image.png

  • 华为云推出云应用立体运维解决方案,融合了华为云的应用运维管理服务AOM、应用性能管理服务APM等服务,对基础设施层、应用层、业务层实时多维度监控,并通过应用与资源告警关联、日志分析、智能闯值、分布式调用追踪、手机APP异常分析等技术,实现分钟级问题快速诊断和修复,保障应用长稳运行,
    • 针对海量资源监控场景: AOM提供实时监控应用及云资源,采集各项指标、日志及事件等数据分析应用健康状态,提供告警及数据可视化功能
    • 针对海量日志管理场景:LTS提供日志收集、实时查询、存储等功能,帮助用户轻松应对日志实时采集:5查询分析等日常运营、运维场景
    • 针对性能问题定位场景:APM提供专业的分布式应用性能分析能力,帮助运维人员快速解决分布式架构下的问题定位和性能瓶颈等难题。

2.开源运维工具

2.1 Prometheus介绍

image.png

  • Prometheus是一款开源的监控工具,它启发于Google的borgmon监控系统,由工作在SoundCloud的Google前员工在2012年创建,作为社区开源项目进行开发,并于2015年正式发布。2016年,Prometheus正式加入Cloud Native ComputingEoundation,成为受欢迎度仅次于Kubernetes的项目。
  • 监控作为可观察性实践(监控、日志、追踪》中的关键一环,相较以往的系统监控在云原生时代产生了诸多变化。一是微服务和容器化,导致监控对象和指标的指数级增加;二是监控对象的生命周期更加短暂,导致监控数据量和复杂度的成倍增加。
  • 这就需要一款统一监控指标和数据查询语言的工具,Prometheus应运而生了Pemetheus可以很方便的与众多开源项目集成,帮助我们了解系统和服务的运行状态另一方面分析其收集的大数据,可以帮助我们进行系统优化和作出决策。它不仅是可以应用在IT领域,对于任何需要收集指标数据的情形下都可以使用。
  • PromQL是Prometheus针对这种带标签的时序数据开发的查询语句。它与针对关系数据库的查询语句SQL是完全不同的。
  • Prometheus可以理解为一个时间序列数据库。当然,它不仅仅是一个时间序列数据库。它涵盖了可以绑定的整个生态系统工具集及其功能。
  • Prometheus主要用于对基础设施的监控,包括服务器( CPU、MEM等)、数据库(MySQL、PostgreSQL等)、Web服务等,几乎所有东西都可以通过Prometheus进行监控。而它的数据,则是通过配置,建立与数据源的联系来获取的。

2.2 Prometheus架构图

image.png

  • Prometheus专为可靠性而设计,可让用户快速诊断问题。每个Prometheus服务器都是独立的,不依赖于网络存储或其他远程服务。
  • 基本实现原理是从exporter拉取数据,或者间接地通过网关qatewav拉取数据(如果在k8s内部署,可以使用服务发现的方式),它默认本地存储抓取的所有数据,并通过一定规则进行清理和整理数据,9并把得到的结果存储到新的时间序列中,采集到的数据有两个去向,一个是报警,另一个是可视化。
  • Prometheus组件使用逻辑:
    • Prometheus server 定期从静态配置的target或者服务发现的target拉取数据
    • 当新拉取的数据大于配置内存缓存区的时候,Prometheus会将数据持久化到磁盘(如果使用Remote storage将持久化到云端 )
    • Prometheus可定时查询数据,当条件触发的时候,会将alert推送到配置的Alertmanager。
    • Alertmanager收到警告的时,可以根据配置聚合、去重、降噪,最后发送警告。
    • 可以使用API、Prometheus Console或者Grafana查询和聚合数据
  • Prometheus有两种数据采集方式,pull主动拉取和push被动推送
    • pull: 指的是客户端先安装各类已有的exporters并以守护进程的模式运行Explorter采集数据并且可以对http请求作出响应,返回metrics数据Prometheus通过pull的方式(HTTP GET)去访问每个节点上的exporter并返回hw35802903需要的数据。
    • push:指的是客户端(或服务端)安装官方的pushgateway插件,将监控数据组织成metrics的形式发送给pushgateway,而后pushgateway再推送给prometheus,这里需要注意的是pushgateway只是一个中间转发的媒介

2.3 Grafana介绍

image.png

  • 主要有以下六大特点:
    • 展示方式:快速灵活的客户端图表,具备丰富的仪表盘插件,比如热图、折线图、图表等多种展示方式。
    • 数据源:支持多种数据源,如:Graphite/InfluxDB/OpenTSDB/Prometheus/Elasticsearch等。
    • 通知提醒: 根据不同指标定义不同的告警规则,计算是否触发告警并发送通知
    • 混合展示:在同一图表中混合使用不同的数据源,可以基于每个查询指定数据源,甚至自定义数据源。
    • 注释:使用来自不同数据源的丰富事件注释图表,将鼠标悬停在事件上会显示完整的事件元数据和标记。
    • 过滤器: Ad-hoc过滤器允许动态创建新的键/值过滤器,这些过滤器会自动应用于使用该数据源的所有查询。
  • TSDB是针对时间戳或时间序列数据进行优化的数据库,专门为处理带有时间戳的度量和事件或度量而构建的。时间序列数据可以是随时间跟踪、监视、下采样和聚合的度量或事件,如服务器指标、应用程序性能、网络数据及许多其他类型的分析数据.
  • Grafana主要组件介绍:
    • filebeat: 采集ftds数据
    • metricbeat: 采集系统资源数据
    • logstash: 日志清洗,
    • influxdb: 分布式时序数据库
    • grafana: 数据展示。

2.4 Prometheus+Grafana

image.png

  • Fluentd_exporter日志收集、处理转发
  • Node_exporter 主机数据采集。

2.5 开源运维解决方案架构

image.png

  • 通过Prometheus实现对Kubernetes集群监控,可以支持:
    • 节点: cpu、load、fdisk、memory等指标。
    • 内部组件的状态:比如kube-scheduler、kube-controller-manager、kubedns/coredns等组件的运行状态
    • 应用: 比如Deployment的状态、资源请求、调度和API延迟等数据指标。

3.华为云运维服务

3.1 云监控服务 CES

image.png

  • 云监控服务主要具有以下功能:
    • 云资源自动监控: 云监控服务不需要开通,在创建弹性云服务器等资源后监控服务会自动启动,可以直接到云监控服务查看该资源运行状态并设置告警规则
    • 主机监控: 通过在弹性云服务或裸金属服务器中安装云监控服务Agent插件用户可以实时采集ECS或BMS分钟级粒度的监控数据。
    • 灵活配置告警规则: 对监控指标设置告警规则时,支持对多个云服务资源同时添加告警规则。告警规则创建完成后,可随时修改告警规则,支持对告警规则进行启用、停止、删除等灵活操作。
    • 实时通知: 通过在告警规则中开启消息通知服务,当云服务的状态变化触发告警规则设置的闯值时?系统通过短信、邮件通知或发送消息至服务器地址等多种方式实时通知用户,让用户能够实时掌握云资源运行状态变化。
    • 监控面板:为用户提供在一个监控面板跨服务、跨维度查看监控数据,将用户关注的重点服务监控指标集中呈现,既能满足用户总览云服务的运行概况,又能满足排查故障时查看监控详情的需求。
    • 监控数据OBS转储: 兴监控服务各监控指标的原始数据的保留周期为两天,超过保留周期后原始数据将不再保存。用户可以将原始数据同步保存至OBS。
    • 资源分组: 资源分组支持用户从业务角度集中管理其业务涉及到的弹性云服务器、云硬盘、弹性IP、带宽、数据库等资源。从而按业务来管理不同类型的资源、告警规则、告警历史,可以迅速提升运维效率。
    • 站点监控: 站点监控用于模拟真实用户对远端服务器的访问,从而探测远端服务器的可用性、连通性等问题。
    • 事件监控: 事件监控提供了事件类型数据上报、查询和告警的功能。方便将业务中的各类重要事件收集到云监控服务,并在事件发生时进行告警。

3.1.1 CES监控解决方案

image.png

  • 主机监控分为基础监控、操作系统监控和进程监控
  • 基础监控: ECS自动上报的监控指标,数据采集频率为5分钟1次。可以监控CPU使用率等指标,详见支持监控的服务列表。
  • 操作系统监控: 通过在弹性云服务器或裸金属服务器中安装Agent插件,为用户提供服务器的系统级、主动式、细颗粒度监控服务。数据采集频率为1分钟1次。除了CPU使用率等指标外,还可以支持内存使用率(Linux)等指标,详见支持监控的服务列表。
  • 进程监控: 针对主机内活跃进程进行的监控,默认采集活跃进程消耗的CPU、内存以及打开的文件数量等信息。

3.1.2 主机监控

image.png

  • 主机监控功能介绍:
    • 多种监控指标安装Agent后,云监控服务会提供CPU、内存、磁盘、网络等四十余种监控指标,满足服务器的基本监控运维需求
    • 细颗粒度监控安装Agent插件后,Agent相关监控指标为1分钟上报1次。
    • 进程监控采集当前活跃进程占用的CPU、内存和打开文件数,让用户了解弹性云服务器或裸金属服务器的资源使用情况。
  • 基础监控: ECS自动上报的监控指标,数据采集频率为5分钟1次,可以监控CPU使用率等指标。
  • 操作系统监控: 通过在弹性云服务器或裸金属服务器中安装Agent插件,为用户提供服务器的系统级、主动式、细颗粒度监控服务。数据采集频率为1分钟1次。除了CPU使用率等指标外,还可以支持内存使用率(Linux)等指标。
  • 进程监控: 针对主机内活跃进程进行的监控,默认采集活跃进程消耗的CPU、内存以及打开的文件数量等信息。

3.1.3 事件监控

image.png

  • 自定义事件监控与自定义监控的区别:
    • 自定义事件监控用于解决非连续的事件类型监控数据上报、查询与告警的场景
    • 自定义监控用于解决周期性、连续采集的监控数据上报、查询与告警的场景

3.1.4 告警功能

image.png

  • 支持对云监控服务的所有监控项创建告警规则
  • 支持对全部资源、资源分组、日志监控、自定义监控、事件监控、站点监控创建告警规则。
  • 支持设置告警规则生效时间,自定义告警规则生效的时间段。
  • 支持邮箱、短信、HTTP、HTTPS等告警通知方式
  • 支持基于告警规则的服务调用,比如监控到某类告警时,触发其他云服务(如Functiongraph )执行。

3.1.5 监控面板

image.png

  • 司时监控面板支持在一个监控项内对不同服务、不同维度的数据进行对比查看,帮助用户实现不同云服务间性能数据对比查看的需求。在添加监控视图之前,需要先创建监控面板。

3.1.6 案例:xx电商平台监控

image.png

  • 电商业务内存要求高、数据量大并且数据访问量大、要求快速的数据交换和处理,监控要求极其高。
  • ECS为核心服务,全面、立体的ECS监控系统对业务稳定起到了至关重要的作用。主机监控功能可提供服务器的系统级、主动式、细颗粒度监控服务。为业务的顺畅运行保驾护航。
  • 网站为电商平台的入口,双12、618等大型购物节,会导致不同网络用户访问电商网站出现网页打开慢、网络延时高等问题。站点监控可对网站或ECS的弹性IP等进行持续拨测,监控业务入口的可用性及响应时间。
  • 针对电商平台使用的RDS、ELB、VPC等服务,可以使用云服务监控,在云服务监控页面实时查看云服务运行状态、各个指标的使用情况并对监控指标设置告警规则,精确掌握云服务的运行情况。
  • 电商业务主要涉及华为云ECS、CDN、AS、安全服务、RDS、ELB、OBS等服务。通过资源分组功能从业务视角查看资源使用情况、告警情况、健康情况、管理告警规则可以极大的降低运维复杂度,提高运维效率。

3.2 云审计服务 CTS

image.png
日志审计模块是信息安全审计功能的核心必备组件,是企事业单位信息系统安全风险,管控的重要组成部分
云审计服务通过对接华为云上的其他服务,记录用户的云服务资源的操作信息,实现用户操作云服务资源动作和结果的实时记录功能,并将记录内容以事件文件形式实时保存至OBS桶中。
云审计服务的功能主要包括
记录审计日志:支持记录用户通过管理控制台或API接口发起的操作,以及各服0务内部自触发的操作。
审计日志查询:支持在管理控制台对7天内操作记录按照事件类型、事件来源.
资源类型、筛选类型、操作用户和事件级别等多个维度进行组合查询。
审计日志转储:支持将审计日志周期性的转储至对象存储服务 (ObiectStorage Service,简称OBS )下的OBS桶,转储时会按照服务维度压缩审计日志为事件文件。
事件文件加密:支持在转储过程中使用数据加密服务( Data EncryptionWorkshop,简称DEW)中的密钥对事件文件进行加密。

3.2.1 云审计服务功能介绍

image.png

  • 事件文件:事件文件是系统自动生成的事件集,云审计服务将按照服务、转储周期两个维度,生成多个事件文件,同步保存至用户指定的OBS桶中。通常情况下,单个服务在单个转储周期内产生的所有事件仅会压缩生成一个事件文件,但在事件数量较多时,系统会根据当前负载情况调整每个事件文件包含的事件数。事件文件的格式头json

3.2.2 云审计服务-追踪器

image.png

  • 管理事件追踪器用于记录管理事件,即针对所有云资源的操作日志,例如创建、登录、删除等。
  • 数据事件追踪器用于记录数据事件,即针对数据的操作日志,例如上传、下载等.
  • 云审计服务仅保存近7天的事件,可以对追踪器增加OBS转储的相关配置,将事件同步、长期保存至OBS桶

3.2.3 云审计服务适用场景

image.png

  • 合规审计:
    • 审计方面的合规认证内容通常分为两部分:云服务商所负责的客户业务系统平台与资源的合规以及客户负责的自身业务系统的合规。
  • 关键操作通知:
    • 客户可配置面向己方独立审计系统的http/https通知,将CTS收到的审计日志即时同步到客户自有的审计系统,独立审计。
    • 客户可在FunctionGraph中,选择某类型的审计日志作为触发器(如文件上传),触发预设的工作流(如转换文件格式),从而简化业务开展、运维或规避问题和风险。
  • 数据价值挖掘:
    • 审计日志中包含时间、操作人、操作设备ip、被操作资源、操作详情等各类信息,目前最多包括24个字段,具有挖掘价值。
  • 问题定位分析:
    • 云审计服务提供的检索维度包括事件类型、事件来源、资源类型、筛选类型、操作用户和事件级别等,且在审计日志中,包含本次操作的请求和响应的详情信息,是定位云上问题最快捷、最有效的定位手段之一。

3.3 云日志服务LTS

image.png

  • 实时采集日志:云日志服务提供实时日志采集功能,采集到的日志数据可以在云日志控制台以简单有序的方式展示、方便快捷的方式进行查询,并且可以长期存储。
  • 日志查询与实时分析:对采集的日志数据,可以通过关键字查询、模糊查询等方式简单快速地进行查询,适用于日志实时数据分析、安全诊断与分析、运营与客服系统等例如云服务的访问量、点击量等,通过日志数据分析,可以输出详细的运营数据。
  • 日志监控与告警: 云日志服务结合应用运维管理(Application OperationsManagement,简称AOM),支持对存储在云日志服务中的日志数据进行关键词统计,通过在一定时间段内日志中关键字出现次数,实时监控服务运行状态。
  • 日志转储:主机和云服务的日志数据上报至云日志服务后,默认存储时间为7天,可以在1-30天之间进行设置。超出存储时间的日志数据将会被自动删除,对于需要长期存储的日志数据(日志持久化 ),云日志服务提供转储功能,可以将日志转储至对象存储服务( OBS )、数据接入服务 (DIS )中长期保存。
  • 在LTS中实时分析日志数据,SOL语句查询分析出的日志结果可由多种图表表示,并能将多张统计图表同步保存到仪表盘中。

3.3.1 云日志基本概念和操作

image.png

  • 日志组的创建类型分为用户创建(主动)和云服务创建(被动),云服务创建指华为云其他云服务与云日志服务进行系统对接后,系统将自动在云日志服务控制台创建日志组和日志流,云服务的运行日志将发送到对应的日志流中。
  • 日志读写以日志流为单位,可以在写入时指定日志流,将不同类型的日志分类存储Agent采集日志后,将多条日志数据进行打包,以日志流为单位发往云日志服务,日志流的读写方式可以最大限度地减少读取与写入次数,提高业务效率。例如,用户可以将不同的日志(操作日志、访问日志等)写入不同的日志流,查询日志时可以进入对应的日志流快速查看日志。
  • 如果在使用其他云服务时已经安装了ICAgent,不再需要重复安装ICAgent,请跳过该步骤。安装ICAgent前,请确保本地浏览器的时间、时区与主机的时间、时区一致。在云日志服务管理控制台,主机管理页面可以进行ICAgent的安装。ICAgent安装完成后,需要将主机待采集日志的路径配置到日志流中,ICAgent将多条日志进行打包,以日志流为单位发往云日志服务。
  • 日志结构化是以日志流为单位,通过不同的日志提取方式将日志流中的日志进行结构化,提取出有固定格式或者相似程度较高的日志,过滤掉不相关的日志,以便对结构化后的日志按照SQL语法进行查询与分析。

3.3.2 日志采集与分析

image.png

  • 对采集的日志数据,可以通过关键字查询、模糊查询等方式简单快速地进行查询,适用于日志实时数据分析、安全诊断与分析、运营与客服系统等,例如云服务的访问量点击量等,通过日志数据分析,可以输出详细的运营数据

3.3.3 日志转储与可视化报表

image.png

  • 日志转储:
    • LTS转储至OBS仅支持转储至同一Region的OBS中
    • 在配置OBS转储过程中,若OBS桶已被加密,则无法对桶中写入数据,需先取消加密后,再进行后续操作。

3.3.4 LTS服务适用场景

image.png

  • 日志采集与分析
    • 主机和云服务的日志数据,不方便查阅并且会定期清空,云日志服务采集日志后,日志数据可以在云日志控制台以简单有序的方式展示、方便快捷的方式进行查询,并且可以长期存储。对采集的日志数据,可以通过关键字查询、模糊查询等方式简单快速地进行查询,适用于日志实时数据分析、安全诊断与分析运营与客服系统等29例如云服务的访问量、点击量等,9通过日志数据分析,可以输出详细的运营数据。
  • 合理优化业务性能:
    • 网站服务 (数据库、网络等,的性能和服务质量是衡量用户满意度的关键指标03通过用户的拥塞记录日志发现站点的性能瓶颈,以提示站点管理者改进网站缓存策略、网络传输策略等,合理优化业务性能。
  • 快速定位网络故障:
    • 网络质量是业务稳定的基石,将日志上报至云日志服务,确保问题发生时能及0时查看、定位问题,助力用户快速定位网络故障w3进行网络回溯取证。例如:快速定位问题根源的云服务器,如带宽过度使用的云服务器。通过分析访问日志,判断业务是否遭到了攻击、非法盗链和不良请求等,及时定位并解决问题。

3.4 应用运维管理服务AOM

image.png

  • 随着容器技术的普及,越来越多的企业通过微服务框架开发应用5业务实现更多使用云上服务,运维也转向云上的运维服务。对于云上应用的运维也提出了新的挑战。
  • 运维人员技能要求高,配置繁杂,同时需要维护多套系统。对于分布式追踪系统,学习和使用成本高,并且稳定性差。
  • 云化场景下的分布式应用问题分析困难主要表现在如何可视化微服务间的依赖关系如何提高应用性能体验、如何将散落的日志进行关联分析、如何快速追踪问题。
  • AOM优势:
    • 海量日志管理:高性能搜索和业务分析,自动将关联的日志聚类,可按应用主机、文件名称、实例等维度快速过滤
    • 关联分析:应用和资源层层自动关联,通过应用、组件、实例、主机和事务等多视角分析关联指标和告警数据,直击异常。
    • 生态开放:开放了运营、运维数据查询接口和采集标准,支持自主开发

3.4.1 AOM服务架构

image.png

  • 数据采集接入层:
    • ICAgent采集数据:给主机安装ICAgent( 插件式的数据采集器)并通过ICAgent上报相关的运维数据
    • API接入数据: 通过AOM提供的OpenAPI接口或者Exporter接口,将业务指标作0为自定义指标,接入到AOM。
  • 传输存储层:
    • 数据传输:AOM Access是用来接收运维数据的代理服务,运维数据接收上来之后,会将数据投放到Kafka队列中,利用Kafka高吞吐的能力,实时将数据传输给业务计算层。
    • 数据存储:运维数据经过AOM后端服务的处理,将数据写入到数据库中,其中Cassandra用来存储时序的指标数据,Redis用来查询缓存,ETCD用来存储AOM的配置数据,ElasticSearch用来存储资源、日志、告警和事件。
  • 业务计算层:
    • AOM提供告警、日志、监控、指标等基础运维服务,同时也提供异常检测与分析等AI服务。

3.4.2 应用资源管理

image.png

  • 随着云计算的发展,上云已经成为了常态,然而如何管理成千坐方、种类繁多、诸多云厂商的资源成为企业面临的难题。应用资源管理(简称CMDB )是基于DevOps理念打造的面向应用全生命周期的资源管理平台,是现代自动化运维的基石服务,统集中管理华为云同时覆盖不同云厂商的一切资源对象与应用之间的关系。
  • CMDB功能列表:
    • 资源检索: 提供应用、主机等资源的检索功能,支持通过ID、关键字、名称等方式快速检索资源
    • 应用管理:管理云服务对象与应用之间的关系,主要用于管理ECS、CCE和RDS等云服务的应用。
    • 资源管理:资源管理对用户所有的各类云服务进行统一管理。可全局查看所有的云服务资源对象与应用的关联关系,包括未绑定应用的云资源,便于用户对资源进行分析和管理。
    • 环境标签:根据实际的使用场景,为已创建的应用环境添加标签,便于用户快速过滤和查找相同属性的应用环境。
  • 变更管理服务 (Change Management Service,简称CMS)作为AOM的自动化运维平台,提供批量脚本执行、文件分发、云服务变更等原子操作功能,支持自定义编排原子操作并组装成作业和标准化运维流程。

3.4.3 应用监控

image.png

  • 应用监控是逐层下钻设计,层次关系为:应用列表->应用详情->组件详情->实例详情->容器详情->进程详情。即在应用监控中,将应用、组件、实例、容器、进程做了层层关联,在界面上就可以直接得知各层关系。

3.4.4 日志管理

image.png

3.4.5 告警管理

image.png

  • 告警列表是告警和事件的管理平台,支持自定义通知动作,即可通过邮件、短信等方式获得告警信息,可在第一时间发现异常及其根因。告警管理使用前提条件:已在主机安装ICAgent。
  • 通过仪表盘可将不同图表展示到同一个屏幕上,通过不同的仪表形式来展示资源数据例如,曲线图、数字图2T6pN图表等,进而全面、深入地掌握监控数据.
  • 日志检索功能可快速在海量日志中查询到所需的日志,日志转储实现长期存储,通过创建日志统计规则实现关键词周期性统计,并生成指标数据,实时了解系统性能及业务等信息,通过配置分词可将日志内容按照分词符切分为多个单词,在日志搜索时可使用切分后的单词进行搜索。

3.4.5 案例:适用AOM进行日常巡检和问题定位image.png

3.5 应用性能管理服务APM

image.png

  • 在云时代,分布式微服务架构下应用日益丰富,用户数量爆发式增长,纷杂的应用异常问题接踵而来。传统运维模式下,多套运维系统上的各项指标无法关联分析,运维人员需要根据运维经验逐一排查应用异常,分析定位问题效率低,维护成本高且稳定性差。
  • 海量业务下应用运维面临以下两个方面的挑战:
    • 大型分布式应用关系错综复杂,分析定位应用问题困难,应用运维面临如何保障应用正常、快速完成问题定位、迅速找到性能瓶颈的挑战。
    • 应用体验差导致用户流失,运维人员不能实时感知并追踪体验差的业务,未能及时诊断应用异常,严重影响用户体验
  • 华为云应用性能管理服务APM可帮助运维人员快速发现应用的性能瓶颈,以及故障根源的快速定位,为用户体验保驾护航。

3.5.1 APM服务架构

image.png

  • 数据采集: APM可以通过非侵入方式采集Java探针、Istio网格等提供的应用数据、基础资源数据、用户体验数据等多项指标。
  • 应用拓扑主要分两种:
    • 单组件拓扑:是单个组件下的单个环境的拓扑,同时可以展开直接或间接上下游的组件的拓扑关系。
    • 全局应用拓扑:可以查看这个应用下面全部或者部分组件的全局拓扑关系

3.5.2 APM探针

image.png

  • APM探针在类装载时通过介入应用代码为分布式事务和性能信息注入必要的跟踪代码。
  • APM中的事务指的是http事务,用户在华为商城购买-一台手机,用户的电脑会向华为商城服务后端发起一次http请求,该过程发生的http请求就是一个http事务,由于http请求的url地址有唯一性,我们把url地址作为事务的名称;当部署探针(pinpoint的服务(iava类型应用 )接收到一条http事务后,APM系统就会将该事务的信息抓取并呈现在APM管理面

3.5.3 应用/资源关联分析

image.png

  • 全链路拓扑:
    • 可视化拓扑:APM通过拓扑可视化展示应用间调用关系和依赖关系。拓扑使用应用性能指标对应用性能满意度进行量化,并使用不同颜色对不同区间的值进行标识,快速发现应用性能问题,并进行定位。如图1所示,拓扑清晰地展示应用间关系、调用数据(服务、实例指标)、健康状况等详细内容。
    • 跨应用调用: 拓扑图支持在不同应用服务间的调用关系,对于不同应用之间有服务调用时,可实现跨应用调用关系的采集并展示应用的性能数据。
    • 异常SOL分析:拓扑图可以统计并展示数据库或soL语句的关键指标。APM提供数据库、SOL语句的调用次数、响应时间、错误次数等关键指标视图,通过这些指标视图,可以分析异常(慢或调用出错)SOL语句导致的数据库性能问题。
    • JVM指标监控:拓扑图可以统计并展示实例的JVM指标数据。APM实时监控JVM运行环境的内存和线程指标,快速发现内存泄漏、线程异常等问题。
  • 调用链追踪: APM能够针对应用的调用情况,对调用进行全方面的监控,可视化地还原业务的执行轨迹和状态,协助性能及故障快速定界。
    • 在查询后的调用链列表中,单击待查看的调用链的链接,查看该调用链基本信息
    • 调用链详情页面可以查看调用链的完整链路信息,包含本地方法堆栈和相关远程调用的调用关系。
  • 事务分析:APM通过对服务端业务流实时分析,展示事务的吞吐率、错误率、时延等关键指标,使用健康指标Apdex对应用打分,直观体现用户对应用的满意度。当事务异常,则上报告警,对于用户体验差的事务,通过拓扑和调用链完成事务问题定位。

3.5.4 事务会话监控

image.png

  • 实时跟踪每条业务交易,快速分析交易的运行状态并提供诊断能力
    • 自定义事务:用户可根据每条URL定义事务名称,方便理解健康
    • 规则配置:可以对每条事务配置健康规则,如超过阉值则提示异常
    • 性能追踪:精确采集异常性能数据,可对比历史基线数据,也能找到应用的异常方法,提升运维效率。

3.5.5 精准定位故障

image.png

  • 应用发现与依赖关系:非侵入采集应用KPI数据,并通过服务间接口自动生成依赖关系。
  • 应用KPI汇聚: 非侵入采集应用KPI数据,并通过服务间接口自动生成依赖关系。微服务实例汇聚到应用(数字表示XX个实例),KPI数据自动汇聚到应用。

3.5.6 案例:AOM+APM解决方案(AOM监控,APM定位)

image.png

3.6 云性能测试服务CPTS

image.png

3.6.1 CPTS服务功能特点

image.png

  • 多协议高并发性能测试:
    • 标准HTTP/HTTPS/TCP/CDP报文内容快捷自定义,简单调整即可给不同的被测试应用发送压测流量。可以根据被测试应用的实际需求,对HTTP/HTTPS/TCP/UDP协议报文的任何字段内容进行自定义,包括HTTPGET\POST方法、URL、Header、Bodv等字段的设置和编辑。
    • 虚拟用户的行为定义,适配不同测试场景。通过思考时间对同一个用户的请求设置发送间隔或者在一个事务中定义多个请求报文来设置每个用户每秒内发起的请求数。
    • 自定义响应结果校验,更准确的请求成功标准。针对每个用户的请求,支持用户配置检查点,在获取到响应报文后针对响应码及头域内容做结果检验,只有条件匹配后才认为是正常响应
  • 测试任务模型自定义,支持复杂场景测试:
    • 通过多种事务元素与测试任务阶段的灵活组合,可以帮助用户测试在多操作场0景并发场景下的应用性能表现
    • 事务可以被多个测试任务复用,针对每个事务可以定义多个测试阶段,并对每个阶段分别定义持续时间和并发用户数或者压测次数,模拟流量波峰波谷的复杂场景。
  • 云性能测试服务包括两部分费用:“所使用资源(弹性云服务器小的费用和使用云性能测试服务的费用。云性能测试服务支持套餐包和按需付费。

3.6.2 一站式云化性能测试

image.png

  • 百万级高并发引擎,全链路瓶颈分析能力支撑测试周期由周级降低至小时级

3.6.3 应用场景:业务高峰测试

image.png

思考题

image.png
image.png

完结撒花

猜你喜欢

转载自blog.csdn.net/GoNewWay/article/details/131528217