新書推薦:
《
未来漫游指南:昨日科技与人类未来
》
售價:NT$
445.0
《
新民说·逝去的盛景:宋朝商业文明的兴盛与落幕(上下册)
》
售價:NT$
790.0
《
我从何来:自我的心理学探问
》
售價:NT$
545.0
《
失败:1891—1900 清王朝的变革、战争与排外
》
售價:NT$
390.0
《
送你一匹马(“我不求深刻,只求简单。”看三毛如何拒绝内耗,为自己而活)
》
售價:NT$
295.0
《
秦汉史讲义
》
售價:NT$
690.0
《
万千心理·我的精神分析之道:复杂的俄狄浦斯及其他议题
》
售價:NT$
475.0
《
荷马:伊利亚特(英文)-西方人文经典影印21
》
售價:NT$
490.0
|
編輯推薦: |
Docker是一个社区所有项目,它建立了容器化的行业标准;同时,世界上主要的云服务商和IT供应商都选择了Kubernetes作为默认的容器编排工具。这就要求所有的运维人员需要理解Docker,学会Kubernetes,这样才能更好地进行容器管理。
|
內容簡介: |
Docker已经成为行业中*火爆的开源技术,没有之一。而Kubernetes的诞生,更是使得Docker如虎添翼。越来越多的人开始投入到Docker和Kubernetes的开发和运维中去。本书是一本为初学者量身定做的入门教材,适合对容器技术了解不多,没有太多的相关开发和运维经验,但是又想掌握Kubernetes技术的读者使用,帮助他们快速地进入这个领域。 本书分为两篇共12章,*篇全面介绍Docker,包括Docker的基础知识、在主流操作系统上安装Docker的方法以及Docker的基本管理操作;第二篇详细介绍Kubernetes,主要包括Kubernetes基础知识、Kubernetes的安装方法、Kubernetes命令行管理工具、运行应用、访问应用、存储管理、软件包管理、网络管理以及Kubernetes的图形管理工具。 本书内容详尽、示例丰富,是广大Docker和Kubernetes初学者必备的参考书,同时也适合高等院校和培训学校计算机相关专业作为教材使用。
|
關於作者: |
罗利民, 毕业于武汉理工大学,获计算机应用技术工学硕士学位。本人主要从事网络安全,虚拟化应用技术等方面的研究。
|
目錄:
|
目 录
第1章 全面认识DOCKER 1
1.1 容器技术 1
1.1.1 什么是容器 1
1.1.2 容器与虚拟机之间的区别 3
1.1.3 容器究竟解决了什么问题 4
1.1.4 容器的优点 5
1.1.5 容器的缺点 6
1.1.6 容器的分类 7
1.2 DOCKER技术 8
1.2.1 什么是Docker 8
1.2.2 Docker的由来 9
1.2.3 Docker究竟是什么 9
1.3 DOCKER的架构与组成 10
1.3.1 Docker的架构 10
1.3.2 Docker中应用系统的存在形式 12
1.4 为什么使用DOCKER 12
1.4.1 Docker的应用场景 12
1.4.2 Docker可以解决哪些问题 13
1.4.3 Docker的应用成本 13
第2章 初步体验DOCKER 15
2.1 在WINDOWS中安装DOCKER 15
2.1.1 通过Boot2Docker体验Docker 15
2.1.2 通过Docker Desktop体验Docker 22
2.1.3 搭建第一个Docker应用:Hello world 25
2.2 在UBUNTU中安装DOCKER 27
2.2.1 通过远程仓库安装Docker 27
2.2.2 通过软件包安装Docker 28
2.2.3 测试安装的结果 29
第3章 DOCKER基本管理 30
3.1 镜像管理 30
3.1.1 查找镜像 30
3.1.2 下载镜像 31
3.1.3 列出本地镜像 32
3.1.4 删除镜像 32
3.1.5 查看镜像 32
3.1.6 构建镜像 35
3.1.7 镜像标签管理 37
3.2 容器管理 38
3.2.1 创建容器 38
3.2.2 查看容器 40
3.2.3 启动容器 41
3.2.4 停止容器 41
3.2.5 删除容器 42
3.3 网络管理 42
3.3.1 Docker网络原理 42
3.3.2 网络模式 44
3.3.3 Docker容器的互连 46
3.3.4 容器与外部网络的互连 47
第4章 KUBERNETES初步入门 49
4.1 KUBERNETES技术 49
4.1.1 什么是Kubernetes 49
4.1.2 Kubernetes的发展历史 49
4.1.3 为什么使用Kubernetes 50
4.2 KUBERNETES重要概念 51
4.2.1 Cluster(集群) 51
4.2.2 Master(主控) 51
4.2.3 Node(节点) 52
4.2.4 Pod 53
4.2.5 服务 53
4.2.6 卷 54
4.2.7 命名空间 54
第5章 安装KUBERNETES 55
5.1 通过软件包管理工具安装KUBERNETES 55
5.1.1 软件包管理工具 55
5.1.2 节点规划 56
5.1.3 安装前准备 57
5.1.4 etcd集群配置 57
5.1.5 Master节点的配置 63
5.1.6 Node节点的配置 65
5.1.7 配置网络 68
5.2 通过二进制文件安装KUBERNETES 69
5.2.1 安装前准备 69
5.2.2 部署etcd 73
5.2.3 部署flannel网络 76
5.2.4 部署Master节点 77
5.2.5 部署Node节点 80
5.3 通过源代码安装KUBERNETES 83
5.3.1 本地二进制文件编译 83
5.3.2 Docker镜像编译 84
第6章 KUBERNETES命令行工具 85
6.1 KUBECTL的使用方法 85
6.1.1 kubectl用法概述 85
6.1.2 kubectl子命令 87
6.1.3 Kubernetes资源对象类型 89
6.1.4 kubectl输出格式 90
6.1.5 kubectl命令举例 90
6.2 KUBEADM的使用方法 93
6.2.1 kubeadm安装方法 94
6.2.2 kubeadm基本语法 95
6.2.3 部署Master节点 95
6.2.4 部署Node节点 97
6.2.5 重置节点 97
第7章 运行应用 99
7.1 DEPLOYMENT 99
7.1.1 什么是Deployment 99
7.1.2 Deployment与ReplicaSet 100
7.1.3 运行Deployment 100
7.1.4 使用配置文件 107
7.1.5 扩容和缩容 112
7.1.6 故障转移 114
7.1.7 通过标签控制Pod的位置 116
7.1.8 删除Deployment 118
7.1.9 DaemonSet 118
7.2 JOB 121
7.2.1 什么是Job 121
7.2.2 Job失败处理 123
7.2.3 Job的并行执行 124
7.2.4 Job的定时执行 125
第8章 通过服务访问应用 127
8.1 服务及其功能 127
8.1.1 服务基本概念 127
8.1.2 服务的功能原理 128
8.2 管理服务 129
8.2.1 创建服务 129
8.2.2 查看服务 132
8.2.3 删除服务 133
8.3 外部网络访问服务 133
8.3.1 kube-proxy结合ClusterIP 134
8.3.2 通过NodePort访问服务 135
8.3.3 通过负载均衡访问服务 137
8.4 通过COREDNS访问应用 138
8.4.1 CoreDNS简介 138
8.4.2 安装CoreDNS 138
第9章 存储管理 147
9.1 存储卷 147
9.1.1 什么是存储卷 147
9.1.2 emptyDir卷 148
9.1.3 hostPath卷 151
9.1.4 NFS卷 152
9.1.5 Secret卷 153
9.1.6 iSCSI卷 156
9.2 持久化存储卷 157
9.2.1 什么是持久化存储卷 157
9.2.2 持久化存储卷请求 157
9.2.3 持久化存储卷的生命周期 158
9.2.4 持久化存储卷静态绑定 159
9.2.5 持久化存储卷动态绑定 162
9.2.6 回收 167
第10章 KUBERNETES软件包管理 170
10.1 HELM 170
10.1.1 Helm相关概念 170
10.1.2 Tiller 171
10.1.3 Chart 171
10.1.4 Repository 171
10.1.5 Release 171
10.2 安装HELM 172
10.2.1 安装客户端 172
10.2.2 安装服务器端Tiller 174
10.3 CHART文件结构 176
10.4 使用HELM 177
10.4.1 软件仓库的管理 177
10.4.2 查找Chart 178
10.4.3 安装Chart 180
10.4.4 查看已安装Chart 183
10.4.5 删除Release 183
第11章 KUBERNETES网络管理 185
11.1 KUBERNETES网络基础 185
11.1.1 Kubernetes网络模型 185
11.1.2 命名空间 186
11.1.3 veth网络接口 186
11.1.4 netfilteriptables 187
11.1.5 网桥 187
11.1.6 路由 187
11.2 KUBERNETES网络实现 188
11.2.1 Docker与Kubernetes网络比较 188
11.2.2 容器之间的通信 192
11.2.3 Pod之间的通信 194
11.2.4 Pod和服务之间的通信 197
11.3 FLANNEL 206
11.3.1 Flannel简介 206
11.3.2 安装Flannel 207
第12章 KUBERNETES DASHBOARD 212
12.1 KUBERNETES DASHBOARD配置文件 212
12.1.1 Kubernetes角色控制 212
12.1.2 kubernetes-dashboard.yaml 213
12.2 安装KUBERNETES DASHBOARD 218
12.2.1 官方安装方法 219
12.2.2 自定义安装方法 219
12.3 DASHBOARD使用方法 222
12.3.1 Dashboard概况 222
12.3.2 通过Dashboard创建资源 224
写在最后 226
|
內容試閱:
|
前 言
读懂本书
还在用虚拟机?是时候开始用Docker了
未来五年引领云计算发展的核心技术必然是容器技术。现在越来越多的IT公司逐渐抛弃传统的虚拟化技术,而转向轻量化的容器技术。
主流云服务商已经开始支持Docker
云服务提供商,包括微软、IBM、Rackspace、Google以及其他主要的Linux提供商如Canonical和Red Hat,都开始支持 Docker。
Docker和Kubernetes如何改变传统的虚拟化技术?
Docker和Kubernetes给虚拟化技术带来了革命性的改变,给开发人员以及系统管理员提供了一个平台,使配置和部署分布式应用变得更加容易,让应用真正实现零宕机。
本书真的适合你吗?
本书帮你从传统的虚拟化技术过渡到Docker,再过渡到Kubernetes时代;本书全面而又简洁地介绍了Docker,轻松扫除初学者学习本书的障碍;本书从最简单的例子出发,逐步深入,使得读者能够在轻松愉快的过程中,学习到新的技术;本书摒弃了过多的理论介绍,突出了日常开发和运维必需的知识点,可谓去芜存菁,取精用宏。
本书涉及的技术或框架
虚拟化 容器Docker
Linux Linux Container Git
版本控制Nginx反向代理
防火墙 路由OSI七层网络模型
子网 网桥集群
NFS iSCSISAN
Hyper-V VMware Workstation Pro域名解析
本书涉及的示例和案例
第一个Docker应用:Hello world通过二进制文件安装Kubernetes
在Ubuntu中体验Docker kubectl管理资源对象
容器的创建、查看、启动、停止以及删除 管理Deployment
Docker的网络模式 通过Job实现倒计时
通过软件包管理工具安装Kubernetes 管理服务
通过源代码安装Kubernetes通过NodePort实现外部访问
kubeadm部署Kubernetes 存储卷管理
管理DaemonSet通过Helm管理应用
在Windows中体验Docker kube-proxy和ClusterIP实现外部访问
Docker镜像的查找、下载、列举、删除、 通过负载均衡实现外部访问
查看、构建以及标签管理 持久化存储卷管理
容器的互联在Kubernetes集群中部署Tomcat
本书特点
(1)本书不论是理论知识的介绍,还是实例的选择,都是从实际应用的角度出发,精心选择运维和开发过程中典型例子,讲解细致,分析透彻。
(2)深入浅出、轻松易学,以Docker和Kubernetes重要知识点为主线,激发读者的阅读兴趣,让读者能够真正学习到Docker和Kubernetes实用、前沿的技术。
(3)技术新颖、与时俱进,结合时下最热门的技术,如微服务、集群以及自动化运维等,让读者在学习Docker和Kubernetes的同时,扩大知识面,了解和掌握更多的、更先进的运维技术。
(4)贴近读者、贴近实际,大量成熟技巧和经验的介绍,帮助读者快速找到问题的最佳答案,及时解决运维和开发过程中遇到的问题。
(5)贴心提醒,本书根据需要在各章使用了很多注意提示等小提示,让读者可以在学习过程中更轻松地理解相关概念及知识点。
(6)本书汇集了作者大量的实战经验,不仅可以作为入门教程,还可以作为运维和开发的参考书。
本书读者
? IT实施和运维工程师
? 软件开发工程师
? 对云服务技术感兴趣,并希望进一步学习的中高级技术人员
? 系统管理员
? 云端原生开发人员
? 想了解容器和Kubernetes技术的初学者
? 想从Docker转移到Kubernetes的技术人员
本书第1~10章由平顶山学院的罗利民创作,第11~12章由张春晓创作。
作 者
2019年5月
|
|