写点什么

Kuberhealthy:综合测试 Kubernetes 集群

作者:K Jonas

  • 2019-05-17
  • 本文字数:1645 字

    阅读完需:约 5 分钟

Kuberhealthy:综合测试Kubernetes集群

Comcast开发的开源解决方案Kuberhealthy,通过在 Kubernetes 集群中执行综合测试来检测Kubernetes问题。Kuberhealthy 通过 JSON 状态页面和Prometheus指标端点报告测试结果,为 Kuberhealthy 指标提供灵活的告警选项。


通过复制实际 Kubernetes 工作流,Kuberhealthy 尝试识别那些可能会被忽视的生产问题。Kuberhealthy 检测到的潜在问题包括:由于 CNI 通信故障而陷于“Terminating”状态的 pod、由于磁盘配置错误而陷于“ContainerCreating”状态的 pod,或者重启速度过快的 pod。为了识别这类问题,Kuberhealthy 并行运行以下检查:


  • Daemonset 部署和终止:该测试把 daemonset 部署到 Kuberhealthy 命名空间,等待所有 pod 达到“Ready”状态,终止这些 pod,并确保终止成功。

  • 组件健康状态:检查集群组件状态的现状,如果状态停机超过 5 分钟就告警。

  • 过多的 pod 重启:监控一个 pod 在提供的命名空间是否一小时内重启超过 5 次,默认为 kube 系统。

  • Pod 状态:检查那些超过 10 分钟且不处于“Ready”状态的 pod。

  • DNS:检查集群内外的 DNS 故障


计划对未来版本进行其他测试,包括:服务配置、DNS 解析和磁盘配置。


如果任何一个 Kuberhealthy 测试发生了错误或故障,那么,错误细节将在 http://kuberhealthy.kuberhealthy 上报告一个 JSON 状态页。该状态页面包含一个布尔类型的 OK 字段(用于指示 Kuberhealthy 状态),以及一些 JSON 对象(用于表述每次 Kuberhealthy 检查的检查细节),其中包括一个列出所有潜在错误描述的错误数组。有关检查的其他信息(如上次检查的运行时间)也可以在检查细节对象中找到。


 {  "OK": true,  "Errors": [],  "CheckDetails": {    "ComponentStatusChecker": {      "OK": true,      "Errors": [],      "LastRun": "2018-06-21T17:32:16.921733843Z",      "AuthoritativePod": "kuberhealthy-7cf79bdc86-m78qr"    },    "DaemonSetChecker": {      "OK": true,      "Errors": [],      "LastRun": "2018-06-21T17:31:33.845218901Z",      "AuthoritativePod": "kuberhealthy-7cf79bdc86-m78qr"    },    "PodRestartChecker namespace kube-system": {      "OK": true,      "Errors": [],      "LastRun": "2018-06-21T17:31:16.45395092Z",      "AuthoritativePod": "kuberhealthy-7cf79bdc86-m78qr"    },    "PodStatusChecker namespace kube-system": {      "OK": true,      "Errors": [],      "LastRun": "2018-06-21T17:32:16.453911089Z",      "AuthoritativePod": "kuberhealthy-7cf79bdc86-m78qr"    }  },  "CurrentMaster": "kuberhealthy-7cf79bdc86-m78qr"}
复制代码


来自 Kuberhealthy README.md的状态页示例


Kuberhealthy 可以和Helm或 yaml 规范文件一起安装,仅在集群中可用。一旦完成安装,Kuberhealthy 会运行两个实例,其中包括pod中断预算滚动更新策略,以确保高可用性。Kuberhealthy 提供 Prometheus服务监控器配置以和 Prometheus 告警以及安装Grafana控制面板的模板进行集成。


Comcast 开发了 Kuberhealthy 以满足监控其Kubernetes集群健康状况和稳定性的需要,并和现有监控工具(如 Prometheus)进行了集成。通过模拟实际工作负载,Kuberhealthy 给 Comcast 提供了更健壮的 Kubernetes 监控解决方案。


监控 Kubernetes 集群健康状况的其他方法包括:Kubernetes 工具kubelet,它聚合了 pod 资源使用状况统计数据,以及cAdvisor,它负责收集 CPU、内存、文件系统和网络使用情况统计数据。Grafana 提供一个插件以通过 Prometheus 收集和可视化这些指标。除了 Kubernetes 工具之外,kube状态指标添加了对 Kubernetes API 服务器的侦听,收集关于各个对象(如部署、节点和 pod)健康状况的指标。与 Kuberhealthy 类似,这些指标以明文形式报告给指标端点,该指标端点可以与 Prometheus 进行集成。


请遵循安装指南或在Kubernetes Slack的 Kuberhealthy 频道中了解更多信息以开始使用 Kuberhealthy。


阅读英文原文:Kuberhealthy: Synthetic Testing for Kubernetes Clusters


2019-05-17 08:005630
用户头像

发布了 199 篇内容, 共 86.4 次阅读, 收获喜欢 295 次。

关注

评论

发布
暂无评论
发现更多内容

速来体验!基于有道子曰的翻译大模型2.0正式上线

有道技术团队

人工智能

【YashanDB知识库】load data一次导入多个文件的数据时报错

YashanDB

数据库 yashandb

【YashanDB知识库】YCM Monit进程频繁误告警

YashanDB

数据库 yashandb

7分钟玩转 AI 应用,函数计算一键部署 AI 生图大模型

阿里巴巴云原生

阿里云 云原生 函数计算

2025年:人工智能最重要的将会是什么?

高端章鱼哥

一篇解决编译原理大作业,基于Flex、Bison设计编译器(含语法分析树和符号表)

EquatorCoco

Linux 算法

AIP智能体平台:打造高效的超大型文本处理解决方案

大东(AIP内容运营专员)

人工智能

京东广告生成式召回基于 NVIDIA TensorRT-LLM 的推理加速实践

京东科技开发者

【YashanDB知识库】YAS-04115 "SELECT" expected but missing

YashanDB

数据库 yashandb

设计了两个弹性长度数字编码,可以灵活地编解码数字以便高效传输

Drunk

编码 路由协议 DCE

道旅科技借助云消息队列 Kafka 版加速旅游大数据创新发展

阿里巴巴云原生

kafka 阿里云 云原生

基于javaPoet的缓存key优化实践

京东科技开发者

【YashanDB知识库】yasql执行报错

YashanDB

数据库 yashandb

为什么货币政策紧缩但经济持续火爆?

TechubNews

经济形势 货币政策

【YashanDB知识库】lYAS-02143 invalid username/password, login denied

YashanDB

数据库 yashandb

“数据飞轮” 理念焕新,助力 2025 企业数智化发展

字节跳动数据平台

淘宝天猫API接口深度探索:商品详情与关键词搜索商品列表的高效应用与实战代码

代码忍者

淘宝API接口

一款好的低代码开发平台应该是什么样?

伤感汤姆布利柏

如何选择工作机会和offer

老张

面试 求职 职业生涯规划

低代码,帮你解决80%重复开发工作!

秃头小帅oi

Java定时任务大盘点:发工资也能“指日可待”

京东科技开发者

等级保护建设方案,密评资料整理合集(Word原件)

金陵老街

等保 等级保护 密码测评 密评

Vue 路由管理组件-Router

测试人

软件测试

意图框架习惯推荐方案,为用户提供个性化内容分发

HarmonyOS SDK

harmoyos

探索Vue.js:提升前端开发的利器

测试人

软件测试

清华大学AutoDroid-V2,软件测试行业将如何发展

测试人

软件测试

推荐4款基于.NET开源、功能强大的CMS建站系统

不在线第一只蜗牛

开源

我用RPA生成EXE,并使用激活码对EXE进行管理

火语言RPA

完全掌握|豆包MarsCode 编程助手使用技巧

豆包MarsCode

人工智能 AI编程 豆包MarsCode

中药熬制机械加工MES系统

万界星空科技

mes 制造业工厂 机械加工mes 中药加工 中药罐机械加工

Triton-Lang在Transformer优化加速中的实践 | 得物技术

得物技术

人工智能 算法

Kuberhealthy:综合测试Kubernetes集群_软件工程_InfoQ精选文章