2.2.1通过Golang+eBPF实现无侵入应用可观测通过Golang + eBPF实现无侵入应用可观测 张海彬 阿里云 应用可观测技术专家 目 录 eBPF简介 01 eBPF在云原生场景下的应用 02 微服务可观测的挑战 03 Golang + eBPF实现数据采集 04 构建完整的应用可观测系统 05 eBPF简介 第一部分 eBPF简介 01. eBPF简介 eBPF = extended Berkeley Packet OOM,文件读取错误… 无法自顶向下端到端 串联导致棘手问题频 发。 Kubernetes下的可观测 Golang + eBPF实现数据采 集 第四部分 eBPF在可观测领域的优势 无侵入 多语言/多协议/多框架 全栈覆盖 无侵入性 • 无需修改代码 • 无需重启应用 • Verifier保证运行安全 多协议、多框架、多语言 • 捕获网络字节流 • 无需适配编程语言 • 应用监控eBPF版 • eBPF Agent性能提升20% • Otel Collector 性能提升80% • 无需要修改任何业务代码,一键接入eBPF监控 • 语言无关、框架无关、协议无关 无侵入的应用可观测 eBPF是一种在Linux内核运行的沙盒程序,无需修改 任何应用代码,提供无侵入的应用无关、语言无关、 框架无关的应用可观测能力,提供如网络、虚拟内存、 系统调用等Otel无法获取的数据指标。0 码力 | 29 页 | 3.83 MB | 1 年前3
古月《ROS入门21讲》11.订阅者Subscriber的编程实现.pdf11.订阅者Subscriber的编程实现 主 讲 人 : 古 月 话题模型 创建订阅者代码(C++) • • • • pose_subscriber.cpp 配置订阅者代码编译规则 • • CMakeLists.txt 编译并运行订阅者 创建订阅者代码(Python) pose_subscriber.py • • • • 感谢观看 怕什么真理无穷,进一寸有一寸的欢喜0 码力 | 7 页 | 1.00 MB | 1 年前3
古月《ROS入门21讲》14.服务端Server的编程实现.pdf14.服务端Server的编程实现 主 讲 人 : 古 月 服务模型 创建服务器代码(C++) • • • • turtle_command_server.cpp 配置服务器代码编译规则 • • CMakeLists.txt 编译并运行服务器 创建服务器代码(Python) turtle_command_server.py • • • • 感谢观看 怕什么真理无穷,进一寸有一寸的欢喜0 码力 | 7 页 | 1.10 MB | 1 年前3
古月《ROS入门21讲》13.客户端Client的编程实现.pdf13.客户端Client的编程实现 主 讲 人 : 古 月 话题模型 创建功能包 创建客户端代码(C++) • • • • turtle_spawn.cpp 配置客户端代码编译规则 • • CMakeLists.txt 编译并运行客户端 创建客户端代码(Python) turtle_spawn.py • • • • 感谢观看 怕什么真理无穷,进一寸有一寸的欢喜0 码力 | 8 页 | 1.01 MB | 1 年前3
古月《ROS入门21讲》10.发布者Publisher的编程实现.pdf10.发布者Publisher的编程实现 主 讲 人 : 古 月 话题模型 创建功能包 创建发布者代码(C++) • • • • velocity_publisher.cpp 配置发布者代码编译规则 • • CMakeLists.txt 编译并运行发布者 创建发布者代码(Python) • • • • velocity_publisher.py 感谢观看0 码力 | 8 页 | 1.12 MB | 1 年前3
古月《ROS入门21讲》18.tf坐标系广播与监听的编程实现.pdftf坐标系广播与监听的编程实现 主 讲 人 : 古 月 创建功能包 创建tf广播器代码(C++) • • • turtle_tf_broadcaster.cpp 创建tf监听器代码(C++) • • turtle_tf_listener.cpp 配置tf广播器与监听器代码编译规则 • • CMakeLists.txt 编译并运行 创建tf广播器与监听器代码(Python)0 码力 | 8 页 | 1.19 MB | 1 年前3
openEuler 23.09 技术白皮书日,发布 openEuler 21.03 内核创新版,该版本将内核升级到 5.10, 还在内核方向实现内核热升级、 内存分级扩展等多个创新特性,加速提升多核性能,构筑千核运算能力。 2021 年 9 月 30 日,全新 openEuler 21.09 创新版如期而至,这是欧拉全新发布后的第一个社区版本,实现了全场景 支持。增强服务器和云计算的特性,发布面向云原生的业务混部 CPU 调度算法、容器化操作系统 月 30 日,发布 openEuler 22.09 创新版本,持续补齐全场景的支持。 2022 年 12 月 30 日,发布 openEuler 22.03 LTS SP1 版本,打造最佳迁移工具实现业务无感迁移,性能持续领先。 2023 年 3 月 30 日,发布 openEuler 23.03 内核创新版本,采用 Linux Kernel 6.1 内核,为未来 openEuler 长生命周 也是一个技术孵化器。通过每半年发布一次的创新版,快速集成 openEuler 以及其他社区的最新技术成果, 将社区验证成熟的特性逐步回合到发行版中。这些新特性以单个开源项目的方式存在于社区,方便开发者获得源代码,也 方便其他开源社区使用。 社区中的最新技术成果持续合入发行版,发行版通过用户反馈反哺技术,激发社区创新活力,从而不断孵化新技术。 发行版平台和技术孵化器互相促进、互相推动、牵引版本持续演进。0 码力 | 52 页 | 5.25 MB | 1 年前3
openEuler 21.09 技术白皮书日,发布 openEuler 21.03 内核创新版,该版本将内核升级到 5.10, 还在内核方向实现内核热升级、 内存分级扩展等多个创新特性,加速提升多核性能,构筑千核运算能力。 2021年 9 月 30 日,全新openEuler 21.09创新版如期而至,这是欧拉全新发布后的第一个社区版本,实现了全场景支持。 增强服务器和云计算的特性,发布面向云原生的业务混部 CPU 调度算法、容器化操作系统 也是一个技术孵化器。通过每半年发布一次的创新版,快速集成 openEuler 以及其他社区的最新技术成果, 将社区验证成熟的特性逐步回合到发行版中。这些新特性以单个开源项目的方式存在于社区,方便开发者获得源代码,也方便 其他开源社区使用。 社区中的最新技术成果持续合入发行版,发行版通过用户反馈反哺技术,激发社区创新活力,从而不断孵化新技术。 发行版平台和技术孵化器互相促进、互相推动、牵引版本持续演进。 社区共建,不断增强场景化能力,最终实现统一 操作系统支持多设备,应用一次开发覆盖全场景。 openEuler 对 Linux Kernel 的持续贡献 openEuler 内核研发团队持续贡献 Linux Kernel 上游社区,回馈主要集中在:芯片架构、ACPI、内存管理、文件系统、 Media、内核文档、针对整个内核质量加固的 bug fix 及代码重构等内容。十余年来总计向社区贡献0 码力 | 35 页 | 3.72 MB | 1 年前3
openEuler 21.03 技术白皮书也是一个技术孵化器。通过每半年发布一次的创新版,快速集成 openEuler 以及其他社区的最新技术成果, 将社区验证成熟的特性逐步回合到发行版中。这些新特性以单个开源项目的方式存在于社区,方便开发者获得源代码,也方 便其他开源社区使用。 社区中的最新技术成果持续合入发行版,发行版通过用户反馈反哺技术,激发社区创新活力,从而不断孵化新技术。发 行版平台和技术孵化器互相促进、互相推动、牵引版本持续演进。 的主要贡献团队,对于内核的贡献主要集中在:ARM64 架构、ACPI、内存管理、文件系统、 Media、内核文档、针对整个内核质量加固的 bug fix 及代码重构的内容。十余年来总计向社区贡献 13000+ 补丁。 在 Linux Kernel 5.10 版本中,华为的代码贡献量排名全球第一。坚持内核创新,持续贡献上游社区。 openEuler 开放透明的开源软件供应链管理 开源操作系统的构建过程,也是供 从用户场景出发,回溯梳理相应的软件依赖关系,理清所有软件包的上游社区地址,源码和上游对应验证。完成 构建验证、分发、实现生命周期管理。开源软件的构建、运行依赖关系,上游社区,三者之前形成闭环且完整透明的软件供 应链管理。 Intel Linaro Red Hat AMD Google Huawei LINUX KERNEL厂商代码贡献 2500 2000 1500 1000 500 0 4.20 5.0 50 码力 | 18 页 | 1.30 MB | 1 年前3
Linux就该这么学 第2版服务管理远程主机,使用 Apache 服务部署静态网站,使用 vsftpd 服务传输文件,使用 Samba 或 NFS 实现文件共享,使用 BIND 提供域名解析服务,使用 DHCP 动态管理主机地址,使用 Postfix 与 Dovecot 部署邮件系统,使用 Ansible 服务实现自动化运维,使用 iSCSI 服务部署网络存储,使用 MariaDB 数据库管理系统,使用 PXE+Kickstart 月 日 开源共享精神 一般情况下,软件的源代码只由编写者拥有,而开源(即开放源代码,Open Source Code) 是指一种更自由的软件发布模式。简单来说,开源软件的特点就是把软件程序和源代码文件 一起打包提供给用户,让用户在不受限制地使用某个软件功能的基础上还可以对代码按需修 改,让软件更贴合硬件环境,让功能更符合工作需求。用户还可以将其编制成衍生产品再发 的目的是保证程序员在开源社区中所做的工作对整个世界是有益的,所开发的软 件也是自由的,并极力避免开源软件被私有化以及被无良软件公司所剥削。 现在,只要软件中包含了遵循 GPL 许可证的产品或代码,该软件就必须开源、免费, 因此这个许可证并不适合商业收费软件。遵循该许可证的开源软件数量极其庞大,包 括 Linux 内核在内的大多数的开源软件都是基于 GPL 许可证的。GPL 赋予了用户著0 码力 | 552 页 | 22.25 MB | 1 年前3
共 53 条
- 1
- 2
- 3
- 4
- 5
- 6













