推荐开源项目:Kubetail - Kubernetes集群实时日志查看器

推荐开源项目:Kubetail - Kubernetes集群实时日志查看器

kubetail Web-based, real-time log viewer for Kubernetes kubetail 项目地址: https://gitcode.com/gh_mirrors/kub/kubetail

项目介绍

在容器化环境中查看应用程序日志往往是一项挑战。一个应用程序通常由多个服务组成,每个服务又部署在多个容器中,这些容器通过负载均衡以确保资源的均匀消耗。虽然使用kubectl或Kubernetes Dashboard查看单个容器日志相对简单,但要同时监控构成应用程序的所有容器的日志则更为困难。容器的短暂性(不断创建和销毁)进一步加剧了这一难题。

Kubetail应运而生,它提供了一个易于使用的Web界面,允许您实时查看一组Kubernetes工作负载(如Deployment、CronJob、StatefulSet)的所有日志。在底层,Kubetail使用您的集群的Kubernetes API来监控工作负载,并检测新工作负载容器的创建或旧容器的删除。Kubetail会自动将新容器的消息添加到您的查看流中,或更新其UI以反映旧容器将不再产生消息。这使您能够轻松跟踪应用程序日志,因为用户请求会在服务之间的短暂容器中移动。此外,Kubetail还允许您根据节点属性(如可用区、CPU架构或节点ID)过滤日志,帮助您调试特定环境中的应用程序问题。

Kubetail应用程序由一个基于Go的后端服务器和一个基于React的静态网站组成,后端服务器连接到您的Kubernetes API,前端网站查询后端服务器并在浏览器中显示结果。Kubetail通常作为Docker容器部署在您的集群中,使用清单文件或Helm图表,并通过Web浏览器访问,方法与连接到Kubernetes Dashboard相同(例如使用kubectl proxy)。由于Kubetail内部使用您的Kubernetes API请求日志,您的日志消息始终留在您的掌控之中,Kubetail默认为私有。

我们的目标是构建一个强大的云原生日志平台,专为容器化环境设计,这个项目仍在进行中。如果您发现任何问题或有建议,请创建GitHub Issue或发送邮件至hello@kubetail.com!

项目技术分析

Kubetail采用了现代技术栈,确保高效和可扩展性:

  • 后端服务器:基于Go语言,利用Go的高并发特性,确保日志数据的高效处理和传输。
  • 前端界面:使用React框架,提供响应式和用户友好的界面,提升用户体验。
  • Kubernetes API集成:通过Kubernetes API实时监控和获取日志数据,确保数据的准确性和及时性。

项目及技术应用场景

Kubetail适用于以下场景:

  • 实时日志监控:开发和运维人员可以实时查看应用程序日志,快速定位和解决问题。
  • 多容器日志聚合:在一个界面中聚合多个容器的日志,简化日志管理。
  • 环境特定问题调试:通过节点属性过滤日志,帮助识别特定环境中的问题。
  • 云原生应用开发:专为容器化环境设计,适合云原生应用的日志管理。

项目特点

  • 轻量高效:内存占用小于30MB,CPU消耗可忽略不计。
  • 实时查看:实时查看日志消息。
  • 工作负载日志:查看特定工作负载(如Deployment、CronJob、StatefulSet)的日志。
  • 容器生命周期管理:自动检测容器的创建和删除,并更新日志流。
  • 数据私有:使用Kubernetes API,日志消息永不离开您的掌控。
  • 灵活过滤:根据时间或节点属性(如可用区、CPU架构、节点ID)过滤日志。
  • 颜色编码:不同容器的日志行使用颜色编码,便于区分。
  • 简洁界面:提供干净、易用的界面。

安装与访问

安装选项

选项1:使用清单文件
kubectl apply -f https://github.com/kubetail-org/kubetail/releases/latest/download/kubetail-clusterauth.yaml

kubectl apply -f https://github.com/kubetail-org/kubetail/releases/latest/download/kubetail-tokenauth.yaml
选项2:使用Helm图表
helm repo add kubetail https://kubetail-org.github.io/helm-charts/
helm install kubetail kubetail/kubetail --namespace kubetail --create-namespace

访问方式

选项1:使用kubectl proxy
kubectl proxy

访问地址:http://localhost:8001/api/v1/namespaces/kubetail/services/kubetail:4000/proxy/

选项2:使用kubectl port-forward
kubectl port-forward -n kubetail svc/kubetail 4000:4000

访问地址:http://localhost:4000

选项3:使用kubectl auth-proxy
kubectl auth-proxy -n kubetail http://kubetail.svc

系统将自动打开浏览器标签指向Kubetail仪表板。

配置

Kubetail支持通过命令行参数或配置文件进行配置,详细配置选项请参考项目文档。

结语:Kubetail是一个功能强大且易于使用的Kubernetes日志查看工具,适用于开发和运维人员。它的实时监控和灵活过滤功能将大大提升您的日志管理效率。立即尝试Kubetail,简化您的Kubernetes日志管理!🚀

点击访问Kubetail项目

kubetail Web-based, real-time log viewer for Kubernetes kubetail 项目地址: https://gitcode.com/gh_mirrors/kub/kubetail

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

谢璋声Shirley

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值