内容推荐 马尔科·卢克沙著的《Kubernetes in Action(中文版)》主要讲解如何在Kubernetes中部署分布式容器应用。本书开始部分概要介绍了Docker和Kubernetes的由来和发展,然后通过在Kubernetes中部署一个应用程序,一点点增加功能,逐步加深我们对于Kubernetes架构的理解和操作的实践。在本书的后面部分,也可以学习一些高阶的主题,比如监控、调试及伸缩。 Kubernetes是希腊文,意思是“舵手”,带领我们安全地到达未知水域。Kubernetes这样的容器编排系统,会帮助我们妥善地管理分布式应用的部署结构和线上流量,高效地组织容器和服务。Kubernetes作为数据中心操作系统,在设计软件系统时,能够尽量降低在底层网络和硬件设施上的负担。 作者简介 马尔科·卢克沙(Marko Luksa)是一名在Red Hat公司从事Kubernetes和OpenShift相关工作的工程师。 目录 1 Kubernetes介绍 1.1 Kubernetes系统的需求 1.1.1 从单体应用到微服务 1.1.2 为应用程序提供一个一致的环境 1.1.3 迈向持续交付:DevOps和无运维 1.2 介绍容器技术 1.2.1 什么是容器 1.2.2 Docker容器平台介绍 1.2.3 rkt——一个Docker的替代方案 1.3 Kubernetes介绍 1.3.1 初衷 1.3.2 深入浅出地了解Kubernetes 1.3.3 Kubernetes集群架构 1.3.4 在Kubernetes中运行应用 1.3.5 使用Kubernetes的好处 1.4 本章小结 2 开始使用Kubernetes和Docker 2.1 创建、运行及共享容器镜像 2.1.1 安装Docker并运行Hello World容器 2.1.2 创建一个简单的Node.js应用 2.1.3 为镜像创建Dockerfile 2.1.4 构建容器镜像 2.1.5 运行容器镜像 2.1.6 探索运行容器的内部 2.1.7 停止和删除容器 2.1.8 向镜像仓库推送镜像 2.2 配置Kubernetes集群 2.2.1 用Minikube运行一个本地单节点Kubernetes集群 2.2.2 使用Google Kubernetes Engine托管Kubernetes集群 2.2.3 为kubectl配置别名和命令行补齐 2.3 在Kubernetes上运行第一个应用 2.3.1 部署Node.js应用 2.3.2 访问Web应用 2.3.3 系统的逻辑部分 2.3.4 水平伸缩应用 2.3.5 查看应用运行在哪个节点上 2.3.6 介绍Kubernetes dashboard 2.4 本章小结 3 pod:运行于Kubernetes中的容器 3.1 介绍pod 3.1.1 为何需要pod 3.1.2 了解pod 3.1.3 通过pod合理管理容器 3.2 以YAML或JSON描述文件创建pod 3.2.1 检查现有pod的YAML描述文件 3.2.2 为pod创建一个简单的YAML描述文件 3.2.3 使用kubectl create来创建pod …… 4 副本机制和其他控制器:部署托管的pod 5 服务:让客户端发现pod并与之通信 6 卷:将磁盘挂载到容器 7 ConfigMap和Secret:配置应用程序 8 从应用访问pod元数据以及其他资源 9 Deployment:声明式地升级应用 10 StatefulSet:部署有状态的多副本应用 11 了解Kubernetes机理 12 Kubernetes API服务器的安全防护 13 保障集群内节点和网络安全 14 计算资源管理 15 自动横向伸缩pod与集群节点 16 高级调度 17 开发应用的最佳实践 18 Kubernetes应用扩展 A 在多个集群中使用kubectl B 使用kubeadm配置多节点集群 C 使用其他容器运行时 D Cluster Federation
|