《Kubernetes: Up and Running》第二版是由 Brendan Burns、Joe Beda 和 Kelsey Hightower 共同撰写的 Kubernetes 领域的经典著作。本书深入浅出地介绍了 Kubernetes 这一开源容器编排平台的设计理念、核心概念以及实际应用。自 2019 年出版以来,这本书一直是 Kubernetes 初学者和开发者的权威指南,帮助读者快速掌握如何构建、部署和管理可靠、可扩展的分布式系统。
作者简介
- Brendan Burns:微软 Azure 工程总监,Kubernetes 项目创始人之一。
- Joe Beda:VMware 高级工程师,Heptio 创始人之一,Kubernetes 项目创始人之一。
- Kelsey Hightower:谷歌云平台开发者倡导者,Kubernetes 社区的重要贡献者。
主要内容
第一部分:Kubernetes 基础
- 第 1 章:介绍了 Kubernetes 的起源、设计理念以及它如何通过容器化应用简化分布式系统的开发和部署。
- 第 2 章:详细讲解了容器技术的基础知识,包括 Docker 的使用、容器镜像的构建和管理。
- 第 3 章:指导读者如何部署 Kubernetes 集群,包括在公共云平台(如 AWS、Azure 和 GCP)和本地环境中安装 Kubernetes。
第二部分:核心概念与实践
- 第 4 章:介绍了 kubectl 命令行工具的使用,帮助读者与 Kubernetes 集群进行交互。
- 第 5 章:深入探讨了 Pod 的概念,包括如何创建、管理和调试 Pod。
- 第 6 章:讲解了 Kubernetes 中的标签(Labels)和注解(Annotations)的使用,以及如何通过它们组织和查询资源。
- 第 7 章:介绍了 Kubernetes 的服务发现机制,包括 Service 对象和 DNS 服务。
- 第 8 章:讨论了 HTTP 负载均衡与 Ingress 的实现,以及如何通过 Ingress 控制器管理外部流量。
- 第 9 章:介绍了 ReplicaSet 的概念,以及如何通过它实现 Pod 的自动扩缩容。
- 第 10 章:详细讲解了 Deployment 对象,包括如何进行应用的滚动更新和回滚。
第三部分:高级主题与扩展
- 第 11 章:介绍了 DaemonSet 的使用,用于在集群中每个节点上运行守护进程。
- 第 12 章:讲解了 Job 和 CronJob 的概念,用于执行一次性任务和定时任务。
- 第 13 章:介绍了 ConfigMap 和 Secret 的使用,用于管理应用配置和敏感信息。
- 第 14 章:深入探讨了 Kubernetes 的角色基于访问控制(RBAC),以及如何通过它管理集群权限。
- 第 15 章:讨论了如何将存储解决方案集成到 Kubernetes 中,包括持久卷和 StatefulSet 的使用。
- 第 16 章:介绍了如何通过 CustomResourceDefinition 和 admission controllers 扩展 Kubernetes API。
第四部分:实战应用
- 第 17 章:通过多个实际案例(如 Jupyter、Parse、Ghost 和 Redis)展示了如何在 Kubernetes 上部署真实世界的应用。
- 第 18 章:讨论了如何组织和管理 Kubernetes 应用,包括版本控制、代码审查和多环境部署。
适用人群
本书适合以下读者:
- 初学者:希望了解 Kubernetes 基础知识和容器编排的开发者。
- 开发人员:需要在 Kubernetes 上部署和管理应用的工程师。
- 系统管理员:负责 Kubernetes 集群的运维和管理的专业人员。
- 架构师:希望了解 Kubernetes 在大规模分布式系统中的应用和扩展的高级用户。
总结
《Kubernetes: Up and Running》第二版是一本全面、实用且易于理解的 Kubernetes 教程。它不仅涵盖了 Kubernetes 的核心概念和工具,还提供了丰富的实战案例和最佳实践,帮助读者快速上手并掌握 Kubernetes 的高级应用。无论是初学者还是经验丰富的开发者,都能从这本书中获得宝贵的指导和启发。