编辑– 这篇文章是10 篇系列文章的一部分:
您还可以下载完整的博客作为免费的电子书 -将 Kubernetes 从测试带到生产。
采用微服务可以加速数字体验,但微服务架构也可能使这些体验变得更加脆弱。 当您的开发人员正在快速推出新应用程序时,您的架构可能会使您面临更高的停机、安全漏洞风险,并且会在低效的故障排除或修复可预防的问题上浪费时间。 在我们关于生产级 Kubernetes 系列的第二篇博客中,我们研究了提供流量可见性的组件如何降低复杂性并提高微服务环境中的安全性。
首先,让我们看几个定义:
在StackRox 2020 年的一项调查中,75% 的 Kubernetes 用户认为可视性是一项“必备”功能。 我们同意可见性是 Kubernetes 的关键,因为了解部署了什么尤其困难。 然而,F5 2021 年application战略状况(SOAS) 的 95% 受访者表示,尽管他们拥有大量数据,但他们缺乏保护和发展基础设施和业务所需的应用性能、安全性和可用性方面的洞察。 那么为什么洞察力很重要以及如何获得洞察力?
凭借洞察力,您可以:
为了获得洞察力,您需要两种类型的可见性数据:实时数据和历史数据。 实时数据能让你诊断出当前问题的根源,而历史数据则能让你了解什么是“正常”、什么是异常。 结合起来,这两种类型的可见性源可以为应用程序和 Kubernetes 性能提供重要的见解。
与其他技术投资一样,您也需要制定一个如何获取收益的策略。 伦敦大学亚非学院的报告还指出,人们未能获得有价值的见解,原因是与招聘和员工发展、战略和流程相关的组织因素,以及对数据用途、何时使用和由谁使用的共识。 这些发现包括:
这篇文章的其余部分将重点讨论洞察力的技术方面。 请关注有关策略、流程和其他主题的未来博客。
我们知道大多数 Kubernetes 部署已经在使用监控工具,不需要再添加另一个。 因此,我们已经对NGINX Plus API进行了改进,以便轻松导出指标,并提供与OpenTracing 、 Grafana 和 Prometheus等流行工具的集成,这样您就可以全面了解集群内部的性能。 您可以通过深度跟踪获得有关应用程序性能和可用性的有针对性的见解,以便了解如何在微服务应用程序中处理请求。
洞察入口出口(南北)流量
NGINX Ingress Controller提供对进入和退出 Kubernetes 集群的流量的洞察。
您是否知道有三种基于 NGINX 的流行 Ingress 控制器? 并非所有微服务都已准备好投入生产,错误的选择可能会使您的微服务策略变得更加复杂,而不是得到改善。 我们的博客文章《等一下,我正在使用哪个用于 Kubernetes 的 NGINX Ingress 控制器?》提供了选项的比较,以便您可以根据自己的需求做出最佳决策。
请继续阅读,了解我们如何帮助解决两个常见问题:
如果您已准备好了解该技术的实际应用,请观看此现场直播演示以及与 NGINX 和 Grafana 专家的 AMA。 您将看到他们演示如何实时监控关键的负载平衡和性能指标、将指标导出到 Prometheus,以及创建 Grafana 仪表板以查看累积性能。
您是否怀疑遭受了 DDoS 攻击? 用户是否报告您的网站有错误? 你只有弄清楚问题究竟出在哪里,才能开始解决问题。
使用 NGINX Ingress Controller 进行实时监控
借助 NGINX Plus,由NGINX Plus API提供支持的实时活动监控仪表板可显示数百个关键负载和性能指标。 获取精确到单个 pod 级别的细粒度细节,以便您可以快速轻松地测量应用程序的响应时间并诊断问题的根源。 如果您的 Kubernetes 环境扩大,您将自动获得每个附加 NGINX Ingress Controller 实例的仪表板。
举例来说, HTTP 上游选项卡上的两列可让您即时读取应用和基础设施的状态:
遇到 HTTP 错误了吗?503
和40x
错误表示你的资源有问题,而502
意味着配置更改不起作用。 使用历史数据来诊断可能耗尽资源的地方。
Prometheus 指标
NGINX Ingress Controller 最受欢迎的功能之一是其不断扩展的Prometheus 指标列表,其中包括网络性能和 Ingress 控制器流量指标。 使用 NGINX Plus,NGINX Ingress Controller可以导出有关连接、缓存、由共享内存区域中的数据的 NGINX 工作器组处理的 HTTP 和 TCP/UDP 流量、由后端服务器组处理的 HTTP 和 TCP/UDP 流量等的指标。
NGINX Service Mesh部署了一个 Prometheus 服务器,该服务器使用NGINX Plus API从 NGINX Service Mesh sidecar 和 NGINX Ingress Controller pod 中抓取指标。 如果您更喜欢使用现有的 Prometheus 部署,我们还提供可添加到您的 Prometheus 配置文件中的抓取配置。
已投入生产的 NGINX Ingress Controller(基于 NGINX Plus)可享受30 天免费试用,其中包括NGINX App Protect ,可保护您的容器化应用程序。 永久免费的 NGINX Service Mesh 可在f5.com下载。
“这篇博文可能引用了不再可用和/或不再支持的产品。 有关 F5 NGINX 产品和解决方案的最新信息,请探索我们的NGINX 产品系列。 NGINX 现在是 F5 的一部分。 所有之前的 NGINX.com 链接都将重定向至 F5.com 上的类似 NGINX 内容。”