Kubernetes(K8S)现在似乎是管理和部署基于微服务和容器的应用程序的事实标准——其中缘由亦不难理解。Kubernetes是最大的开源社区,它由云原生计算基金会(CNCF)支持,它是DevOps友好的,它提供了混合云的优势。有什么理由不爱它?

但在TheNewStack的最近一项调查中,69%的受访者表示,诚然Kubernetes是他们企业容器编排的首选,但部署和管理Kubernetes并非像在公园散步一样轻松惬意。尽管Kubernetes具有很高的灵活性,但仍存在操作工作流程的复杂性——许多涉及应用程序性能管理(APM),真的想要完全体会到Kubernetes承诺的好处,还需要在有效管理上下大功夫。

重新思考你的Kubernetes监控策略

在一个近期的CNCF调查中,38%的受访者表示监控是其企业采用Kubernetes过程中的最大挑战之一。若把受访者划分为部署规模更大的那批企业,这一数字甚至增长到了46%。那么,现代IT领导者该如何简化Kubernetes监控,以提高效率,同时优化性能?

目前的Kubernetes监控方法存在的主要问题,从缺乏端到端的可视性,到迁移容易出错,不一而足。下文中我们将聊聊监控Kubernetes时可能遇到的四个常见挑战——以及如何解决这些挑战的建议。

挑战1:缺乏端到端的可视性

Kubernetes传统监控的最常见问题之一,是缺乏对客户接触点和分布式应用程序的端到端可视性。


因此,IT团队对最终用户体验和应用程序性能如何影响业务KPI没有任何概念和感受,也因此无法知道要修复或改进的内容。


为了解决这个问题,使用基于正常性能的Kubernetes监控解决方案非常重要,并且可以利用机器学习的强大功能,从而在出现问题时智能地向IT团队发出警报。


挑战2:告警风暴

虽然了解所有应用程序的问题似乎是一件好事,但是当多个问题同时出现时,它可能会迅速失控并成为障碍。毕竟,你真的希望每次有工作完成或新容器启动时,都收到一遍提醒吗?

如果没有优先级警报的能力,IT团队通常必须对每个问题的根本原因做出响应和分类,这将直接带来非常糟糕的用户体验甚至是成本损失。

因此使用Kubernetes监控解决方案时最好能要识别和解决确切的潜在问题——深入到代码行、单个设备、Kubernetes服务甚至单个容器级别。

挑战3:故障排查的痛苦

应用程序停机的成本可能会高到令人咋舌——关键的应用程序故障每小时可能损失高达100万美元。时间就是金钱,IT团队在检测问题的根本原因时不应该浪费时间。


问题是,今天的许多监控工具都缺乏在Kubernetes环境中执行自动化根本原因分析的能力,使故障排除成为一个耗时的噩梦,通常会导致高MTTR和长停机时间。


为避免这种情况,请通过比较迁移前后的用户体验,确保您的Kubernetes监控解决方案能够在应用程序依赖性和迁移成功验证两个方面都具有更高的可见性。


挑战4:易出错的迁移过程

将传统应用程序迁移到Kubernetes很容易出错并且非常耗时。那些才将现有单体应用程序迁移到部署在Kubernetes上的微服务的公司,更易缺乏对Kubernetes环境的可见性,因此无法看到每个微服务或传统应用程序的实时交互。

这时可以考虑借助可通过单一管理平台提供一步安装和统一监控的解决方案,让IT团队可以充分利用其现有的技能、流程和工具。

在Kubernetes上提供完美的应用程序性能

越来越多的公司开始使用Kubernetes来改变公司在分布式多云环境中部署和运行应用程序的方式,且这Kubernetes的流行势头丝毫没有显示出放缓的迹象。但对于在Kubernetes上运行传统或基于微服务的应用程序的组织来说,监控的挑战依然显而易见。

因此,组织必须认真考虑Kubernetes监控方法的方方面面,以简化复杂的企业工作流程,提高成本效率并提高生产力。通过对整个Kubernetes堆栈和Kubernetes协调应用程序的端到端统一可视性,IT团队可以提供完美的应用程序体验——并确保他们的Kubernetes投资能够带来更好的业务成果。