展开全部

主编推荐语

一本实用性很强的Kubernetes运维实战指南。

内容简介

本书旨在为容器云平台的建设、应用和运维过程提供全面的指导。作者结合丰富的生产环境经验,深入探讨作为一名Kubernetes工程师的核心技能,包括部署、存储、网络、安全、日志、监控、CI/CD等方面的技术。

本书结合大量的实际案例,深入解析各个知识点,帮助读者更轻松地理解Kubernetes,并掌握在真实应用场景中的使用方法、技巧以及工作原理。通过学习本书,读者可以熟练运用这些知识来构建高效、稳定、安全的企业级Kubernetes容器平台,提高自身的运维能力和竞争力。

目录

  • 版权信息
  • 作者简介
  • 内容简介
  • 前言
  • 第1章 Kubernetes概述
  • 1.1 容器技术概述
  • 1.2 Kubernetes介绍
  • 1.3 Kubernetes架构与组件
  • 1.4 Kubernetes核心资源
  • 1.5 本章小结
  • 第2章 Kubernetes快速入门
  • 2.1 Kubernetes集群部署
  • 2.1.1 准备服务器环境
  • 2.1.2 系统初始化配置
  • 2.1.3 安装Docker
  • 2.1.4 安装cri-docker
  • 2.1.5 安装kubeadm和kubelet
  • 2.1.6 部署Master节点
  • 2.1.7 部署Node节点
  • 2.1.8 部署网络插件
  • 2.1.9 部署Dashboard
  • 2.1.10 清空Kubernetes环境
  • 2.2 部署第一个应用程序
  • 2.2.1 通过Dashboard部署应用程序
  • 2.2.2 通过kubectl命令行部署应用程序
  • 2.2.3 通过定义资源文件部署应用程序
  • 2.3 kubectl管理工具
  • 2.3.1 kubectl子命令概要
  • 2.3.2 kubectl工具常用操作
  • 2.4 本章小结
  • 第3章 Pod资源对象
  • 3.1 Pod存在的意义
  • 3.2 Pod实现原理
  • 3.2.1 容器之间网络通信
  • 3.2.2 容器之间文件共享
  • 3.3 Pod资源常见字段及值类型
  • 3.4 Pod管理常用命令
  • 3.5 容器运行命令与参数
  • 3.5.1 command
  • 3.5.2 args
  • 3.6 镜像拉取策略
  • 3.7 声明端口
  • 3.8 容器健康检查
  • 3.8.1 存活探针
  • 3.8.2 就绪探针
  • 3.8.3 启动探针
  • 3.8.4 tcpSocket和exec检查方法
  • 3.9 容器资源配额
  • 3.9.1 资源请求与资源限制
  • 3.9.2 资源请求对Pod调度的影响
  • 3.9.3 理想的资源配额是多少
  • 3.9.4 服务质量
  • 3.10 容器环境变量
  • 3.11 初始化容器
  • 3.12 容器生命周期回调
  • 3.12.1 postStart
  • 3.12.2 preStop
  • 3.13 Pod生命周期
  • 3.13.1 创建Pod
  • 3.13.2 启动Pod
  • 3.13.3 销毁Pod
  • 3.14 本章小结
  • 第4章 工作负载资源对象
  • 4.1 工作负载资源概述
  • 4.2 Deployment
  • 4.2.1 获取源代码
  • 4.2.2 构建镜像
  • 4.2.3 推送镜像到镜像仓库
  • 4.2.4 部署应用
  • 4.2.5 应用升级
  • 4.2.6 应用回滚
  • 4.2.7 应用扩容与缩容
  • 4.2.8 应用下线
  • 4.2.9 实现灰度发布
  • 4.3 DaemonSet
  • 4.4 Job与CronJob
  • 4.4.1 Job
  • 4.4.2 ConJob
  • 4.5 本章小结
  • 第5章 Service资源对象
  • 5.1 Service概述
  • 5.2 Service定义
  • 5.3 Service公开类型
  • 5.3.1 ClusterIP
  • 5.3.2 NodePort
  • 5.3.3 LoadBalancer
  • 5.3.4 ExternalName
  • 5.4 Endpoints对象
  • 5.5 Service服务发现
  • 5.5.1 环境变量
  • 5.5.2 DNS
  • 5.6 Service代理模式
  • 5.6.1 iptables
  • 5.6.2 ipvs
  • 5.7 生产环境架构
  • 5.8 本章小结
  • 第6章 Ingress资源对象
  • 6.1 Ingress概述
  • 6.2 Ingress控制器部署
  • 6.3 Ingress对外公开HTTP服务
  • 6.4 基于请求路径转发不同服务
  • 6.5 Ingress配置HTTPS
  • 6.6 Ingress自定义配置
  • 6.6.1 增加代理超时时间
  • 6.6.2 设置客户端请求体大小
  • 6.6.3 重定向
  • 6.6.4 会话保持
  • 6.6.5 自定义规则
  • 6.7 Ingress灰度发布
  • 6.7.1 基于权重的流量切分
  • 6.7.2 基于客户端请求的流量切分
  • 6.7.3 常见发布策略总结
  • 6.8 Ingress工作原理
  • 6.9 生产环境架构
  • 6.10 本章小结
  • 第7章 Kubernetes存储管理
  • 7.1 卷
  • 7.1.1 emptyDir
  • 7.1.2 hostPath
  • 7.1.3 nfs
  • 7.1.4 容器存储接口
  • 7.2 持久卷
  • 7.2.1 创建PV
  • 7.2.2 创建PVC
  • 7.2.3 Pod使用PVC
  • 7.2.4 PV动态供给
  • 7.2.5 PV生命周期
  • 7.3 内置存储对象
  • 7.3.1 ConfigMap
  • 7.3.2 Secret
  • 7.3.3 配置文件自动重新加载方案
  • 7.4 本章小结
  • 第8章 有状态应用管理
  • 8.1 StatefulSet工作负载资源
  • 8.1.1 稳定的网络标识符
  • 8.1.2 稳定的独享存储
  • 8.2 MySQL主从复制集群实践
  • 8.2.1 MySQL集群拓扑规划
  • 8.2.2 MySQL集群容器化实现
  • 8.2.3 MySQL Slave扩展与缩减
  • 8.2.4 MySQL版本升级与回滚
  • 8.3 Operator
  • 8.3.1 Operator介绍
  • 8.3.2 自定义资源定义
  • 8.3.3 控制器
  • 8.3.4 MySQL Operator
  • 8.4 本章小结
  • 第9章 Kubernetes调度管理
  • 9.1 节点选择器
  • 9.2 节点亲和性
  • 9.3 Pod亲和性和反亲和性
  • 9.3.1 亲和性
  • 9.3.2 反亲和性
  • 9.4 污点与容忍
  • 9.4.1 污点
  • 9.4.2 容忍
  • 9.5 nodeName
  • 9.6 本章小结
  • 第10章 Kubernetes安全配置
  • 10.1 Kubernetes API访问控制
  • 10.1.1 Kubernetes安全框架
  • 10.1.2 RBAC介绍
  • 10.1.3 面向用户授权案例1
  • 10.1.4 面向用户授权案例2
  • 10.1.5 内置集群角色
  • 10.1.6 面向应用程序授权案例
  • 10.2 Pod安全上下文
  • 10.2.1 容器以普通用户运行
  • 10.2.2 容器启用特权
  • 10.2.3 容器设置只读文件系统
  • 10.3 网络策略
  • 10.3.1 网络策略实现
  • 10.3.2 网络策略资源
  • 10.3.3 默认策略
  • 10.3.4 Pod级别限制
  • 10.3.5 命名空间级别限制
  • 10.3.6 细粒度限制
  • 10.3.7 IP段限制
  • 10.3.8 出站流量限制
  • 10.4 本章小结
  • 第11章 Kubernetes网络插件之Calico
  • 11.1 Docker网络模型
  • 11.1.1 容器之间以及容器与宿主机之间的通信
  • 11.1.2 容器访问外部网络
  • 11.1.3 外部网络访问容器
  • 11.2 Kubernetes网络模型
  • 11.3 Calico介绍
  • 11.4 Calico部署
  • 11.5 calicoctl管理工具
  • 11.6 Calico工作模式
  • 11.6.1 覆盖网络:VXLAN模式
  • 11.6.2 覆盖网络:IPIP模式
  • 11.6.3 路由网络:BGP模式
  • 11.6.4 工作模式优缺点
  • 11.7 路由反射器
  • 11.8 本章小结
  • 第12章 Kubernetes部署利器Helm
  • 12.1 Helm介绍
  • 12.2 Helm安装
  • 12.3 Helm命令概述
  • 12.4 Helm基本使用
  • 12.4.1 制作Chart
  • 12.4.2 安装Chart
  • 12.4.3 更新Release
  • 12.4.4 回滚Release
  • 12.4.5 卸载Release
  • 12.5 深入理解Chart模板
  • 12.5.1 缩进函数
  • 12.5.2 toYaml函数
  • 12.5.3 条件判断
  • 12.5.4 循环
  • 12.5.5 变量作用域
  • 12.5.6 读取文件
  • 12.5.7 自定义模板
  • 12.6 自建Chart仓库
  • 12.6.1 搭建Chart仓库服务器
  • 12.6.2 推送本地Chart到远程仓库
  • 12.6.3 通过远程仓库安装Chart
  • 12.7 公共Chart仓库
  • 12.7.1 部署MySQL集群
  • 12.7.2 部署Redis集群
  • 12.8 本章小结
  • 第13章 基于Jenkins的CI/CD平台
  • 13.1 CI/CD简介
  • 13.1.1 持续集成
  • 13.1.2 持续交付和持续部署
  • 13.2 CI/CD流程设计
  • 13.3 相关软件环境准备
  • 13.3.1 部署GitLab代码仓库
  • 13.3.2 部署Harbor镜像仓库
  • 13.3.3 部署Jenkins发布系统
  • 13.4 Jenkins初体验
  • 13.4.1 流程设计
  • 13.4.2 提交代码
  • 13.4.3 创建项目
  • 13.4.4 项目配置
  • 13.4.5 验证与测试
  • 13.5 Jenkins参数化构建
  • 13.6 Jenkins主从架构
  • 13.7 Jenkins Pipeline
  • 13.7.1 Pipeline语法
  • 13.7.2 基于Kubernetes动态创建代理
  • 13.7.3 常用指令
  • 13.7.4 片段生成器
  • 13.8 案例:Pipeline实现网站项目的自动发布
  • 13.8.1 Pipeline脚本基本结构
  • 13.8.2 拉取代码阶段
  • 13.8.3 代码编译阶段
  • 13.8.4 构建镜像阶段
  • 13.8.5 部署到K8s集群阶段
  • 13.8.6 反馈阶段
  • 13.8.7 验证与测试
  • 13.9 Argo CD增强持续交付
  • 13.9.1 Argo CD部署
  • 13.9.2 Argo CD实践
  • 13.10 本章小结
  • 第14章 基于Prometheus+Grafana的监控平台
  • 14.1 Prometheus和Grafana简介
  • 14.2 Prometheus架构
  • 14.3 部署Prometheus和Grafana
  • 14.3.1 部署Prometheus
  • 14.3.2 部署Grafana
  • 14.3.3 在Grafana中添加Prometheus作为数据源
  • 14.4 Prometheus监控案例
  • 14.4.1 监控Linux服务器
  • 14.4.2 监控Docker服务器
  • 14.4.3 监控MySQL服务器
  • 14.4.4 监控应用程序
  • 14.5 Alertmanager告警通知
  • 14.5.1 部署Alertmanager
  • 14.5.2 Prometheus指向Alertmanager
  • 14.5.3 定义告警规则
  • 14.5.4 企业微信告警通知
  • 14.5.5 自定义告警内容模板
  • 14.6 Prometheus监控Kubernetes
  • 14.6.1 Prometheus服务发现简介
  • 14.6.2 Kubernetes关注的指标
  • 14.6.3 在Kubernetes中搭建Prometheus监控系统
  • 14.6.4 监控Node
  • 14.6.5 监控Pod
  • 14.6.6 监控资源对象
  • 14.6.7 监控Service和Ingress对象
  • 14.6.8 监控集群中应用程序
  • 14.6.9 监控Kubernetes组件
  • 14.7 本章小结
  • 第15章 基于ELK Stack的日志管理平台
  • 15.1 ELK Stack简介
  • 15.2 部署Elasticsearch和Kibana
  • 15.3 Nginx日志收集案例
  • 15.3.1 部署Filebeat
  • 15.3.2 Kibana查看索引
  • 15.3.3 创建数据视图
  • 15.4 数据处理管道Logstash
  • 15.4.1 部署Logstash
  • 15.4.2 定义数据处理规则
  • 15.4.3 配置Filebeat发送到Logstash
  • 15.5 Kibana仪表板
  • 15.5.1 PV统计
  • 15.5.2 PV趋势图
  • 15.5.3 客户端IP TOP10
  • 15.5.4 URI TOP10
  • 15.5.5 HTTP状态码分布
  • 15.6 收集Kubernetes集群中的应用日志
  • 15.6.1 如何收集这些日志
  • 15.6.2 在Kubernetes中搭建ELK日志系统
  • 15.6.3 收集Pod日志
  • 15.6.4 收集Pod中的日志文件
  • 15.7 本章小结
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

清华大学出版社

清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。