写点什么

Kubernetes,原来可以如此简单

  • 2018-08-27
  • 本文字数:2179 字

    阅读完需:约 7 分钟

不管你是否意识到,在过去的几年时间里,以 Docker、Kubernetes 为代表的容器技术已经悄然发展成为一项通用技术。放眼国外,Google、Microsoft、IBM 等互联网巨头们,仍在容器开源基础设施的技术市场上厮杀。回看国内,包括 BAT、滴滴、京东、头条在内的大厂也都争相把容器和 Kubernetes 项目作为其技术重心,试图“放长线钓大鱼”。

正如媒体所言,软件正在吃掉世界,而容器正在吃掉整个软件世界。虽说有些夸张,但也充分证明了容器在当今软件研发领域的地位。顺势而为,是否掌握容器技术也成为很多企业在招聘时的一个重要选项。

容器技术本身是一项偏向运维工程师的基础技术,namespace 资源隔离、cgroups 资源限制等等概念对于开发人员来说,都有一道难以逾越的理解鸿沟。这些年,我一直都在和容器打交道,也一直和容器工程师探讨落地过程中的问题。从这些交流中,我发现总有很多相似的问题被反复提及,比如:

  1. 为什么容器里只能跑“一个进程”?
  2. 为什么我原先一直在用的某个 JVM 参数,在容器里就不好使了?
  3. 为什么 Kubernetes 就不能固定 IP 地址?容器网络连不通又该如何去 Debug?
  4. Kubernetes 中 StatefulSet 和 Operator 到底什么区别?PV 和 PVC 又该怎么用?

这些问题乍一看与我们平常的认知非常矛盾,但它们的答案和原理却并不复杂。而这些对于容器初学者来说,又很难用一两句话就解释清楚。

容器技术涉及到操作系统、网络、存储、调度、分布式原理等等各方面的综合知识,也就导致了很多初学者面对容器技术,要么知识储备不足,要么杂乱无章、无从下手。

其实,看似纷乱繁杂容器技术体系,却存在着很多可以“牵一发而动全身”的主线。比如,Linux 的进程模型对于容器本身的重要意义;或者,“控制器”模式对整个 Kubernetes 项目提纲挈领的作用。

这些基础知识并不会在 Docker 或者 Kubernetes 的官方文档中详细赘述。但它们也才是真正掌握容器技术体系的精髓所在,是每一位技术从业者都需要悉心修炼的“内功”。

深入剖析 Kubernetes》专栏就是想基于我多年的从业经验,用深入浅出的方式帮你从看似凌乱复杂的 Kubernetes 项目中梳理出一条主线,助你理解容器和 Kubernetes 背后的设计思想和逻辑,从而解决现实工作中遇到的问题。

眼下,你我可能已经错过了互联网技术大爆炸的时代,也没有在数字货币早期的狂热里分到一杯羹。可就在此时此刻,在沉寂了多年的云计算与基础设施领域,一次以“容器”为名的历史变革,正呼之欲出。这一次,我们又有什么理由作壁上观呢?

我是谁?

我是张磊,Kubernetes 社区的一位资深成员和项目维护者。

2012 年,我还在浙大读书的时候,就有幸组建了一个云计算与 PaaS 基础设施相关的科研团队,就这样,我从早期的 Cloud Foundry 社区开始,正式与容器结缘。

之后的几年,我全职在 Kubernetes 和 Kata Containers 社区从事上游开发工作,先后发起了容器镜像亲密性调度、基于等价类的调度优化等多个核心特性,参与了容器运行时接口、安全容器沙盒等多个基础特性的设计和研发。还有幸作为主要的研发人员和维护者之一,亲历了 Serverless Container 概念的诞生与崛起。

工作之余,我还发起和组织撰写了《Docker 容器与容器云》一书,受到了广大希望进阶容器技术的读者的好评。

今年,我又远赴西雅图,在微软研究院(MSR)云计算与存储研究组,专门从事基于 Kubernetes 的深度学习基础设施相关的研究工作。

可以说,这 6 年里,我参与和亲历了容器技术从“初出茅庐”到“尘埃落定”的全过程。

专栏简介

我希望借由这个专栏,给你讲清楚容器背后的技术本质与设计思想,并结合着对核心特性的剖析与实践,加深你对容器技术的理解。为此,我把专栏划分成了 4 大模块:

  1. “白话”容器技术基础:用饶有趣味的解说,给你梳理容器技术生态的发展脉络,用最通俗易懂的语言描述容器底层技术的实现方式,让你知其然,并且知其所以然。
  2. Kubernetes 集群的搭建与实践:Kubernetes 集群号称“非常复杂”,但是如果明白了其中的架构和原理,选择了正确的工具和方法,它的搭建却也可以“一键安装”,它的应用部署也可以浅显易懂。
  3. 容器编排与 Kubernetes 核心特性剖析:这是专栏最主要的内容。“编排”永远都是容器云项目的灵魂所在,也是 Kubernetes 社区持久生命力的源泉。在这一模块,我会从分布式系统设计的视角出发,抽象和归纳出这些特性中体现出来的普遍方法,然后带着这些指导思想去逐一阐述 Kubernetes 项目关于编排、调度和作业管理的各项核心特性。
  4. Kubernetes 开源社区与生态:“开源生态”永远都是容器技术和 Kubernetes 项目成功的关键。在这个模块,我会和你一起探讨容器社区现代开源软件工程指导下的技术演进之路,带你思考如何同团队一起平衡内外部需求,逐渐成为社区中不可或缺的一员。

在专栏开始,我首先为你准备了 4 篇预习文章,详细地梳理了容器技术自兴起到现在的发展历程,同时也回答了“Kubernetes 为什么会赢”这个重要的问题,算是我额外为你准备的一份开学礼物。



机会总是留给有准备的人,现在就让我们一起开启这次充满挑战的容器之旅吧!

订阅福利

福利一:上新优惠价¥68,原价¥99,9 月 8 日恢复原价

福利二:每邀请一位好友购买,你可获得24 元现金返现,多邀多得,上不封顶,随时提现(提现流程:极客时间 App - 我的 - 分享有赏)

如何订阅?

点击下方图片,即可试读或订阅专栏。

2018-08-27 19:003375

评论

发布
暂无评论
发现更多内容

mcgs笔记 工程上传功能

万里无云万里天

自动化 HMI mcgs

mcgs笔记 构件 查看位置坐标与大小

万里无云万里天

自动化 HMI mcgs

mcgs笔记 设备窗口 通讯状态

万里无云万里天

自动化 HMI mcgs

多项政策扶持与流量激励,华为音乐空间音频创作者获全链路支持

最新动态

残疾人辅具展|2024年广州国际残疾人用品展会

秋硕展览

6个 Spring websocket注解:整体架构分析与注解应用案例(必须收藏)

肖哥弹架构

Java spring websocket

mcgs笔记 设备窗口 快速连接变量

万里无云万里天

自动化 HMI mcgs

Flink Forward Asia 2024 议题征集令|探索实时计算新边界

阿里云大数据AI技术

flink 实时计算 FFA

2024年职教展-2024全国职业教育产业博览会

秋硕展览

mcgs笔记 按钮 按下与抬起的差异设置

万里无云万里天

自动化 HMI mcgs

mcgs笔记 构件 标签的闪烁效果

万里无云万里天

自动化 HMI mcgs

mcgs笔记 画面 百分比缩放

万里无云万里天

自动化 HMI mcgs

mcgs笔记 画面 由全屏回到缩小的窗口状态

万里无云万里天

自动化 HMI mcgs

Datadog 监控最佳实践 | 收集正确的数据

巴辉特

监控 可观测性 监控系统 运维监控 开源监控

来云栖大会!探展云上开发,沉浸式体验云原生 + AI 新奇玩法

阿里云云效

阿里云 云原生

技术干货 | YashanDB+Zabbix搭建监控可视化平台,手把手实操!

YashanDB

yashandb 崖山数据库

悲惨!刚入职没几天,无意间把数据库删了,很尴尬,原因很奇葩

五阳

程序员 java 架构

火山引擎携手地瓜机器人,加速大模型在机器人场景规模落地

火山引擎边缘云

IoT 机器人 AIOT 智能IoT边缘服务 大模型

inBuilder的业务领域划分

inBuilder低代码平台

微服务 低代码

手工转测试开发轻松实现薪资 50%涨幅的逆袭之路

霍格沃兹测试开发学社

mcgs笔记 工具箱 元件库(公共图库)展示(下)

万里无云万里天

自动化 HMI mcgs

VMware Avi Load Balancer 30.2.2 发布下载,新增功能概览

sysin

负载均衡 vmware 应用交付 AVI

【开源鸿蒙】运行OpenHarmony轻量系统QEMU RISC-V版本

码匠许师傅

qemu OpenHarmony risc-v

【开源鸿蒙】调试OpenHarmony轻量系统QEMU RISC-V版本

码匠许师傅

gdb qemu OpenHarmony risc-v

mcgs笔记 构件 水平移动与垂直移动

万里无云万里天

自动化 HMI mcgs

阿里巴巴拍立淘API:实时图像搜索与快速响应的技术探索

代码忍者

API 测试 pinduoduo API

什么是 Rainbond?打破 Kubernetes 的复杂性

北京好雨科技有限公司

Kubernetes 云原生 rainbond 企业 9 月 PK 榜

mcgs笔记 构件 动画显示构件模拟设备转动

万里无云万里天

自动化 HMI mcgs

图像检测【YOLOv5】——深度学习

芯动大师

深度学习 模型 Anaconda

京东广告投放平台整洁架构演进之路

京东零售技术

架构 代码

Kubernetes,原来可以如此简单_语言 & 开发_极客时间_InfoQ精选文章