作者: | John Arundel and Justin Domingus |
语言: | 英文 |
出版年份: | 2019 |
下载链接: |
书籍均收集自互联网,仅供学习和研究使用,请莫用于商业用途。谢谢合作。 |
《Cloud Native DevOps with Kubernetes》是由John Arundel和Justin Domingus合著的一本关于Kubernetes和云原生开发运维的实用指南。本书由O’Reilly Media于2019年2月出版,旨在帮助读者掌握在Kubernetes平台上进行云原生应用开发和运维的最佳实践。
随着云计算、DevOps和容器技术的快速发展,Kubernetes已成为云原生应用开发的核心平台。本书应运而生,旨在为IT运维人员、开发人员以及对云原生技术感兴趣的读者提供一份全面的Kubernetes使用手册。作者通过丰富的实战经验和详细的案例分析,帮助读者理解Kubernetes的工作原理、部署策略以及与之相关的云原生生态系统。
本书共分为多个章节,内容涵盖了从Kubernetes基础到高级部署策略的各个方面。
介绍了云计算、DevOps和容器技术的发展历程,以及Kubernetes如何成为云原生世界的“操作系统”。作者详细阐述了容器技术的优势以及Kubernetes在云原生架构中的核心地位。
通过实际操作,指导读者如何在本地搭建Kubernetes集群,并部署一个简单的容器化应用。本章还介绍了Docker的基本使用方法,以及如何将容器推送到容器镜像仓库。
探讨了运行Kubernetes的不同方式,包括自建集群、使用托管服务(如Google Kubernetes Engine、Amazon EKS、Azure AKS等),以及各种Kubernetes安装工具(如kops、Kubespray)的优缺点。
深入讲解了Kubernetes的核心对象,如Pod、Deployment和Service,并介绍了如何使用Helm工具管理Kubernetes应用的部署。
介绍了如何优化Kubernetes集群的资源使用,包括资源请求、限制、Pod生命周期管理以及如何通过命名空间隔离资源。
讨论了Kubernetes集群的运维问题,如集群大小调整、高可用性配置、安全性和故障恢复策略。本章还介绍了如何使用Chaos Monkey等工具进行混沌测试。
介绍了kubectl的高级用法,包括命令别名、JSON数据处理、资源监控等。此外,还探讨了如何使用Go语言编写自定义的Kubernetes工具。
深入探讨了容器和Pod的概念,包括容器的安全性、多容器Pod的设计原则以及如何在Pod中共享数据。
介绍了Pod的高级管理功能,如标签、选择器、节点亲和性、Pod亲和性与反亲和性,以及DaemonSets、StatefulSets和Jobs等Pod控制器。
讲解了如何使用ConfigMaps和Secrets管理Kubernetes应用的配置和敏感信息。本章还介绍了如何使用Sops等工具加密密钥数据。
讨论了Kubernetes的安全机制,包括RBAC(基于角色的访问控制)、安全扫描工具以及如何使用Velero进行集群备份和恢复。
介绍了如何使用Helm创建和部署Kubernetes应用,包括Helm图表的结构、依赖管理和版本控制。
探讨了如何使用Skaffold、Draft、Telepresence和Knative等工具优化开发工作流,以及如何实现零停机部署。
本书适合以下几类读者:
《Cloud Native DevOps with Kubernetes》是一本全面、实用的Kubernetes指南。作者不仅详细介绍了Kubernetes的基本概念和操作,还提供了丰富的实战案例和最佳实践。通过阅读本书,读者可以快速掌握在Kubernetes平台上进行云原生应用开发和运维的技能,无论你是初学者还是有一定经验的开发者,都能从中受益。