译者序
早在2011年创业初期,七牛就决定使用GoLang作为主要开发语言,那时距离GoLang 1.0的正式发布还有将近一年的时间。当时我们就断定,在分布式时代,GoLang这种语言必定会大放异彩。今天,七牛的绝大多数线上服务都是用GoLang实现的,Golang帮助我们以最高的效率实现应用,快速响应客户需求。现在,我们也很幸运地看到当前最热门的开源项目如Docker、Kubernetes等,也都是基于GoLang来实现的。
就像早期拥抱GoLang一样,七牛也是Docker和Kubernetes技术的坚定拥抱者和践行者。早在2014年,我们就基于Docker自研了一套容器集群管理系统,用于图片、音视频转码应用实例的资源调度,这套系统在线上运行了好几年,现在正逐渐被Kubernetes替代。
Docker和Kubernetes的出现,让我们发现了构建数据中心操作系统(DCOS)的可能性。Docker的轻量级、Kubernetes的灵活性和开放性,能让我们以API调用的方式来交付计算力(包括CPU、内存、网络、磁 盘等),能让业务应用摆脱传统资源交付方式和既往运维手段的束缚,更快捷地得到部署、升级和管理,业务迭代速度大大加快,资源利用率大幅提高。
早在几年前,我们在七牛就成立了专门的容器云团队,致力于打造更健壮、更易用的容器集群调度管理系统。现在,我们在七牛内部全面推广和应用Kubernetes,不仅把无状态服务运行在Kubernetes中,也把有状态服务比如数据库运行在Kubernetes中,正如使用GoLang提高了我们的开发效率一样,使用Kubernetes大大提高了我们的部署和运维效率。
在七牛,我们坚定地认为,Kubernetes会成为下一个Linux,但是管理的不再是单台机器,而是以DCOS的方式来管理整个数据中心。熟练地掌握和使用Kubernetes,将成为每个前后端工程师的必备技能,Kubernetes将成为发布前后端服务的标准途径。
这本书的翻译,我们集中了七牛容器云团队,以及其他七牛内部热心志愿者的力量,针对翻译的每个术语我们认真推敲,尽最大可能达 到“信”“达”“雅”的程度。鉴于水平有限,难免有纰漏,请读者谅解。
希望这本书能带领你进入Kubernetes的世界。
参与本书翻译的七牛容器团队成员有:卢兴铭(致谢词、第1章)、李雪瓅(第2章)、路涛(第3章)、孙讷敏(第4章)、刘岩(第5章)、孙毅飞(第6章)、林培裕(第7章)、周玉壁(第8章)、 陈凯俊(第9章)、杨冠军(第10章)、张钦尧(第11章)、况永巧 (第12章)、易弢(第13章)、王浩宇(第14章)、王雪瑞(第15章)、屈啸(第16章)、金鑫鑫(第17章)、陈忠杰(第18章)。由袁晓沛任翻译组组长,由李雪瓅、马力、冯义勇负责审校。
袁晓沛 容器计算部技术总监