AI 年度盘点与2025发展趋势展望,50+案例解析亮相AICon 了解详情
写点什么

华为云 AOM 立体运维系列 -- 立体运维架构与定位

  • 2020-04-01
  • 本文字数:2777 字

    阅读完需:约 9 分钟

华为云AOM立体运维系列--立体运维架构与定位

随着越来越多企业应用上云,云上应用的规模与复杂度日趋增长,对云上应用的运维,也提出了新的挑战。华为云 AOM 服务面向大规模企业应用的运维,在实践中演进并构建了一套完整的面向云上应用的立体化运维系统。下面以一个典型的云上应用架构为例,分享华为云 AOM 立体运维的架构与定位。后续会有立体运维系列的文章,讲述各子系统的技术细节及优秀实践,欢迎持续关注。

一、常见云上应用的架构

云上应用早期较多的是购买云服务 I 层资源(多为基础设施如主机等计算资源)自建各种集群,运维人员多以主机监控为中心进行运维,同时自己搭建应用及数据库等监控系统进行应用层和业务层运维。随着容器技术的普及,越来越多的企业转向 CaaS 和 PaaS 来管理应用,通过微服务框架开发,业务的实现也更多的使用云上服务,如分布式中间件,函数服务,AI 服务等,同时运维也转向云上的运维服务。



一个典型的现代云上应用架构:



经过域名解析阶段后,静态资源命中 CDN 后直接返回,无命中时会回源去拉取,动态请求直接访问 WEB 服务,在请求到达四层和七层 ELB 之前,多数企业应用也会选择 WAF 来清洗异常流量。


经过 ELB 后,请求到达业务应用服务器,业务实例多为分布式构架,微服务之间相互调用,一般情况下企业运维人员较多的关注点是应用实例这一层,多为企业自行开发的服务。


持久化层当前各 CSP 提供的中间件不一样,华为云上用户使用较多的如分布式缓存,分布式数据库等。由于提供动态扩容及较高级别的 SLA,越来越多的企业不再需要专业的 DBA,转而使用云上的服务,开发上也更加敏捷。


如此多的云服务和各种资源,任何一个环节出现问题,都将导致应用 KPI 异常,用户体验下降,进而导致企业运营受到影响,而每个使用公有云服务的企业,如果投入大量人力去自建运维系统并且将整个请求的各个环节关联起来,成本会非常高。因此华为云 AOM 在帮助企业对应用运维的过程中,通过实践构建了一套立体运维体系,帮助企业更好的进行一站式运维。下面章节将为您介绍立体运维的定位及架构。

二、立体运维的定位及架构

立体运维定位:


AOM 立体化运维主要是围绕用户应用进行监控,一站式完成用户体验监控,应用性能监控,基础设施监控。


参考以上典型云应用架构,通过将业务请求路径上经过的不同资源进行分层,围绕分层设计不同的专业运维服务子系统,将不同数据在不同子系统上串联协同、关联分析,构筑一个云上的运维平台,从而最大化的实现数据价值,为运维人员提供一个统一的运维中心,达到一站式立体化运维的目的。如下为 AOM 立体运维分层:



华为云 AOM 立体运维分层


构建AOM立体运维,除了要覆盖应用的端到端资源以外,重点还要通过多种运维数据进行数据分析,通过多种可视化手段进行友好的界面展示。因此AOM立体运维体系建设包括以下工作:


资源模型化


其实就是将应用依赖的资源接入 CMDB,但是云上业务的 CMDB 与自建数据中心运维有所区别,后者多对应的是 SRE(网站可靠性工程师)层面的 CMDB,而 AOM 所需要的 CMDB 是面向云资源的量身打造的 CMDB。主要有以下特征:


  • 分离业务模型与存量资源模型(后续文章后详细解读)

  • 存量模型能表述不同的云服务下的不同云资源

  • 支持对云服务内云资源建立映射关系

  • 支持对跨云服务的资源建立映射关系

  • 支持云资源标签管理(打标签,同步标签,按标签查询)

  • 支持历史资源快照

  • 资源模型化这一步是所有数据关联及运维平台化的基础,通过统一的模型将不同资源关联起来后,可以帮助用户快速的找到故障的根因,也能通过关联关系对大量告警进行分析,抑制重复告警等。


数据可视化


良好的可视化界面不但能提高运维人员运维效率,还可以通过直观的展示查看各种资源消耗趋势,帮助企业分析运营走势,预测未来资源使用情况等。AOM 数据可视化遵从以下原则进行设计


  • 建立左右逢源的资源拓扑图

  • 资源拓扑是指一个资源与其他资源的关联关系,如云主机与 ELB 及 VPC,CDN 的关系,通过一个资源拓扑图进行展示。如下



所谓左右逢源是指以一个资源为中心,拓扑图展示其上下各一层的关联资源即可,避免拓扑过大,但又能通过一个资源找到上层或者下层资源。


  • 关联资源下钻

  • 建立拓扑后,通过图上的资源链接,可以跳转到选中的另一个资源的拓扑图中去,而新的拓扑图是以新的资源为中心,如此来达到通过关联资源不断下钻的目标,方便运维人员查找问题。

  • 云资源快速跳转

  • 一个云资源可能涉及到多个云服务,如 ELB 实例,涉及 ELB 服务本身,VPC,CDN,ECS,而各个云服务入口较分散,需要在资源名称增加超链接快速跳转到云服务 console。

  • 视图模板化

  • 各资源监控数据的展示,由 AOM 默认提供模板,但同时要支持用户自定义模板,由于运维人员关注的指标或其他数据侧重点不一样,因此要能通过模板支持同一个资源不同视角的查看方式。

  • 功能向导化

  • 复杂功能需要通过向导快速指导用户进行设置或配置,以减少用户学习文档或者视频的时间成本。


服务平台化


平台化目标要支持用户通过各子系统通过开放 API 实现自动化运维。指标,日志,事件告警等数据要支持用户通过接口订阅,转发到外部系统供用户运维平台进行分析,分析结果通过 API 输入立体运维平台并通过事件驱动平台业务持续分析。


也就是通过数据流,实现平台与用户运维系统的协同,实现流程化自动化。


自动化将会协助用户实现故障自动恢复,如通过数据分析后发现需要扩容,可以通过事件触发或者 API 调用弹性伸缩子系统进行实例扩容。还可以在资源空闲时缩容以节省企业运营成本。


分析智能化


针对指标数据提供动态阈值计算能力,无需用户设置阈值,通过机器学习进行异常检测,对于大型系统的运维可以有效的降低人工配置成本。同时也避免静态阈值设置不合理需要不断调整的重复工作。


针对日志数据,智能提取模板,分析可变参数与静态文本,通过日志关键字监控,实时掌握应用异常情况。


AOM 整体架构:


以下为 AOM 整体的架构,主要分为五个子系统,每个子系统通过多个微服务提供不同功能,整体协同实现立体运维目标。



  • ALM 模块负责事件告警的管理及相关性分析,支持用户配置通知策略以及时将告警发送给运维人员。

  • ALS 模块负责分析日志。

  • INV 模块即 CMDB 模块,实现资源的管理及资源的映射及查询等能力。

  • AMS 模块主要负责指标数据的管理,提供阈值配置能力。

  • DPA 模块主要负责大数据计算及智能化能力,在线和离线分析数据,以事件驱动各子系统运行。


另外架构图中的底座环境,展示了 AOM 运维范围,从基础设施到 PaaS 层应用及容器和 VM 应用,覆盖了应用运行所依赖各层资源。


本文转载自 华为云产品与解决方案 公众号。


原文链接:https://mp.weixin.qq.com/s/ARzbhbsqI6YePpSxamK4Lg


2020-04-01 21:121792

评论

发布
暂无评论
发现更多内容

Dubbo 负载均衡

青年IT男

dubbo

《冰河的渗透实战笔记》电子书,442页,37万字,正式发布!!

冰河

网络安全 信息安全 渗透测试 网络攻防 互联网技术

“读万卷书,行万里路”,让你收获一个不平凡的人生

小天同学

读书 成长 旅行 5月日更

丰田汽车选用Mobileye和采埃孚的安全技术

E科讯

浪潮云向前进一步,又向后让一步

云计算

进程内缓存助你提高并发能力!

万俊峰Kevin

缓存 微服务 本地缓存 Go 语言

论Http、Socket、WebSocket、WebService(SOAP)之间的区别

Damon

5月日更

智能视频云3.0全景图来了!深度融合视频应用共创行业新生态

百度大脑

云智一体 智能视频 云智技术

【LeetCode】找出第 K 大的异或坐标值Java题解

Albert

算法 LeetCode 5月日更

HTTP/3 初体验

运维研习社

nginx 运维 HTTP3.0 5月日更

JavaScript 类型化数组

空城机

JavaScript 大前端 5月日更 类型化数组

Unix/Linux 编程:网络编程之 线程池

赖猫

Linux Linux服务器开发 Linux网络编程

❄️【程序员必看系列】开源项目有盈利模式指南

洛神灬殇

开源 程序员 盈利模式 5月日更

android端音频采集与播放

floer rivor

android 音视频

Flutter开发:Failed to retrieve the Dart SDK…的解决方法

三掌柜

5月日更

霸榜GitHub的阿里内部Spring Boot实战文档到底有多强?

Java 架构 面试 微服务

分布式事务与分布式系统

邱学喆

分布式事务 raft CAP PAXOS 副本一致性

kafka基本概念

杨四正

大数据 kafka 架构设计 消息队列 消息队列架构

Golang List, Ring and Map

escray

学习 极客时间 Go 语言 5月日更

NumPy之:ndarray多维数组操作

程序那些事

Python Numpy 程序那些事

Rust从0到1-错误处理-panic!

rust 错误处理 Error 不可恢复错误

私有云解决方案

anyRTC开发者

音视频 WebRTC RTC sdk

冈萨雷斯《数字图像处理》学习总结及感悟:第一章 绪论 百闻不如一见

老猿Python

图形图像处理 数字图像处理 冈萨雷斯

人人都在谈的图数据库到底是个啥?

华为云开发者联盟

大数据 数据结构 数据 图数据库 华为云图引擎图数据库GES

🚄【Redis 干货领域】从底层彻底吃透 AOF 重写 (源码篇)

洛神灬殇

redis aof Redis 协议 Redis 核心技术与实战 5月日更

让人工智能成为保险行业科技基因的一部分!

百度大脑

人工智能 保险

docker(centos系统)安装vim工具

liuzhen007

Docker 5月日更

成功产品三要素

lenka

5月日更

千万级学生管理系统的<考试试卷>存储方案

唐江

架构实战营

集成学习案例一 (幸福感预测)

容光

数据处理

如何成为云原生技术高阶玩家?华为云最近做了这件事

华为云开发者联盟

容器 DevOps 微服务 云原生 华为云

华为云AOM立体运维系列--立体运维架构与定位_软件工程_华为云产品与解决方案_InfoQ精选文章