了解微服务应用程序如何在 Kubernetes 上工作对于软件开发非常重要。 在本文中,我们将讨论为什么观察 Kubernetes 上的微服务应用程序至关重要,以及作为可观察性策略的一部分应重点关注的几个指标。
为什么要观察 Kubernetes 上运行的微服务运行状况以及应监控哪些 Kubernetes 指标?
考虑一个大型电子商务平台,该平台利用部署在 Kubernetes 集群上的微服务架构。 每个微服务负责库存管理、订单处理和付款处理等特定功能,独立运行并通过 API 与其他服务进行通信,这对您的业务/服务增长至关重要。
在这样一个 复杂的环境,确保无缝运行并主动检测问题变得势在必行,并且可能具有挑战性。
此场景中的可观察性可以帮助实时洞察这些微服务和 Kubernetes 应用程序的性能、可用性和相互依赖性。
可观察性之所以重要有几个原因:
- 及早发现问题:微服务是分布式和互连的,这使得在问题出现时识别问题变得困难。 观察它们的健康状况可以让您及早发现问题,最大限度地减少停机时间和潜在的服务中断。 使用 Instana,您将获得 1 秒的粒度,这有助于您比其他解决方案更快地发现问题。
- 可靠性: 监控微服务运行状况可确保您的应用程序保持可靠。 通过跟踪响应时间、错误率和资源利用率等指标,您可以在任何性能问题影响用户之前主动解决它们。
- 高效扩展:Kubernetes 允许根据需求动态扩展微服务。 观察他们的健康状况有助于您就何时以及如何扩展服务做出明智的决策,以确保最佳性能和资源利用率。
- 满足 SLA:许多组织都有服务级别协议 (SLA),用于定义预期的服务可用性和性能级别。 观察微服务运行状况可确保您的服务平稳运行并满足性能目标,从而帮助您满足这些 SLA。
通过监控 Kubernetes 运行状况,组织可以主动识别和解决问题、优化资源使用并保持最佳集群性能。 这些是可以衡量的关键指标:
集群可用性:
监控 Kubernetes 集群可用性指标有助于确保集群正常运行且健康。 集群正常运行时间和 Pod 状态等指标可以深入了解集群的整体运行状况。 它们位于最高和最重要的层,可以提供对环境中发生的情况的完整可见性。
Pod 指标:
监控 Pod 运行状况指标(例如 Pod 重新启动、Pod 准备情况和 Pod 驱逐)有助于识别各个 Pod 的问题,并确保应用程序平稳运行。 监控 Pod 运行状况使组织能够快速检测和解决问题,最大限度地减少停机时间并确保高可用性。
服务可用性:
监控服务可用性指标(例如服务正常运行时间、服务响应时间和服务错误率)有助于确保 Kubernetes 服务可用并对用户做出响应。 通过监控服务可用性,组织可以检测服务故障或降级,并采取主动措施恢复服务可用性并最大程度地减少对用户的影响。
节点健康状况:
这是一个在 Kubernetes 集群指标上下文中显示节点状态的指标。 其他一些重要指标包括:
- kube_node_status_capacity:该指标表示节点上不同资源的可用容量,帮助您确定有多少资源可用。
- kubelet_running_container_count:它告诉您当前在节点上运行的容器数量。
- kubelet_runtime_operations_latency_microseconds:该指标测量每个操作完成所需的时间,按类型分类,以微秒为单位。
通过数字可观察性
IBM Instana 可以监控在 Kubernetes 上运行的微服务应用程序。
IBM Instana 是一个完全自动化的实时可观测平台,可将性能数据置于上下文中。 它允许您以 1 秒的粒度检测微服务应用程序中的问题或事务。 此外,您还可以获得 100% 的跟踪,使您可以轻松修复在 Kubernetes 上运行微服务时出现的问题。
开始观察 Kubernetes 的资源
如果您想拥有全面的可见性并更主动地解决问题,请考虑 Instana 的新自托管标准版是专为所有级别的 Kubernetes 使用而设计的综合解决方案。 无论您是初学者还是高级 Kubernetes 用户,Instana 标准版监控都能满足您的需求。 你可以 立即注册免费帐户并开始监控您的 kubernetes 集群 或查看下面的分步指南。
本文是否有帮助?
是的不