• 《赵渝强》《Docker+Kubernetes容器实战派》新书上市!!!


    用一本书掌握Docker与Kubernetes核心内容!!!

    本书基于作者多年的教学与实践经验编写,分为上下两篇,共20章。

    • 上篇(第1~11章)介绍Docoker,包含:Docker入门、Docker的镜像、Docker的容器、Docker的网络通信、使用Docker Compose进行服务编排、使用Docker Machine进行远程管理、使用Docker Swarm构建集群、在Docker中实现持续集成与持续部署、基于Consul实现Docker的服务注册与发现、利用图形工具管理Docker及Docker应用实战。
    • 下篇(第12~20章)介绍Kubernetes,包含:Kubernetes体系架构、部署Kubernetes集群、Kubernetes中的最小可部署对象Pod、使用控制器管理Pod、通过Service访问Pod、持久化存储、Kubernetes的安全认证、Kubernetes中的日志收集与监控、Kubernetes集成与运维管理。

    本书目录
    上篇 Docker从原理到实战


    第1章 Docker入门
    1.1 为什么需要容器技术
    1.2 Docker简介
    1.3 Docker的体系架构与基本概念
    1.4 安装Docker
    1.4.1 安装Linux操作系统 /6
    1.4.2 使用YUM方式安装Docker /16
    1.4.3 使用二进制包方式安装Docker /18
    1.4.4 验证Docker环境 /21
    1.5 【实战】在Docker中部署第一个应用

    第2章 Docker的镜像
    2.1 什么是Docker的镜像
    2.1.1 使用Docker默认的镜像存储路径 /27
    2.1.2 自定义Docker的镜像存储路径 /28
    2.2 使用Docker的公有镜像仓库
    2.2.1 【实战】访问Docker官方的公有镜像仓库 /29
    2.2.2 【实战】配置和使用阿里云Docker镜像加速仓库 /32
    2.3 使用命令行工具管理Docker的镜像
    2.4 构建自己的镜像
    2.4.1 【实战】使用“docker commit”命令构建镜像 /36
    2.4.2 【实战】使用Dockerfile文件构建镜像 /39
    2.4.3 Dockerfile文件详解 /40
    2.4.4 【实战】使用Dockerfile文件的综合案例 /42
    2.5 搭建私有镜像仓库Harbor
    2.5.1 安装Docker和Docker Compose /45
    2.5.2 安装与配置Harbor /46
    2.5.3 【实战】在Docker中使用Harbor /48

    第3章 Docker的容器
    3.1 Docker容器的基本概念与操作
    3.2 Docker的日志
    3.2.1 【实战】访问Docker引擎的日志 /53
    3.2.2 【实战】访问Docker应用的日志 /54
    3.3 管理容器的资源
    3.3.1 什么是Linux CGroup /56
    3.3.2 【实战】Docker对CPU的使用 /62
    3.3.3 【实战】Docker对内存的使用 /64
    3.3.4 【实战】Docker对I/O带宽的使用 /65
    3.4 管理Docker容器中的数据
    3.4.1 在Docker容器中实现数据管理的两种方式 /67
    3.4.2 【实战】使用数据卷管理Docker容器中的数据 /68
    3.4.3 【实战】使用数据卷容器管理Docker容器中的数据 /71

    第4章 Docker的网络通信
    4.1 Docker容器网络通信的基本原理
    4.2 使用命令查看Docker的网络配置信息
    4.3 Docker的4种网络通信模式
    4.3.1 bridge模式 /80
    4.3.2 host模式 /82
    4.3.3 container模式 /83
    4.3.4 none模式 /85
    4.4 容器间的通信
    4.4.1 【实战】通过IP地址进行通信 /86
    4.4.2 【实战】通过Docker DNS Server进行通信 /87
    4.4.3 【实战】通过Joined方式进行通信 /88
    4.4.4 容器间的跨节点通信 /89
    4.5 容器的网络访问控制
    4.5.1 容器内的应用访问外部网络 /95
    4.5.2 从外部网络访问容器内的应用 /96

    第5章 使用Docker Compose进行服务编排
    5.1 配置Docker Compose
    5.2 进行服务编排
    5.2.1 【实战】使用手动方式部署应用 /99
    5.2.2 【实战】使用Docker Compose部署应用 /101
    5.2.3 【实战】使用Docker Compose进行服务的在线扩容/缩容 /102
    5.2.4 【实战】在Docker Compose中控制模块启动和停止的顺序 /104
    5.3 Docker Compose中的网络
    5.3.1 Docker Compose中的默认网络环境 /108
    5.3.2 在Docker Compose中自定义模块的网络环境 /109

    第6章 使用Docker Machine进行远程管理
    6.1 使用Docker Machine
    6.1.1 安装Docker Machine /112
    6.1.2 在远端宿主机上安装Docker /112
    6.2 Docker Machine的基本用法
    6.2.1 【实战】使用Docker Machine的命令 /115
    6.2.2 【实战】管理远端的Docker节点 /116
    6.3 Docker Machine的高级用法
    6.3.1 【实战】使用Docker Machine创建基于VirtualBox的虚拟主机 /118
    6.3.2 【实战】使用Docker Machine创建基于vSphere的虚拟主机 /120

    第7章 使用Docker Swarm构建集群
    7.1 Docker Swarm集群的体系架构
    7.2 构建Docker Swarm集群
    7.3 在Docker Swarm集群中部署应用与HAProxy
    7.3.1 【实战】在集群中部署应用 /126
    7.3.2 【实战】测试集群的高可用性 /128
    7.3.3 【实战】使用HAProxy为集群添加外部负载均衡功能 /130
    7.3.4 【实战】实现服务的滚动更新 /131
    7.4 Docker Swarm集群的数据持久化
    7.4.1 【实战】通过volume实现集群的数据持久化 /133
    7.4.2 【实战】通过NFS实现集群的数据持久化 /134
    7.5 Docker Swarm集群的负载均衡
    7.5.1 【实战】测试Docker Swarm集群的负载均衡 /138
    7.5.2 选择Docker Swarm集群的负载均衡模式 /139

    第8章 在Docker中实现持续集成与持续部署
    8.1 什么是持续集成与持续部署(CI/CD)
    8.2 Jenkins简介与部署
    8.2.1 Docker与Jenkins集成的体系架构 /143
    8.2.2 【实战】部署Jenkins /144
    8.2.3 【实战】使用Jenkins部署第一个应用 /146
    8.3 基于Jenkins实现Docker应用的持续集成与持续部署
    8.3.1 【实战】准备私有代码仓库SVN /150
    8.3.2 开发Dockerfile文件 /152
    8.3.3 【实战】集成Jenkins和Docker /152

    第9章 基于Consul实现Docker的服务注册与发现
    9.1 服务的注册与发现
    9.1.1 什么是服务的注册与发现 /155
    9.1.2 为什么需要服务的注册与发现 /156
    9.1.3 常见的服务注册中心 /159
    9.2 注册中心Consul的基本使用
    9.2.1 Consul的安装与启动 /160
    9.2.2 【实战】使用JSON文件在Consul中注册服务 /161
    9.2.3 【实战】使用API在Consul中注册服务 /163
    9.3 集成Consul与Docker
    9.3.1 Docker服务注册与发现的体系架构 /166
    9.3.2 【实战】使用Registrator镜像实现Docker服务的注册 /167
    9.3.3 【实战】使用Consul-Template实现Docker服务的发现 /170

    第10章 利用图形工具管理Docker
    10.1 单机环境中的Docker图形工具:Docker UI
    10.1.1 部署Docker UI /173
    10.1.2 【实战】使用Docker UI管理镜像与容器 /174
    10.2 轻量级的Docker图形工具:Portainer
    10.2.1 在单机环境中部署Portainer /177
    10.2.2 【实战】使用Portainer管理Docker的镜像与容器 /179
    10.2.3 【实战】使用Portainer管理远端主机上的Docker /180
    10.2.4 在Docker Swarm集群中部署Portainer /182
    10.3 开源的Docker图形工具――Shipyard
    10.3.1 Shipyard的组件 /184
    10.3.2 部署Shipyard /184
    10.3.3 【实战】使用Shipyard创建容器 /187

    第11章 Docker应用实战
    11.1 Docker与数据库
    11.1.1 在Docker容器中部署MySQL /188
    11.1.2 数据库不适合Docker容器化的原因 /189
    11.2 【实战】Docker与Python
    11.3 【实战】Docker与PHP /192

    下篇 Kubernetes从原理到实战


    第12章 Kubernetes体系架构
    12.1 什么是Kubernetes
    12.2 Kubernetes集群
    12.2.1 集群的架构体系 /198
    12.2.2 Kubernetes的核心组件 /198
    12.2.3 Kubernetes的常用附加组件 /199
    12.3 Kubernetes的对象
    12.3.1 对象的管理 /200
    12.3.2 对象与命名空间 /201
    12.3.3 对象的标签 /202

    第13章 部署Kubernetes集群
    13.1 Kubernetes的部署方式
    13.1.1 使用kubeadmin部署Kubernetes集群 /204
    13.1.2 使用YUM方式部署Kubernetes集群 /208
    13.1.3 使用二进制包部署Kubernetes集群 /212
    13.1.4 使用minikube工具部署Kubernetes单机版集群 /231
    13.1.5 Kubernetes集群的高可用 /236
    13.2 Kubernetes的客户端工具
    13.2.1 Kubernetes图形管理工具――DashBoard UI /237
    13.2.2 Kubernetes命令行管理工具――kubectl /240
    13.3 【实战】使用Kubectl在Kubernetes中部署第一个应用

    第14章 Kubernetes中的最小可部署对象Pod
    14.1 什么是Pod
    14.2 【实战】Pod的基本使用方法
    14.3 Pod中的容器
    14.3.1 基础容器 /251
    14.3.2 初始化容器 /252
    14.3.3 临时容器 /253
    14.3.4 业务容器 /254
    14.4 Pod的生命周期
    14.4.1 Pod的阶段与容器的状态 /255
    14.4.2 Pod中容器的重启策略 /256
    14.4.3 【实战】Pod的健康检查 /257
    14.5 Pod的调度策略
    14.5.1 Pod的创建过程 /262
    14.5.2 【实战】自定义Pod调度的约束策略 /262
    14.6 Pod资源的使用限制
    14.7 Pod的镜像拉取策略
    14.8 Pod的配置管理
    14.8.1 为什么需要配置管理 /268
    14.8.2 【实战】使用ConfigMap管理Pod的配置信息 /268
    14.8.3 【实战】使用Secret管理Pod的配置信息 /275

    第15章 使用控制器管理Pod
    15.1 为什么需要控制器
    15.2 Deployment控制器
    15.2.1 【实战】创建和使用Deployment控制器 /282
    15.2.2 【实战】验证Deployment控制器的不同状态 /286
    15.2.3 【实战】Deployment控制器的清理策略 /289
    15.2.4 应用的部署 /292
    15.2.5 编写Deployment控制器的规则 /304
    15.3 DaemonSet控制器
    15.3.1 DaemonSet控制器的创建 /305
    15.3.2 DaemonSet控制器的调度 /307
    15.4 Job控制器
    15.4.1 【实战】单工作队列的Job串行方式 /307
    15.4.2 【实战】多工作队列的Job并行方式 /308
    15.4.3 Job的终止与清理 /310
    15.5 CronJob控制器
    15.5.1 【实战】运行第一个CronJob控制器 /313
    15.5.2 CronJob控制器中的时间表示 /314
    15.5.3 CronJob控制器的限制 /315
    15.6 StatefulSets控制器
    15.6.1 【实战】创建StatefulSets控制器 /316
    15.6.2 StatefulSets控制器的扩容/缩容 /317
    15.6.3 StatefulSets控制器的更新/回滚 /318

    第16章 通过Service访问Pod
    16.1 Service的概念与使用
    16.1.1 【实战】通过Service向外部暴露Pod /321
    16.1.2 Service的多端口设置 /323
    16.1.3 集群内部的DNS服务 /324
    16.1.4 【实战】无头Service /325
    16.2 Service的发布类型
    16.2.1 NodePort /328
    16.2.2 ClusterIP /329
    16.2.3 LoadBalance /331
    16.2.4 ExternalName /332
    16.3 虚拟IP与Service的代理模式
    16.3.1 userspace代理模式 /333
    16.3.2 iptables代理模式 /334
    16.3.3 IPVS代理模式 /336
    16.4 集群外部的请求访问集群内应用的最佳方式――Ingress
    16.4.1 Ingress是什么 /339
    16.4.2 【实战】使用Ingress Controller创建Ingress /340
    16.4.3 【实战】使用Ingress的注解 /344
    16.4.4 基于Ingress的高可用架构 /348

    第17章 持久化存储
    17.1 Kubernetes持久化存储方式
    17.1.1 【实战】使用节点数据卷 /350
    17.1.2 【实战】使用网络数据卷 /351
    17.1.3 【实战】使用临时数据卷 /353
    17.2 持久卷
    17.2.1 持久卷是什么 /355
    17.2.2 【实战】第一个持久卷示例 /355
    17.2.3 持久卷的访问模式 /357
    17.2.4 【实战】持久卷的回收策略 /359
    17.3 持久卷声明
    17.3.1 持久卷和持久卷声明的区别 /361
    17.3.2 【实战】在Pod中使用持久卷声明 /362
    17.3.3 storageClass详解 /364
    17.4 【实战】实现持久卷的动态供给

    第18章 Kubernetes的安全认证
    18.1 Kubernetes的安全框架
    18.2 Kubernetes的用户认证
    18.3 Kubernetes的鉴权管理
    18.3.1 基于角色的访问控制(RBAC鉴权) /379
    18.3.2 基于属性的访问控制(ABAC鉴权) /384
    18.3.3 基于节点的访问控制(node鉴权) /386
    18.3.4 基于Webhook的访问控制 /387
    18.4 管理服务账号(Service Account)
    18.4.1 服务账号与用户账号 /391
    18.4.2 【实战】创建和使用服务账号 /391
    18.4.3 服务账号的工作机制 /396

    第19章 Kubernetes中的日志收集与监控
    19.1 收集哪些日志
    19.2 日志收集方案
    19.2.1 初识ELK /399
    19.2.2 日志收集的架构 /399
    19.2.3 日志收集方案详解 /400
    19.3 实现Kubernetes集群的日志收集
    19.3.1 安装ELK /402
    19.3.2 【实战】采集Kubernetes系统组件的日志 /405
    19.3.3 【实战】采集Nginx 应用的日志 /410
    19.3.4 【实战】采集Tomcat应用的日志 /414
    19.4 监控Kubernetes
    19.4.1 Kubernetes监控方案 /418
    19.4.2 【实战】部署Kubernetes监控系统 /419

    第20章 Kubernetes集成与运维管理
    20.1 Jenkins与Kubernetes的持续集成与持续部署
    20.1.1 基于Kubernetes的Jenkins集群架构 /427
    20.1.2 【实战】Jenkins与Kubernetes的集成 /428
    20.2 使用Helm简化Kubernetes应用的部署和管理
    20.2.1 什么是Helm /435
    20.2.2 部署Helm /435
    20.2.3 【实战】使用Helm管理Kubernetes /437

  • 相关阅读:
    vim编辑器基本操作及文件权限,sudo命令等介绍
    centos的基本命令04
    linux的sed(增删改查)使用方法
    rm: cannot remove `xxx’: Operation not permitted问题的处理方案
    迅为iTOP-4412物联网开发板入门学习高手进阶项目开发超树莓派
    迅为I.MX6Q开发板配不同分辨率不同尺寸液晶屏幕
    iTOP-4412开发板-实战教程-ssh服务器移植到arm开发板
    iTOP-4412开发板全新升级支持4G全网通模块
    迅为iMX6UL开发板低功耗高能效开发平台
    iTOP-4418/6818开发板支持双屏异显,双屏同显
  • 原文地址:https://www.cnblogs.com/collen7788/p/16355072.html
Copyright © 2020-2023  润新知