顶级工具 | Popeye帮你发现k8s集群潜在问题
2022/1/10 13:03:23
本文主要是介绍顶级工具 | Popeye帮你发现k8s集群潜在问题,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Popeye 是一种实用程序,可扫描实时 Kubernetes 集群并报告已部署资源和配置的潜在问题。它根据部署的内容为您的集群消毒。通过扫描您的集群,它可以检测错误配置并帮助您确保最佳实践到位,从而防止未来出现问题。它旨在减少在运行 Kubernetes 集群时面临的认知过载。此外,如果您的集群使用metric-server,它会报告潜在的资源分配过多/不足,并在您的集群容量不足时尝试警告您。
Popeye 是一个只读工具,它不会以任何方式改变您的任何 Kubernetes 资源!Popeye 会扫描您的集群以寻找最佳实践和潜在问题。目前,Popeye 只查看节点、命名空间、pod 和服务。消毒器的目的是发现错误配置,即端口不匹配、无效或未使用的资源、指标利用率、探针、容器映像、RBAC 规则、裸露资源等。
安装
Popeye 适合 Kubernetes 1.13+,您可以将 Popeye 容器化并作为一次性或 CronJob 直接在您的 Kubernetes 集群中运行。它可在 Linux、MacOS 和 Windows 平台上使用。
下面在linux演示Popeye的使用:
wget https://github.com/derailed/popeye/releases/download/v0.9.8/popeye_Linux_x86_64.tar.gztar -zxf popeye_Linux_x86_64.tar.gz tar -zxf popeye_Linux_x86_64.tar.gz
检查版本:
# ./popeye version ___ ___ _____ _____ K .-'-. | _ \___| _ \ __\ \ / / __| 8 __| `\ | _/ _ \ _/ _| \ V /| _| s `-,-`--._ `\ |_| \___/_| |___| |_| |___| [] .->' a `|-' Biffs`em and Buffs`em! `=/ (__/_ / \_, ` _) `----; | Version: 0.9.8 Commit: 6db27f04407b337f6743faf4f382a61991aa5f31 Date: 2021-11-02T21:26:28Z Logs:
执行扫描,默认扫描所有namespace:
# ./popeye # .... STATEFULSETS (5 SCANNED) 💥 2 😱 3 🔊 0 ✅ 0 0٪ ┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅ · default/dubbo-monitor..........................................................................💥 😱 [POP-500] Zero scale detected. 🐳 dubbo-monitor 💥 [POP-100] Untagged docker image in use. 😱 [POP-106] No resources requests/limits defined. · default/mongodb................................................................................😱 🐳 mongodb 😱 [POP-106] No resources requests/limits defined. · default/redis..................................................................................💥 🐳 init-redis 💥 [POP-100] Untagged docker image in use. 😱 [POP-106] No resources requests/limits defined. 🐳 redis 😱 [POP-106] No resources requests/limits defined. · default/redis-test.............................................................................😱 😱 [POP-500] Zero scale detected. 🐳 redis 😱 [POP-106] No resources requests/limits defined. · default/zookeeper-one..........................................................................😱 🐳 zookeeper-one 😱 [POP-106] No resources requests/limits defined. SUMMARY ┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅ Your cluster score: 74 -- C
可以看到当前集群平分为74:C
图示:
可以用-n参数指定namespace。
输出格式默认输出到控制台,也可以输出json、html、yaml等格式,可以将输出内容push到第三方服务,S3桶。
输出html格式到文件:
./popeye --out html --save --output-file log.html /tmp/popeye/log.html
在浏览器中打开:
了解Popeye更多信息,请移步:
https://github.com/derailed/popeye
作者简洁
作者:小碗汤,一位热爱、认真写作的小伙,专注于写go语言、docker、kubernetes、java等开发、运维知识等提升硬实力的文章,期待你的关注。转载说明:务必注明来源
这篇关于顶级工具 | Popeye帮你发现k8s集群潜在问题的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-15在Kubernetes (k8s) 中搭建三台 Nginx 服务器怎么实现?-icode9专业技术文章分享
- 2024-11-05基于Kubernetes的自定义AWS云平台搭建指南
- 2024-11-05基于Kubernetes Gateway API的现代流量管理方案
- 2024-11-05在Kubernetes上部署你的第一个应用:Nginx服务器
- 2024-11-05利用拓扑感知路由控制Kubernetes中的流量
- 2024-11-05Kubernetes中的层次命名空间:更灵活的资源管理方案
- 2024-11-055分钟上手 Kubernetes:精简实用的 Kubectl 命令速查宝典!
- 2024-10-30K8s 容器的定向调度与亲和性
- 2024-10-28云原生周刊:K8s未来三大发展方向 丨2024.10.28
- 2024-10-25亚马逊弹性Kubernetes服务(EKS)实战:轻松搭建Kubernetes平台