Docker——容器与容器云(第2版)

Docker——容器与容器云(第2版)

出版信息

浙江大学SEL实验室 / 人民邮电出版社 / 2016-10 / 89.00元

内容简介

本书根据Docker 1.10版和Kubernetes 1.2版对第1版进行了全面更新,从实践者的角度出发,以Docker和Kubernetes为重点,沿着“基本用法介绍”到“核心原理解读”到“高级实践技巧”的思路,一本书讲透当前主流的容器和容器云技术,有助于读者在实际场景中利用Docker容器和容器云解决问题并启发新的思考。全书包括两部分,第一部分深入解读Docker容器技术,包括Docker架构与设计、核心源码解读和高级实践技巧;第二部分归纳和比较了三类基于Docker的主流容器云项目,包括专注Docker容器编排与部署的容器云、专注应用支撑的容器云以及一切皆容器的Kubernetes,进而详细解读了Kubernetes核心源码的设计与实现,最后介绍了几种典型场景下的Kubernetes最佳实践。

作者简介

浙江大学软件工程实验室(Software Engineering Lab,SEL)

云计算团队组建于2011年,组织博士和硕士研究生搭建、分析和钻研开源的云计算技术,包括Docker、Kubernetes、Cloud Foundry、OpenStack、CloudStack、Eucalyptus、Convirt、OpenShift等,积极为开源社区贡献代码,管理和参与线上线下讨论社区,参加国内外云计算技术峰会并发言。以开源社区为技术交流研发平台,浙江大学SEL实验室在几年的时间里成长为一个充满热情、富有能力的云计算研发团队,也在国内外开源云计算社区,尤其是在Docker、Kubernetes和Cloud Foundry社区得到了广泛认可。

目录

第一部分 Docker深入解读
第1章 从容器到容器云  2
1.1 云计算平台  2
1.2 容器,新的革命  3
1.3 进化:从容器到容器云  7
第2章 Docker 基础  8
2.1 Docker的安装  8
2.2 Docker操作参数解读  9
2.3 搭建你的第一个Docker应用栈  16
2.3.1 Docker集群部署  16
2.3.2 第一个Hello World  17
2.3.3 开发、测试和发布一体化  27
第3章 Docker核心原理解读  28
3.1 Docker背后的内核知识  28
3.1.1 namespace资源隔离  28
3.1.2 cgroups资源限制  45
3.2 Docker架构概览  53
3.2.1 Docker daemon  54
3.2.2 Docker client  54
3.2.3 镜像管理  54
3.2.4 execdriver、volumedriver、graphdriver  55
3.2.5 network  55
3.3 client和daemon  56
3.3.1 client模式  56
3.3.2 daemon模式  58
3.3.3 从client到daemon  64
3.4 libcontainer  67
3.4.1 libcontainer的工作方式  69
3.4.2 libcontainer实现原理  70
3.4.3 使用runC与libcontainer进行交互  75
3.5 Docker镜像管理  77
3.5.1 什么是Docker镜像  77
3.5.2 Docker镜像关键概念  80
3.5.3 Docker镜像构建操作  81
3.5.4 Docker镜像的分发方法  84
3.6 Docker存储管理  87
3.6.1 Docker镜像元数据管理  87
3.6.2 Docker存储驱动  89
3.7 Docker数据卷  99
3.7.1 数据卷的使用方式  100
3.7.2 数据卷原理解读  105
3.8 Docker网络管理  108
3.8.1 Docker网络基础  108
3.8.2 Docker daemon网络配置原理  116
3.8.3 libcontainer网络配置原理  119
3.8.4 传统的link原理解析  125
3.8.5 新的link介绍  127
3.9 Docker与容器安全  129
3.9.1 Docker的安全机制  129
3.9.2 Docker安全问题  135
3.9.3 Docker安全的解决方案  139
第4章 Docker 高级实践技巧  151
4.1 容器化思维  151
4.1.1 SSH服务器的替代方案  151
4.1.2 Docker内应用日志管理方案  152
4.1.3 容器化思维及更多  153
4.2 Docker高级网络实践  153
4.2.1 玩转Linux networknamespace  154
4.2.2 pipework原理解析  159
4.2.3 pipework跨主机通信  165
4.2.4 OVS划分VLAN  170
4.2.5 OVS隧道模式  174
4.3 Dockerfile最佳实践  187
4.3.1 Dockerfile的使用  187
4.3.2 Dockerfile实践心得  191
4.4 Docker容器的监控手段  193
4.4.1 Docker容器监控维度  194
4.4.2 容器监控命令  195
4.4.3 常用的容器监控工具  197
4.5 容器化应用构建的基础:高可用配置中心  201
4.5.1 etcd经典应用场景  201
4.5.2 etcd实现原理  206
第二部分 Docker云平台解读
第5章 构建自己的容器云  222
5.1 再谈云平台的层次架构  222
5.2 从小工到专家  225
第6章 专注编排与部署:三剑客与Fleet  230
6.1 编排小神器Fig/Compose  230
6.1.1 再谈容器编排与部署  230
6.1.2 Compose原理:一探究竟  233
6.2 跨平台宿主环境管理工具Machine  237
6.2.1 Machine与虚拟机软件  237
6.2.2 Machine与IaaS平台  238
6.2.3 Machine小结  239
6.3 集群抽象工具Swarm  240
6.3.1 Swarm简介  240
6.3.2 试用Swarm  241
6.3.3 Swarm集群的多种创建方式  243
6.3.4 Swarm对请求的处理  245
6.3.5 Swarm集群的调度策略  245
6.3.6 Swarm集群高可用(HA)  246
6.3.7 Swarm与Machine  247
6.3.8 Swarm小结  248
6.4 编排之秀Fleet  248
6.4.1 旧问题新角度:Docker distro  249
6.4.2 Fleet的原理剖析  252
第7章 专注应用支撑和运行时:Flynn和Deis  258
7.1 Flynn,一个小而美的两层架构  258
7.1.1 第0层:容器云的基础设施  259
7.1.2 第1层:容器云的功能框架  259
7.1.3 Flynn体系架构与实现原理  260
7.2 谈谈Deis与Flynn  270
7.2.1 应用发布上的比较  271
7.2.2 关于Deis的一些思考  273
第8章 一切皆容器:Kubernetes  274
8.1 Kubernetes是个什么样的项目  274
8.2 Kubernetes的设计解读  275
8.2.1 一个典型案例:Guestbook  275
8.2.2 pod设计解读  277
8.2.3 replication controller设计解读  288
8.2.4 service的设计解读  294
8.2.5 新一代副本控制器replica set  306
8.2.6 Deployment  307
8.2.7 DaemonSet  312
8.2.8 ConfigMap  312
8.2.9 Job  317
8.2.10 Horizontal Pod Autoscaler  318
8.3 Kubernetes核心组件解读  320
8.3.1 Kubernetes的整体架构  320
8.3.2 APIServer  321
8.3.3 scheduler  328
8.3.4 controller manager  338
8.3.5 kubelet  346
8.3.6 kube-proxy  352
8.3.7 核心组件协作流程  362
8.4 Kubernetes存储核心原理  366
8.4.1 volume设计解读  366
8.4.2 volume实现原理分析  367
8.4.3 volume使用案例  368
8.4.4 persistent volume  371
8.5 Kubernetes网络核心原理  372
8.5.1 单pod单IP模型  373
8.5.2 pod和网络容器  374
8.5.3 实现Kubernetes的网络模型  377
8.6 Kubernetes多租户管理与资源控制  381
8.6.1 namespace设计解读  381
8.6.2 Kubernetes用户认证机制  385
8.6.3 Kubernetes用户授权机制  387
8.6.4 Kubernetes多维资源管理机制admission control  390
8.7 Kubernetes高级实践  402
8.7.1 应用健康检查  402
8.7.2 高可用性  405
8.7.3 日志  408
8.7.4 集成DNS  410
8.7.5 容器上下文环境  412
8.8 Kubernetes未来动向  414
8.8.1 Ubernetes  414
8.8.2 petSet  415
8.8.3 performance  417
8.8.4 rescheduler  417
8.8.5 OCI标准  419
8.9 不要停止思考  419
第三部分 附录
附录A Docker的安装  424
附录B 阅读Docker源代码的神兵利器  432
附录C 快速熟悉开源项目  441
附录D cgroups的测试与使用  444
附录E cgroups子系统配置参数介绍  448
附录F Kubernetes的安装  453
后记  457

本文地址:https://www.codercto.com/books/d/688.html

JS 压缩/解压工具

JS 压缩/解压工具

在线压缩/解压 JS 代码

HTML 编码/解码

HTML 编码/解码

HTML 编码/解码

HEX HSV 转换工具

HEX HSV 转换工具

HEX HSV 互换工具