30000

最近我们在琢磨一个新功能 。
极客时间上有很多实战的课程 , 其实都是需要练习的 , 学了 Python , 可以做一个爬虫实战项目 。 学了算法 , 可以即时练习 , 刷题做作业 。 看了大数据处理 , 我也希望构建一个数据平台跑跑数据看看结果 。 学了 Linux 性能优化 , 能不能有个集群让我耍耍 , 各种参数跑一边试试……
学完之后 , 唯有动手实践 , 东西才能成为自己的 。 以前这些事都得用户自己搭环境 , 或者去线上找环境 , 环境和课程大概率对不上 , 我们希望把这个功能搬到线上来做 , 作为整个产品的附加服务 。
这事做起来并没有那么容易 , 即便是算法练习 , 也需要考虑输入输出 , 编译和执行环境 , 系统安全等等 。 最终我们会选择使用 k8s 来进行调度 。 为了环境的隔离性和安全性 , 我们会让服务跑在容器里 。 为了最大化的节约成本 , 动态且弹性的扩容和缩容 , 初步想法是 , 用户请求时即时的唤起一个 Pod 来处理 , 处理完成回传结果后即时销毁 。
这种有点像 Serverless 和 容器的两种技术的混合应用 , 也就是之前流行过的一个概念 , 叫做弹性容器 。
目前产品还在构建中 , 看起来是一个长期的事情 。 我们做这个产品 , 其实很大程序借助了我们自己做的课程《深入剖析 Kubernetes》 , 也就是 k8s 。
k8s 目前差不多是工业标准了 , 大厂基本都在用 。 比如阿里 , 基本所有业务都跑在云上 , 其中有一半已迁移到自己定制 Kubernetes 集群上 。 据说 , 今年计划完成 100% 基于 k8s 集群的业务部署 。 而服务网格这块儿 , 在阿里的一些部门(比如蚂蚁金服) , 已经有线上业务在用了 。
不过呢 , 容器技术本身偏向运维 , namespace 资源隔离、cgroups 资源限制等概念 , 对开发者来说 , 理解起来比较困难 。 这几年 , 在跟一些朋友探讨 k8s 落地时 , 也有一些问题被反反复复地提及 , 比如:

1、为什么容器里只能跑“一个进程”?
2、原先一直用的某个 JVM 参数 , 在容器里就不好使了?
3、为什么 kubernetes 不能固定 IP 地址?容器网络连不通 , 该如何 debug?
4、k8s 中 statefulSet 和 operator 到底什么区别?pv 和 pvc 又该怎么用?

这些问题的答案和原理并不复杂 。 但对初学者来说 , 很难用一两句话就解释清楚 。 因为容器技术涉及操作系统、网络、存储、调度、分布式原理等等方方面面的知识 , 是个名副其实的全栈技术 。

而其技术体系里那些“牵一发而动全身”的主线 , 比如 Linux 进程模型对容器本身的重要意义 , “控制器”模式对整个 k8s 项目提纲挈领的作用等等 , 并不会详细展现在 docker 或 kubernetes 官方文档中 , 但偏偏就是它们 , 才是掌握容器技术体系的精髓所在


所以在 2018 年 , 我们找到了 k8s 社区维护者张磊 , 来极客时间开设了专栏《深入剖析 Kubernetes》 , 上线后好评不断 , 目前已经突破了
30000
订阅大关 。
30000
文章图片
秒杀+
口令
「k8sgogogo」到手
69

今晚
涨价至 129


我们团队也在反复学习这门课程 。

专栏作者张磊是 Kubernetes 社区维护者 , 目前就职阿里 , 他也是 Kubernetes 容器运行和集群调度等多个核心特性的作者之一 , 他长期专注于容器集群管理和云计算数据中心这一块 , 曾任职于浙江大学计算机与软件研究所 , Hyper/Kata 虚拟化容器团队 , 微软研究院(Microsoft Research) , 连续三次被微软授予该领域 MVP 。


推荐阅读