您当前的位置:首页 > 电脑百科 > 程序开发 > 框架

在 KubeSphere 中开启高度自动化的微服务可观测性

时间:2022-08-29 15:02:55  来源:  作者:云杉网络

Kube.NETes 为开发者们带来了巨大的微服务部署便利,但同时也将可观测性建设的重要性提升到了前所未有的程度:大量微服务之间错综复杂的调用关系难以梳理,应用性能瓶颈链路难以排查,应用异常难以定位。从现在开始,使用 KubeSphere 的所有用户可以从其应用商店中快速部署 DeepFlow,为微服务应用轻松开启高度自动化全栈全链路可观测性。

01|什么是 KubeSphere

KubeSphere 是在 Kubernetes 之上构建的面向云原生应用的分布式操作系统,完全开源,支持多云与多集群管理,提供全栈的 IT 自动化运维能力,简化企业的 DevOps 工作流。它的架构可以非常方便地使第三方应用与云原生生态组件进行即插即用 (plug-and-play) 的集成。

作为全栈的多租户容器平台,KubeSphere 提供了运维友好的向导式操作界面,帮助企业快速构建一个强大和功能丰富的容器云平台。KubeSphere 为用户提供构建企业级 Kubernetes 环境所需的多项功能,例如多云与多集群管理、Kubernetes 资源管理、DevOps、应用生命周期管理、微服务治理(服务网格)、日志查询与收集、服务与网络、多租户管理、监控告警、事件与审计查询、存储管理、访问权限控制、GPU 支持、网络策略、镜像仓库管理以及安全管理等。

Github 地址:

https://github.com/kubesphere

02|为什么选择 DeepFlow

目前,社区已经拥有了非常丰富的 Metrics、Tracing、Logging 解决方案,比如著名的 Prometheus、Telegraf、SkyWalking、OpenTelemetry、Fluentd、Loki 等。随着 eBPF 技术的发展和 linux 内核 4.X 版本的普及,可观测性迎来了更加自动化、更加零侵扰的玩法。在经过一番调研后,KubeSphere 选择将 DeepFlow 作为利用 eBPF 能力建设可观测性的开源解决方案,并将其集成到KubeSphere 应用商店中。现在,KubeSphere 用户可使用应用模板,轻松将 DeepFlow 一键部署至 Kubernetes 环境中。

03|轻松部署 DeepFlow

你可以在 KubeSphere 应用商店中找到 DeepFlow,选择它并依次点击安装 > 下一步 > 安装,即可完成 DeepFlow 的部署。

 

点击部署完成的应用,获取资源状态中的 deepflow-grafana 服务 NodePort,通过 http://${K8S_NODE_IP}:${NodePort} 即可访问 DeepFlow 的 Grafana:

 

04|快速体验 DeepFlow

Metrics

部署 DeepFlow 以后,无需做任何操作,访问 Grafana 即可查看所有微服务应用的 RED(Request/Error/Delay)黄金指标,以及所有微服务之间的全景调用关系

 

在DeepFlow Online Demo快速体验:

https://deepflow.yunshan.net/docs/zh/auto-metrics/Application-metrics

结合 DeepFlow 的全栈数据采集能力和 AutoTagging 统一标签注入能力,也可快速判断两个微服务之间的瓶颈路径和原因:

 

Tracing

DeepFlow 基于 eBPF 的 AutoTracing 能力(适用于 Linux Kernel 4.14+)可直接呈现微服务之间的分布式追踪火焰图,快速定位容器及 Service Mesh 场景下的应用性能瓶颈。下图是 Istio Bookinfo Demo 的零插码分布式追踪火焰图:

 

在DeepFlow Online Demo快速体验:

https://deepflow.yunshan.net/docs/zh/auto-tracing/istio-bookinfo-demo/

DeepFlow 也支持广泛的数据集成能力,能够自动集成 Prometheus、Telegraf 的指标数据和 OpenTelemetry、SkyWalking 的追踪数据。其中对于 OpenTelemetry 和 SkyWalking 数据的集成可展现无盲点的分布式追踪能力,将应用、系统、网络 Span 展现在一个火焰图中。下图是一个 Spring Boot Demo 的无盲点分布式追踪火焰图:

 

在DeepFlow Online Demo快速体验:

https://deepflow.yunshan.net/docs/zh/agent-integration/tracing/opentelemetry/

Logging

依靠应用协议解析能力,DeepFlow 支持自动采集 HTTP 1/2/S、Dubbo、MySQLredis、Kafka、MQTT、DNS 等应用的调用日志,以及与之对应的 TCP/UDP 网络流日志:

 

在DeepFlow Online Demo快速体验:

https://deepflow.yunshan.net/docs/zh/auto-metrics/request-log

05|什么是 DeepFlow

DeepFlow 是一款开源的高度自动化的可观测性平台,是为云原生应用开发者建设可观测性能力而量身打造的全栈、全链路、高性能数据引擎。DeepFlow 使用 eBPF、WASM、OpenTelemetry 等新技术,创新的实现了 AutoTracing、AutoMetrics、AutoTagging、SmartEncoding 等核心机制,帮助开发者提升埋点插码的自动化水平,降低可观测性平台的运维复杂度。利用 DeepFlow 的可编程能力和开放接口,开发者可以快速将其融入到自己的可观测性技术栈中。

GitHub 地址:

https://github.com/deepflowys/deepflow



Tags:KubeSphere   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
在 KubeSphere 中开启高度自动化的微服务可观测性
Kubernetes 为开发者们带来了巨大的微服务部署便利,但同时也将可观测性建设的重要性提升到了前所未有的程度:大量微服务之间错综复杂的调用关系难以梳理,应用性能瓶颈链路难以...【详细内容】
2022-08-29  Search: KubeSphere  点击:(354)  评论:(0)  加入收藏
Nginx转发K8S、kubesphere的Ingress的WebSocket 请求时的不同配置
upstream websocket {#ip_hash;server ivcp-api.ttt.com;}#For WebSocket define serverserver {listen 9999;server_name localhost;location / {proxy_pass http://ivcp-a...【详细内容】
2022-03-18  Search: KubeSphere  点击:(802)  评论:(0)  加入收藏
CentOS7下离线安装KubeSphere3.0集群
CentOS7下离线安装KubeSphere3.0集群KubeSphere简单介绍KubeSphere 是在 Kubernetes 之上构建的以应用为中心的多租户容器平台,提供全栈的 IT 自动化运维的能力,简化企业的 De...【详细内容】
2021-03-01  Search: KubeSphere  点击:(1071)  评论:(0)  加入收藏
▌简易百科推荐
Qt与Flutter:在跨平台UI框架中哪个更受欢迎?
在跨平台UI框架领域,Qt和Flutter是两个备受瞩目的选择。它们各自具有独特的优势,也各自有着广泛的应用场景。本文将对Qt和Flutter进行详细的比较,以探讨在跨平台UI框架中哪个更...【详细内容】
2024-04-12  刘长伟    Tags:UI框架   点击:(1)  评论:(0)  加入收藏
Web Components实践:如何搭建一个框架无关的AI组件库
一、让人又爱又恨的Web ComponentsWeb Components是一种用于构建可重用的Web元素的技术。它允许开发者创建自定义的HTML元素,这些元素可以在不同的Web应用程序中重复使用,并且...【详细内容】
2024-04-03  京东云开发者    Tags:Web Components   点击:(8)  评论:(0)  加入收藏
Kubernetes 集群 CPU 使用率只有 13% :这下大家该知道如何省钱了
作者 | THE STACK译者 | 刘雅梦策划 | Tina根据 CAST AI 对 4000 个 Kubernetes 集群的分析,Kubernetes 集群通常只使用 13% 的 CPU 和平均 20% 的内存,这表明存在严重的过度...【详细内容】
2024-03-08  InfoQ    Tags:Kubernetes   点击:(17)  评论:(0)  加入收藏
Spring Security:保障应用安全的利器
SpringSecurity作为一个功能强大的安全框架,为Java应用程序提供了全面的安全保障,包括认证、授权、防护和集成等方面。本文将介绍SpringSecurity在这些方面的特性和优势,以及它...【详细内容】
2024-02-27  风舞凋零叶    Tags:Spring Security   点击:(54)  评论:(0)  加入收藏
五大跨平台桌面应用开发框架:Electron、Tauri、Flutter等
一、什么是跨平台桌面应用开发框架跨平台桌面应用开发框架是一种工具或框架,它允许开发者使用一种统一的代码库或语言来创建能够在多个操作系统上运行的桌面应用程序。传统上...【详细内容】
2024-02-26  贝格前端工场    Tags:框架   点击:(47)  评论:(0)  加入收藏
Spring Security权限控制框架使用指南
在常用的后台管理系统中,通常都会有访问权限控制的需求,用于限制不同人员对于接口的访问能力,如果用户不具备指定的权限,则不能访问某些接口。本文将用 waynboot-mall 项目举例...【详细内容】
2024-02-19  程序员wayn  微信公众号  Tags:Spring   点击:(39)  评论:(0)  加入收藏
开发者的Kubernetes懒人指南
你可以将本文作为开发者快速了解 Kubernetes 的指南。从基础知识到更高级的主题,如 Helm Chart,以及所有这些如何影响你作为开发者。译自Kubernetes for Lazy Developers。作...【详细内容】
2024-02-01  云云众生s  微信公众号  Tags:Kubernetes   点击:(51)  评论:(0)  加入收藏
链世界:一种简单而有效的人类行为Agent模型强化学习框架
强化学习是一种机器学习的方法,它通过让智能体(Agent)与环境交互,从而学习如何选择最优的行动来最大化累积的奖励。强化学习在许多领域都有广泛的应用,例如游戏、机器人、自动驾...【详细内容】
2024-01-30  大噬元兽  微信公众号  Tags:框架   点击:(68)  评论:(0)  加入收藏
Spring实现Kafka重试Topic,真的太香了
概述Kafka的强大功能之一是每个分区都有一个Consumer的偏移值。该偏移值是消费者将读取的下一条消息的值。可以自动或手动增加该值。如果我们由于错误而无法处理消息并想重...【详细内容】
2024-01-26  HELLO程序员  微信公众号  Tags:Spring   点击:(88)  评论:(0)  加入收藏
SpringBoot如何实现缓存预热?
缓存预热是指在 Spring Boot 项目启动时,预先将数据加载到缓存系统(如 Redis)中的一种机制。那么问题来了,在 Spring Boot 项目启动之后,在什么时候?在哪里可以将数据加载到缓存系...【详细内容】
2024-01-19   Java中文社群  微信公众号  Tags:SpringBoot   点击:(86)  评论:(0)  加入收藏
站内最新
站内热门
站内头条