Go 引领的容器时代,看 eBay 大佬是如何实战的?
共 1560字,需浏览 4分钟
·
2021-02-05 09:33
过去几年,以 docker、kubernetes 为代表的容器技术已发展为一项通用技术,BAT、滴滴、京东、头条等大厂,都争相把容器和 k8s 项目作为技术重心,试图“放长线钓大鱼”。
就说阿里吧,目前基本所有业务都跑在云上,其中有一半迁移到了自己定制 k8s集群上。据说,今年计划完成 100% 基于 k8s 集群的业务部署。而服务网格这块儿,在阿里一些部门(比如蚂蚁金服),已经有线上业务在用了。
这充分说明了容器在当今软件研发领域的地位,掌握容器技术自然成为很多公司在招聘时的重要选项。
但是,容器技术本身偏向运维,namespace 资源隔离、cgroups 资源限制等概念,对开发者来说,理解起来比较困难。这几年,在跟朋友探讨 k8s 落地时,也有一些问题被反复提及,比如:
为什么运行在虚拟机里的 CPU 监控程序,移到容器之后,再用之前的算法计算容器 CPU 使用率就不适用了?
为什么我的容器里有这么多僵尸进程?
为什么 kubernetes 一直不支持使用 swap?
为什么我的容器内存使用量总是在临界点?
其实,容器问题虽然有很多类型,但最终都会归结到 Linux 操作系统上。此外,也要考虑容器自身的特性——Namespace 和 Cgroups。所以,在解决容器相关问题时,我们要将 Linux 操作系统的主要模块,和容器的知识结构系统串联起来,并看到 Namespace 和 Cgroups 带来的特殊性。
上面这张图出自李程远,他是 eBay 总监级工程师、云平台架构师,有超过 15 年 Linux 平台开发经验和 8 年云平台开发经历,参与设计并开发了 eBay 数据中心两代云平台。
这两天,看朋友圈有人分享他的专栏《容器实战高手课》,跟着学了几篇,收获不小,很想推荐给你。
在专栏中,他讲解了容器技术的底层实现和核心原理,通过解决 20 个常见容器问题, 带你搭建完整的容器知识体系,掌握常见 Linux 内核调试工具的使用场景,和 Namespace、Cgroups 的实际应用,内容挺硬的,都是工作中实打实用得上的。
👆扫码免费试看
拼团+口令「happy2021」
立省 ¥30,原价¥99
他是如何讲解容器的?
在专栏中,他将零散的知识点体系化,按照类似操作系统的模块划分,依次讲解容器进程、容器内存、容器存储、 容器网络、容器安全这 5 大模块,从一个个实际问题入手,带你系统掌握容器核心点 Namespace 和 Cgroups,并理解其对传统操作系统行为的影响。
比如,Memory Cgroup 对 Pagecache 和 Swap 空间有怎样的影响;在 proc 文件系统下,我们的网络参数应用了 Network Namespace 后,需要如何重新设置,等等。
此外,他还会专门做一个专题加餐。通过一个真实案例,带你了解 perf,ftrace,bcc/ebpf 这几个 Linux 调试工具的原理,熟悉它们在调试问题的不同阶段所发挥的作用,并用它们解决现实场景中复杂的容器问题。
具体内容,可以看看目录:
订阅福利
拼团 + 口令「happy2021」到手仅¥69,
原价 ¥99,口令仅限「前 50 人」有效。
👆扫码免费试读
温馨提示:
订阅后可通过「极客时间 App」或「极客时间小程序」我的-已购,学习已订阅的专栏。
👇点击「阅读原文」,
输入优惠口令「happy2021」,
以最低价¥69入手。