云应用监控指南
原文: https://victorops.com/blog/cl...
翻译: 祝坤荣
DevOps和It团队已习惯于常年对内部服务器,网络和应用进行监控和报警处理。而同样的,由于基于云服务的使用率的增长,现在理解团队怎样对于云基础设施和应用的监控也变得同样重要。事实上,据估计2020年83%的企业计算会在云上。
在DevOps世界里,是没有一个监控你云应用或服务的单一解决方案的。但是,还是有很多可以用的技术和工具。所以,如果你对于监控云服务的时间是个新手,或者你就是想学点东西 - 我们写了这个云应用监控指南来帮你。
不同类型的云服务
与内部监控方案一样,有效的云监控就是提高你基础设施的可视能力并通过服务健康检查让问题浮出水面。团队使用更多的第三方云应用来管理他们的负载和维护他们基于AWS,GCP或Azure的服务器。
所以,对于IT和DevOps团队来说不止需要监控内部应用,网络和服务器,也需要关注团队成员使用的第三方应用程序。让我们看下哪些不同类型的云服务可以被监控。
SaaS(软件即服务):提供某种服务给最终用户使用的web应用。例如,GoogleDrive,Dropbox,Salesforce等。
PaaS(平台即服务):SQL数据库,存储,和缓存工具都在这个类目下。
IaaS(基础设施即服务): IaaS是指通过AWS,GCP或Azure提供的基于云上的主机服务。
FaaS(函数即服务): 类似AWS Lambda,Azure Functions,或Google Cloud Functions的Serverless应用
应用托管: 在云环境托管应用的方式。例如Heroku, Amazon EC2, Kubernetes,或Google App Engine都在这里。
云服务的关注点
- 安全:
由于云服务的本质,IT和DevOps团队很担心当安全漏洞出现时缺少控制和可见性。监控,安全和编排/自动化工具可以帮助检测这些漏洞,在他们还没有造成大问题时快速定位。 - 合规:
取决于你的行业或业务,使用云服务可能有合规风险。你得确定你对于平台和服务都很了解,保证合规。
- 高度集成的服务:
云服务是被高度集成的,会依赖其他服务,云或内部的,才能运转正常。你得注意当问题发生时,他们可能会影响你技术栈中大量的其他服务。
- 运维人员:
如果你经常使用云服务,这条可能让你惊讶。但是,许多管理人员担心他们无法为团队配备这些知识来构建和维护可靠的基于云的服务。
有效云监控的最佳实践
- 确定盲点:
深度检查你的技术栈来发现薄弱点或缺乏可视化的痛点。这篇之前的事后复盘可以帮你确定你基础设施的盲点。 - 核心性能指标(KPIs):
一旦你知道你需要监控什么了,现在你可以确定什么样的指标可以用来标识系统监控。使用工具来监控不同等级的服务,并优化KPIs保证当故障出现时可以精确指示出来。对于你KPIs的良好理解可以让你值班时更少的在凌晨2点发出假报警。 - 中心化可视:
中心化所有监控数据可以改善事件检测,响应和团队协作。这样,你可以得到一个对于系统健康的全面视图,可以将故障事件间更简单的关联起来,并可以更简单的将其他团队也引入到问题处理里。 - 成本:
与你的应用性能或系统健康无关,但跟踪你在云服务上的开销很重要。许多服务开销是基于使用情况的,所以很有必要认识到服务为团队提供的价值。 - 终端用户监控:
更好的了解用户是怎么样在你的服务间移动的,以及他们的体验,可以帮你打造一个更简便的产品。拿到关于页面加载次数或服务器响应速度的数据可以帮你发现你平台的痛点,帮你打造更强壮的系统。 - 混沌测试
时刻记得面向故障构建系统。规划故障转移和后备计划的问题。使用工具来测试当停机或出错时系统会出现什么,并重复该过程以便改进它。 - 优化报警:
基于你从以上步骤学到的中心化的数据和知识,调整你的报警阈值并保证报警是可操作的并是相关的。
云监控可用的工具
现在你知道了当监控云服务时需要做什么,你现在需要知道怎么做。所以,我们会介绍一些在使用云服务时常用的监控工具。
Splunk:我们可能有偏爱,Splunk云监控提供你云基础设施的可视性和详细日志分析以及搜索功能。通过监控你技术栈里从应用托管到SaaS的 所有方案,你可以生动描绘出你产品里正在发生的事情。
AppDynamics:作为真正的APM, AppDynamics聚焦于优化你云应用的性能。基于许多产品和服务,AppDynamics可以帮你进行终端用户监控,基础设施可视化,商业智能,与整体服务可靠性监控。
New Relic:动态地, 持续集成云环境, New Relic可以帮你监控应用和基础设施。无论你运行的是一个简单架构或使用的是容器,微服务,serverless函数式,New Rlic可以帮你解决云监控的需求。
Solarwinds:Solarwinds 云给你一个关于你云基础设施,应用和整体数字化情况的中心化大图。识别你系统的缺陷点并可构造一个更好的集成,建壮的使用Solarwinds的基于云的解决方案。
Amazon CloudWatch:当你使用AWS,Amazon CloudWatch 是一个首选解决方案。它是专门为AWS的云化应用打造的监控,你可以使用它监控基础设施,平台和应用。
结论
无论你是私有云,混合云还是全公有云,都需要合适的监控。更好的理解你系统的盲点和薄弱点可以帮你更好的监控你服务的健康度和使用需要的工具。所以,实施事后复盘,规划失败,测试你的监控工具和应用,并持续优化你的流程来帮助你构建的产品增加可见性和可靠性。
本文来自微信公众号「麦芽面包,id「darkjune_think」转载请注明。
交流Email: [email protected]