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保证运行安全 程序跟其他的用户空间的程序没有太大区别 编译成二进制文件,可以适应不同运行环境 libbpf 扮演bpf程序装载机角色 开发人员只需要关注bpf程序的正确性和性能,不 需要关注其他依赖关系 通过Golang加载eBPF程序 01. 副标题 func loadSync() error { // Allow the current process to lock memory for eBPF0 码力 | 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坐标系广播与监听的编程实现.pdf18.tf坐标系广播与监听的编程实现 主 讲 人 : 古 月 创建功能包 创建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 21.03 技术白皮书程。拥有可靠开源软件供应链,是大规模商用操作系统的基础。 openEuler 从用户场景出发,回溯梳理相应的软件依赖关系,理清所有软件包的上游社区地址,源码和上游对应验证。完成 构建验证、分发、实现生命周期管理。开源软件的构建、运行依赖关系,上游社区,三者之前形成闭环且完整透明的软件供 应链管理。 Intel Linaro Red Hat AMD Google Huawei LINUX KERNEL厂商代码贡献 热升级,并进行质量可靠性保证,在升级失败后保证回滚到旧内核上。 2. 业务进程保存:利用系统 Checkpoint 保存业务进程和资源状态,保证系统业务状态与资源的一致性。 3. 新内核加载:利用系统 Kexec 机制实现新内核的快速加载,保证端到端业务秒级恢复。 4. 业务进程恢复:利用系统 Restore 技术对已保存的业务状态与资源进行恢复。 应用场景 应用场景 1: 内核 CVE 修复 典型应用程序(如 于新加了一块硬盘,可以完成对磁盘的任何操作,包括挂载、卸载、格式化、转换文件系统等等操作。 • Ironic 提供裸金属服务器纳管、部署、生命周期维护功能。 • Horizon 提供界面化的操作控制台。通过调用 API 实现 OpenStack 内部资源进行管理和展示。 应用场景 应用场景 1:云计算平台部署 用户可通过 openEuler 软件安装源进行 OpenStack 平台部署,支持基本云平台功能。 应用场景0 码力 | 18 页 | 1.30 MB | 1 年前3
openEuler 22.03 LTS SP2 技术白皮书openEuler 21.03 内核创新版,该版本将内核升级到 5.10, 还在内核方向实现内核热升级、 内存分级扩展等多个创新特性,加速提升多核性能,构筑千核运算能力。 2021 年 9 月 30 日,全新 openEuler 21.09 创新版如期而至,这是 openEuler 全新发布后的第一个社区版本,实现了 全场景支持。增强服务器和云计算的特性,发布面向云原生的业务混部CPU调度算法、容器化操作系统KubeOS等关键技术; 月 30 日,发布 openEuler 22.09 创新版本,持续补齐全场景的支持。 2022 年 12 月 30 日,发布 openEuler 22.03 LTS SP1 版本,打造最佳迁移工具实现业务无感迁移,性能持续领先。 2023 年 3 月 30 日,发布 openEuler 23.03 内核创新版本,采用 Linux Kernel 6.1 内核,为未来 openEuler 长生命周 断增强场景化能力,最终实现统 一操作系统支持多设备,应用一次开发覆盖全场景。 openEuler 覆盖全场景的创新平台 开源操作系统的构建过程,也是供应链聚合优化的过程。拥有可靠开源软件供应链,是大规模商用操作系统的基础。 openEuler 从用户场景出发,回溯梳理相应的软件依赖关系,理清所有软件包的上游社区地址、源码和上游对应验证。完 成构建验证、分发、实现生命周期管理。开源软件0 码力 | 48 页 | 5.62 MB | 1 年前3
openEuler 24.03 LTS 技术白皮书openEuler 21.03 内核创新版,该版本将内核升级到 5.10, 并在内核方向实现内核热升级、内存分级 扩展等多个创新特性,加速提升多核性能,构筑千核运算能力。 2021年 9 月 30 日,全新openEuler 21.09创新版如期而至,这是openEuler全新发布后的第一个社区版本,实现了全场景支持。 增强服务器和云计算的特性,发布面向云原生的业务混部 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 Edge、面 向嵌入式的版本 openEuler Embedded。 openEuler 希望与广大生态伙伴、用户、开发者一起,通过联合创新、社区共建,不断增强场景化能力,最终实现统一操作系 统支持多设备,应用一次开发覆盖全场景。 openEuler 覆盖全场景的创新平台 服务器 云计算 边缘 嵌入式 基础公共服务 服务器 开源操作系统的构建过程,也是供应链聚合优0 码力 | 45 页 | 6.18 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 覆盖全场景的创新平台 开源操作系统的构建过程,也是供应链聚合优化的过程。拥有可靠开源软件供应链,是大规模商用操作系统的基础。 openEuler 从用户场景出发,回溯梳理相应的软件依赖关系,理清所有软件包的上游社区地址,源码和上游对应验证。完 成构建验证、分发、实现生命周期管理。开源软件的0 码力 | 52 页 | 5.25 MB | 1 年前3
共 66 条
- 1
- 2
- 3
- 4
- 5
- 6
- 7













