Kubernetes是Google基于Borg开源的容器编排调度引擎,作为CNCF(Cloud Native Computing Foundation)最重要的组件之一,它的目标不仅仅是一个编排系统,而是提供一个规范,可以让你来描述集群的架构,定义服务的最终状态,Kubernetes可以帮你将系统自动地达到和维持在这个状态。Kubernetes作为云原生应用的基石,相当于一个云操作系统,其重要性不言而喻。
云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施和声明式API。这些技术能够构建容错性好、易于管理和便于观察的松耦合系统。结合可靠的自动化手段,云原生技术使工程师能够轻松地对系统作出频繁和可预测的重大变更。——CNCF(云原生计算基金会)。
本书开源于2017年3月,是第一本系统整理的开源中文版Kubernetes参考资料,记录了本人从零开始学习和使用Kubernetes的历程,着重于总结和资料分享,同时也会有相关的概念解析,希望能够帮助大家少踩坑,少走弯路,还会指引大家关注Kubernetes生态周边,如微服务构建、DevOps、大数据应用、Service Mesh、Cloud Native等领域。
在阅读本书之前希望您掌握以下知识和准备以下环境:
- Linux 操作系统原理
- Linux 常用命令
- Docker 容器原理及基本操作
- 一台可以上网的电脑,Mac/Windows/Linux 皆可
- 安装 Docker
本书的主题不局限于Kubernetes,还包括以下几大主题:
- 云原生开源组件
- 云原生应用与微服务架构
- 基于Kubernetes的Service Mesh架构
起初写作本书时,安装的所有组件、所用示例和操作等皆基于 Kubernetes 1.6+ 版本,同时我们也将密切关注Kubernetes的版本更新,随着它的版本更新升级,本书中的Kubernetes版本和示例也将随之更新。
您可以通过以下方式使用本书:
- GitHub地址:https://github.com/rootsongjc/kubernetes-handbook
- GitBook在线浏览:https://jimmysong.io/kubernetes-handbook/
- 下载本书的发行版:https://github.com/rootsongjc/kubernetes-handbook/releases
- 按照说明自行编译成离线版本
- Fork 一份添加你自己的笔记自行维护,有余力者可以一起参与进来
注意:Service Mesh 已成立独立的 istio-handbook,本书中的 Service Mesh 相关内容已不再维护。
如果您想要学习Kubernetes和云原生应用架构但是又不想自己从头开始搭建和配置一个集群,那么可以直接使用kubernetes-vagrant-centos-cluster项目直接在本地部署一个3节点的分布式集群及其他如Heapster、EFK、Istio等可选组件,或者使用更加轻量级的cloud-native-sandbox在个人电脑上使用Docker运行单节点的Kubernetes、Istio等组件。
感谢大家对本书做出的贡献!
署名-非商业性使用-相同方式共享 4.0 (CC BY-NC-SA 4.0)
- 云原生社区:添加 jimmysongio 微信,备注姓名-公司/学校/组织/机构等,并注明加入云原生社区。
- 知乎专栏:云原生应用架构
- 与我联系:https://jimmysong.io/contact/
以下为本人参与出版的云原生相关图书。
- Cloud Native Go - 基于Go和React的web云原生应用构建指南(Kevin Hoffman & Dan Nemeth著 宋净超 吴迎松 徐蓓 马超 译),电子工业出版社,2017年6月出版
- Python云原生 - 使用Python和React构建云原生应用(Manish Sethi著,宋净超译),电子工业出版社,2018年6月出版
- 云原生Java - Spring Boot、Spring Cloud与Cloud Foundry弹性系统设计(Josh Long & Kenny Bastani著,张若飞 宋净超译 ),电子工业出版社,2018年7月出版
- 未来架构——从服务化到云原生 - 张亮 吴晟 敖小剑 宋净超 著,电子工业出版社,2019年3月出版
- 快速入门学习 Kubernetes,请阅读极客时间专栏《深入剖析 Kubernetes》
- 学习 Service Mesh,请加入 ServiceMesher 社区
为云原生干杯🍻!使用微信扫一扫请我喝一杯☕️