您需要监控的 12 个关键 Kubernetes 健康状况

2024-05-31 07:38

本文主要是介绍您需要监控的 12 个关键 Kubernetes 健康状况,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

  • 您需要监控的 12 个关键 Kubernetes 健康状况
    • Crash Loops(崩溃循环)
    • CPU Utilization(CPU 使用率)
    • Disk Pressure(磁盘压力)
    • Memory Pressure(内存压力)
    • PID Pressure(PID压力)
    • Network Unavailable(网络不可用)
    • Job Failures(作业失败)
    • Persistent Volume Failures(持久卷故障)
    • Pod Pending Delays(Pod 等待延迟)
    • Deployment Glitches(部署故障)
    • StatefulSets Not Ready(StatefulSet 未就绪)
    • DaemonSets Not Ready(守护进程未准备好)

您需要监控的 12 个关键 Kubernetes 健康状况

Kubernetes 每天可以生成数百万个新指标。 监控集群健康状况最具挑战性的,其中之一就是筛选哪些指标是重要的,需要收集和关注。

应对这一挑战的最佳方法是首先了解几乎每个 Kubernetes 运营商都应该关注哪些高价值信号。 这也是我们的客户之一,美国职业棒球大联盟,采取的方法。 通过关注他们关心的核心、可操作的问题,最终过滤掉了大约 90% 的 Kubernetes 数据。

在本文中,我将定义您应该监控和创建警报的 12 个关键 Kubernetes 健康状况。 您组织的列表可能略有不同,但在制定组织的 Kubernetes 监控策略时,这 12 个是一个很好的起点。

Crash Loops(崩溃循环)

崩溃循环是指 pod 启动、崩溃,然后不断尝试重新启动但不能正常启动(它在循环中不断崩溃和重新启动)。 这显然很糟糕,因为当发生这种情况时,您的应用程序将无法运行。 这可能是由 pod 中的应用程序崩溃引起的,也可能是由 pod 或部署过程中的错误配置引起的,这使得调试崩溃循环相当棘手。 当崩溃循环发生时,您需要立即知道。这样您才能弄清楚发生了什么以及是否需要采取紧急措施来保持应用程序可用。

CPU Utilization(CPU 使用率)

CPU 利用率就是您的节点正在使用的 CPU 周期数。
进行监控的两个重要原因:
首先,您不想耗尽应用程序的处理资源。 如果您的应用程序受 CPU 限制,则需要增加 CPU 分配或向集群添加更多节点。
其次,你不希望你的 CPU 坐在那里闲置。 如果您的 CPU 使用率一直很低,则您可能过度分配了资源并可能浪费金钱。

Disk Pressure(磁盘压力)

根据您在 Kubernetes 配置中设置的阈值,磁盘压力是指示节点使用过多磁盘空间或使用磁盘空间过快的条件。 这对监控很重要,因为如果您的应用程序合法地需要更多空间,这可能意味着您需要添加更多磁盘空间。 或者这可能意味着应用程序行为异常并以意外的方式过早地填满了磁盘。 无论哪种方式,这是一个需要您注意的情况。

Memory Pressure(内存压力)

内存压力是另一种资源状况,表明您的节点内存不足。 与 CPU 资源分配类似,您不想耗尽内存——但也不想过度分配内存资源并浪费金钱。 您尤其需要注意这种情况,因为这可能意味着您的一个应用程序中存在内存泄漏。

赞助商须知
Circonus 提供了一个 Kubernetes 监控解决方案,让客户能够更好地了解其集群的运行状况和性能。 该解决方案专为 Kubernetes 打造,提供总控制仪表板和警报,使组织能够立即呈现清晰、可操作的见解,从而节省时间、降低成本并最大限度地提高 Kubernetes 部署的价值。 

PID Pressure(PID压力)

PID 压力是一种罕见的情况,即 Pod 或容器产生过多进程并使节点缺乏可用进程 ID。 每个节点都有有限数量的进程 ID 来分配给正在运行的进程; 如果 ID 用完,则无法启动其他进程。 Kubernetes 允许您为 pod 设置 PID 阈值以限制它们执行失控进程生成的能力,而 PID 压力条件意味着一个或多个 pod 正在用完分配的 PID,需要进行检查。

Network Unavailable(网络不可用)

你所有的节点都需要网络连接,这个状态表明节点的网络连接有问题。要么设置不正确(由于路由耗尽或配置错误),要么与硬件的网络连接存在物理问题。

Job Failures(作业失败)

作业旨在在有限的时间内运行 pod,并在它们完成预期功能后将其拆除。如果由于节点崩溃或重新启动,或者由于资源耗尽而导致作业未成功完成,您需要知道该作业失败了。这就是为什么您需要监控作业失败的原因——它们通常并不意味着您的应用程序无法访问,但如果不加以修复,可能会导致未来出现问题。

Persistent Volume Failures(持久卷故障)

持久卷是在集群上指定的存储资源,可用作任何请求它的 Pod 的持久存储。在它们的生命周期中,它们被绑定到一个 Pod,然后在该 Pod 不再需要时回收。如果该回收因任何原因失败,您需要知道您的持久存储有问题。

Pod Pending Delays(Pod 等待延迟)

在 pod 的生命周期中,如果它正在等待在节点上进行调度,则其状态为“pending”。如果它停留在“pending”状态,通常意味着没有足够的资源来安排和部署 pod。您将需要更新 CPU 和内存分配、删除 Pod 或向集群添加更多节点。

Deployment Glitches(部署故障)

部署用于管理无状态应用程序——其中 Pod 是可互换的,不需要能够访问任何特定的单个 Pod,而只需访问特定类型的 Pod。您需要密切关注您的部署以确保它们正确完成。最好的方法是确保观察到的部署数量与所需的部署数量相匹配。如果不匹配,则一个或多个部署失败。

StatefulSets Not Ready(StatefulSet 未就绪)

StatefulSets 用于管理有状态的应用程序,其中 Pod 具有特定的角色,需要访问其他特定的 Pod;而不是像部署那样只需要特定类型的 pod。但是,监控是相同的——您需要确保观察到的 StatefulSet 的数量与所需的 StatefulSet 的数量相匹配。如果不匹配,则一个或多个 StatefulSet 失败。

DaemonSets Not Ready(守护进程未准备好)

DaemonSets 用于管理需要在集群中的所有节点上运行的服务或应用程序。如果您想在每个节点上运行日志收集守护进程或监控服务,您将需要使用 DaemonSet。监控与部署相同:您需要确保观察到的 DaemonSet 数量与所需的 DaemonSet 数量相匹配。如果不匹配,则一个或多个 DaemonSet 失败。

与 Kubernetes 的大多数方面一样,监控 Kubernetes 运行状况可能是一个复杂且具有挑战性的过程。很容易不知所措。通过了解您最需要关注的高价值健康状况,您至少可以开始制定一项策略,使您能够过滤掉集群产生的大量数据噪音,并更有信心解决最重要的问题,以确保良好的体验。

参考文档:
[1]: https://thenewstack.io/12-critical-kubernetes-health-conditions-you-need-to-monitor/

这篇关于您需要监控的 12 个关键 Kubernetes 健康状况的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1017574

相关文章

流媒体平台/视频监控/安防视频汇聚EasyCVR播放暂停后视频画面黑屏是什么原因?

视频智能分析/视频监控/安防监控综合管理系统EasyCVR视频汇聚融合平台,是TSINGSEE青犀视频垂直深耕音视频流媒体技术、AI智能技术领域的杰出成果。该平台以其强大的视频处理、汇聚与融合能力,在构建全栈视频监控系统中展现出了独特的优势。视频监控管理系统EasyCVR平台内置了强大的视频解码、转码、压缩等技术,能够处理多种视频流格式,并以多种格式(RTMP、RTSP、HTTP-FLV、WebS

关于数据埋点,你需要了解这些基本知识

产品汪每天都在和数据打交道,你知道数据来自哪里吗? 移动app端内的用户行为数据大多来自埋点,了解一些埋点知识,能和数据分析师、技术侃大山,参与到前期的数据采集,更重要是让最终的埋点数据能为我所用,否则可怜巴巴等上几个月是常有的事。   埋点类型 根据埋点方式,可以区分为: 手动埋点半自动埋点全自动埋点 秉承“任何事物都有两面性”的道理:自动程度高的,能解决通用统计,便于统一化管理,但个性化定

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

业务中14个需要进行A/B测试的时刻[信息图]

在本指南中,我们将全面了解有关 A/B测试 的所有内容。 我们将介绍不同类型的A/B测试,如何有效地规划和启动测试,如何评估测试是否成功,您应该关注哪些指标,多年来我们发现的常见错误等等。 什么是A/B测试? A/B测试(有时称为“分割测试”)是一种实验类型,其中您创建两种或多种内容变体——如登录页面、电子邮件或广告——并将它们显示给不同的受众群体,以查看哪一种效果最好。 本质上,A/B测

Kubernetes PodSecurityPolicy:PSP能实现的5种主要安全策略

Kubernetes PodSecurityPolicy:PSP能实现的5种主要安全策略 1. 特权模式限制2. 宿主机资源隔离3. 用户和组管理4. 权限提升控制5. SELinux配置 💖The Begin💖点点关注,收藏不迷路💖 Kubernetes的PodSecurityPolicy(PSP)是一个关键的安全特性,它在Pod创建之前实施安全策略,确保P

K8S(Kubernetes)开源的容器编排平台安装步骤详解

K8S(Kubernetes)是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。以下是K8S容器编排平台的安装步骤、使用方式及特点的概述: 安装步骤: 安装Docker:K8S需要基于Docker来运行容器化应用程序。首先要在所有节点上安装Docker引擎。 安装Kubernetes Master:在集群中选择一台主机作为Master节点,安装K8S的控制平面组件,如AP

什么是Kubernetes PodSecurityPolicy?

@TOC 💖The Begin💖点点关注,收藏不迷路💖 1、什么是PodSecurityPolicy? PodSecurityPolicy(PSP)是Kubernetes中的一个安全特性,用于在Pod创建前进行安全策略检查,限制Pod的资源使用、运行权限等,提升集群安全性。 2、为什么需要它? 默认情况下,Kubernetes允许用户自由创建Pod,可能带来安全风险。

容器编排平台Kubernetes简介

目录 什么是K8s 为什么需要K8s 什么是容器(Contianer) K8s能做什么? K8s的架构原理  控制平面(Control plane)         kube-apiserver         etcd         kube-scheduler         kube-controller-manager         cloud-controlle

【Kubernetes】K8s 的安全框架和用户认证

K8s 的安全框架和用户认证 1.Kubernetes 的安全框架1.1 认证:Authentication1.2 鉴权:Authorization1.3 准入控制:Admission Control 2.Kubernetes 的用户认证2.1 Kubernetes 的用户认证方式2.2 配置 Kubernetes 集群使用密码认证 Kubernetes 作为一个分布式的虚拟

kubernetes集群部署Zabbix监控平台

一、zabbix介绍 1.zabbix简介 Zabbix是一个基于Web界面的分布式系统监控的企业级开源软件。可以监视各种系统与设备的参数,保障服务器及设备的安全运营。 2.zabbix特点 (1)安装与配置简单。 (2)可视化web管理界面。 (3)免费开源。 (4)支持中文。 (5)自动发现。 (6)分布式监控。 (7)实时绘图。 3.zabbix的主要功能