|
java自学网(www.javazx.com)-java论坛,java电子书推荐:《容器即服务:从零构建企业级容器集群》
, P4 s2 S! W- {- zjava电子书推荐理由:本书介绍了容器即服务的发展过程和主要技术,重点阐述当下主流的SwarmKit、Kubernetes、Mesos和Rancher 开源容器集群方案,并探讨了容器技术在网络、存储、监控、日志等方面的运用场景和基础知识,以及该领域在近年来的一些新的发展方向。本书适合一线架构师、开发者、运维人员以及技术管理者进行阅读。/ Q u# k" k/ F) d
9 v! O4 ~. D4 R- B
作者:林帆! C/ h$ ]. ~' H4 z
出版社:电子工业出版社
! j0 @- |$ y' ^/ u出版时间:2018年04月 9 e( I( V T& E: R, k' k$ M, w! E$ l
书籍价格:99.0元2 r1 }, _5 p- ]* h; J' z
% o# \. W+ i* [6 q9 U3 o0 Z' \
% I# y% u- `0 n1 N
# K/ P y$ ], \- d0 c( }( h
java电子书目录:$ A5 R& A. F; f7 F
第1 部分 基础概念
: c& @3 q3 v+ u) U6 W7 ^4 X0 ?第1 章 容器集群综述 21 \2 B! J: N2 v. ?9 d9 W" I
1.1 虚拟化与容器 2
. H9 G6 J: a* }! E1.1.1 计算资源虚拟化 20 C( Q: B. D) `6 W) ^* k
1.1.2 容器技术的本质 4
& Y& @( o# Z( x6 B" n" X1.1.3 基于容器的软件交付 131 C- t `& o4 T
1.2 容器集群与分布式服务 16
( l% I( k4 L% B0 X0 }1 @; B) [1.2.1 微服务架构 16& p0 [, Q2 e0 j$ k3 I! b/ @
1.2.2 容器集群生态圈 18
8 s7 o: X- Y% g* a) f1.3 容器即服务 261 J C; A4 x V
1.3.1 从基础设施到平台 26
2 W: W" q! ~& X1 ]' y4 @4 Y: Q- T1.3.2 数据中心操作系统 29! X9 N8 Q3 v4 w& `- U3 t
1.4 本章小结 31. @( i/ ^6 p; l* S" U5 B4 s: O9 ]$ L* {
第2 部分 解决方案
) o' ~, k' v7 M7 K4 r* P1 y9 a第2 章 SwarmKit 集群解决方案 35
$ y4 V/ H1 X0 Y% p2.1 开源容器集群方案 35( c- l* I6 Y t5 [% x0 |
2.1.1 容器社区的“四朵金花” 35
I/ _( l- J0 P+ e* ]$ S; v4 b+ u* s7 a2.1.2 经典Swarm、SwarmKit 和Swarm Mode 36
% [) ~; Y5 Z! n l' M2.2 使用SwarmKit 37
: a! ]( A- B. z- I2.2.1 SwarmKit 综述 37( G; G! @$ t2 W/ M; |8 D' S- U
2.2.2 创建SwarmKit 集群 40$ |5 j0 M: R4 f% j3 A+ Q. ~
2.2.3 在SwarmKit 集群上运行服务 43* I( ?- W! Q) \% [3 y, H
2.2.4 SwarmKit 集群的其他功能 45
& G" Q# c2 v! T* p5 M# y! t3 g5 J2.3 Docker Swarm Mode 45! e6 z2 [1 O' G: @
2.3.1 Swarm Mode 综述 45+ w/ L* A( x) ]- L* w5 L
2.3.2 集群的创建与销毁 46
5 }; H# c9 l* |9 W2.3.3 节点管理 48
! @* X, b A) F5 ?7 y2.3.4 服务管理 51! H- i, ?% H0 _3 _$ y
2.3.5 服务编排 javazx.com 56
8 W* Y/ I& g3 I/ S- ]2.3.6 应用栈的管理 63
0 S& U* N( {8 P3 S) w3 [2.3.7 外置配置和密文管理 66& e/ L g: X9 j5 d
2.4 Swarm Mode 的图形界面 69% Z2 |4 B' F- N8 j! a5 m4 H
2.4.1 Swarm Mode UI 现状 69
v) T2 `! t" ?2.4.2 Portainer 71* J$ K" M" X# G
2.5 本章小结 74) Z# W0 d# M* m: m2 M- }
第3 章 Kubernetes 集群解决方案 75* e" _" K, p( n; X% R
3.1 Kubernetes 集群概述 75! x4 I1 S) k, `5 X
3.1.1 Kubernetes 项目的起源 75
) `6 `- q3 `, {) \1 b" M9 J4 D3.1.2 Kubernetes 的结构 76
) C+ n6 i; E, x5 l9 C0 @3.1.3 基本概念 78; A: L, w) v- O) O+ i' f$ \( b
3.2 部署Kubernetes 集群 82
* r$ t% H! r; j2 T. O3.2.1 使用Minikube 82
@1 ]# w: P( |3.2.2 使用kubeadm 83
! q- O, l" q( W$ {: B. ~1 X3.2.3 理解Kubernetes 集群的部署过程 87
0 e* m/ g" [; n+ P% d3.2.4 验证集群可用性 96
. r, n: \% V2 W- B0 \3.3 使用Kubernetes 98
3 r! w8 w" g7 o1 K6 \1 m$ L3.3.1 通过Kubernetes 部署服务 98: k9 ?% W/ f$ \% f6 B; A
3.3.2 服务的在线更新和回滚 1036 c: c z- [1 o1 B& A* m
3.3.3 单次任务、定时任务和全局服务 1099 g9 a3 W$ p0 W; I4 s
3.3.4 持久化存储 113
! d- f4 J1 ~. h) L0 F" V( H3.3.5 配置存储 1167 {8 ?6 y$ B9 _) F, B
3.3.6 管理有状态的服务 122
% w$ a2 _/ y! m/ P/ A3.3.7 健康检查 1269 A4 B3 R8 Q5 H7 W$ x. @
3.3.8 提供对外服务 1274 m" m: B( x# A, L8 G+ Y) V
3.3.9 多租户隔离和配额 131
7 p% s V) A* M" H, z! u V3.3.10 集群的节点管理 135
& [) N' I/ W; u) p/ X0 `; l3.4 Kubernetes 包管理工具Helm 137' m: ^: Q5 [3 B* l$ m) J) q0 d+ A9 e
3.4.1 Helm 简介 137
/ }' {2 V/ G0 J$ i1 t% e$ p. z! m0 `3.4.2 使用Helm 管理服务 137, y9 f8 Q8 |* ?
3.4.3 自定义Chart 142
, W$ D3 M( a2 `) G3.4.4 Chart 仓库 146
. |8 x! A i* b1 A! f3.5 本章小结 147
* H2 O% ]; e1 i3 _6 D1 g3 Z& d第4 章 Mesos 集群解决方案 148
, d0 j: c" ?6 L, K' |/ W0 e& z4.1 Mesos 和DC/OS 概述 148
) A0 P0 ~2 K! ^% x* T4.1.1 Mesos 项目的起源 148
, N! X: x8 ?1 H# |; U4.1.2 Mesos 的结构 149+ Y- a; R6 b7 Z
4.1.3 Mesos 的内部构成 151
b0 I# M: ?7 Z( K4.1.4 DC/OS 数据中心操作系统 152- J! E) J- g, _8 s/ i
4.2 部署Mesos 集群 153
) d: t' z C: {; ^ f+ G5 c4.2.1 部署ZooKeeper 1536 P4 @# A9 x+ h
4.2.2 部署Mesos 157
' C$ L) M1 g, g: N! Y! E4.2.3 启动Master 节点 1580 i0 m( ?" u. S# O$ H
4.2.4 添加Agent 节点 161
( \" c. V% O1 D, B" @4.2.5 Mesos 服务的启动参数 164
1 |" F% B( u. H$ N+ V- {: h% y4.3 使用Marathon 管理服务 170
* E! f! z& q" O* ]) F4.3.1 部署Marathon 170
9 m/ ^1 ^1 p, Q* r8 F4.3.2 添加一个应用 172
% }+ L7 X _+ @" a `& H- D8 X( |4.3.3 使用DC/OS 命令行工具 1775 T, N7 \% E' Y
4.3.4 使用Docker 容器 177
3 S0 M3 @- H5 t: l; M% W4.3.5 使用Unified Container 179
: V( u1 @% i- R: C/ B2 y4.3.6 持久化卷存储 182
8 U5 g, C$ V3 x& P4.3.7 Marathon-LB 负载均衡 184
X+ Y* F1 z& I8 Q; B$ ^7 x5 |4.3.8 Mesos-DNS 域名服务 1888 p: i% n1 o" a! F B: I
4.3.9 服务依赖和编组 191
5 a0 H( d. b4 `9 r! }" \6 L1 Q& `4.3.10 应用升级 1942 d, i% }3 j" g9 B; o
4.3.11 调度约束 199
8 f6 G$ k) Y2 i5 V1 X; T4.3.12 健康检查 201
8 N2 L/ Q2 i* o6 ^8 g4.4 使用Chronos 203
3 M7 I6 `; y( \" q3 n4 ]4.4.1 部署Chronos 2035 O" k! P: H5 i5 h6 |
4.4.2 定时表达式 204
$ O! c& E# M* g" O0 E7 H' @4.4.3 创建定时任务 205/ O+ K0 b5 H5 b7 f( [) [( x
4.4.4 定时任务的依赖 208" e$ [0 l7 t& _$ s$ e
4.5 更多的Mesos 服务框架 209; x" z2 G% I; v+ r2 Y+ R
4.5.1 Mesos 服务框架的本质 209+ _; c4 g, D L; R' @, J
4.5.2 编写自己的Mesos 服务框架 2114 m/ e" k4 j9 ?# j, E
4.5.3 其他常见服务框架 216
. x) U5 w w7 \4.6 DC/OS 218
4 [1 W- K% E; Z+ i3 O4.6.1 DC/OS 简介 218
$ p1 q! M( _1 b0 q3 G4.6.2 部署DC/OS 219$ Q* D& m% g$ G8 ~" M( s
4.6.3 DC/OS 的操作 228
4 W7 Y0 }9 `9 K9 ]6 O4.6.4 DC/OS 命令行工具 230. v' l. i" X: `2 {5 Q# W
4.6.5 DC/OS 的应用仓库 231
# y! J, o' K, O7 o' k4.7 本章小结 234 F& u2 Y2 H; j1 @6 @
第5 章 Rancher 集群解决方案 235
% M1 y9 u9 ^. F( X4 F5.1 Rancher 集群概述 235
* T t# I' @. I6 z* L5.1.1 Rancher 项目的起源 235. F& o) s; f) u+ w! P6 C
5.1.2 Rancher 的结构 236
1 \5 M* i$ q5 R; E: t. o/ Q5.1.3 相关概念 237
* d3 ~! \4 f& w- Q( T' t* ?5.2 构建Rancher 集群 239
) s+ Z3 @- I# T2 F* I) m; N2 J4 V5.2.1 部署Server 节点 2395 o" Y) t# J% ^" D' o1 h
5.2.2 Server 节点的高可用部署方式 240
# x! Z" N- _) ^, a5 B& z0 u5.2.3 添加Agent 节点 241
; \6 ~2 s8 }. U# L, h* S7 _5.3 Rancher 的服务管理 243 L4 X) P; p* O* w0 r
5.3.1 使用Rancher Web UI 创建服务 243
% A1 W$ R4 w$ w+ n9 X3 |8 C K5.3.2 从容器 245 y- ?. Z9 \2 D% g3 C
5.3.3 特殊类型的服务 2475 n" l; Q- S- `% h: g$ f/ H: b
5.3.4 使用应用商店 251
/ L3 F" T; z: z& T5.3.5 服务编排 252
# m; e' l2 L0 S4 H- v! Z5.3.6 服务的升级和回滚 2547 o- k$ `8 h! |- Z
5.4 Rancher 使用进阶 256 p9 W6 y4 n6 Q8 t
5.4.1 Rancher 的标签 256
& [- L2 K0 l. P: [9 ~/ w X5.4.2 调度选项 257! E1 r9 w% ]( K1 K: i) Z
5.4.3 服务健康检查 258& [8 y/ q8 |/ E" Q8 [4 m, m8 P
5.4.4 Rancher 的元数据服务 260
2 P" K& `. u- `* B5.4.5 Rancher 的DNS 服务 262
3 ]* Z. a6 w5 W6 o3 j5.4.6 使用私有镜像仓库 263
+ s) a; M4 k, Z% X9 [5.4.7 Rancher 的Secret 服务 264
9 z! y% ?% r6 S) Q5.4.8 在应用商店添加自定义应用 265
( [& T( \' G* L) k8 _0 b* ?0 q. M+ _5.5 Rancher 的命令行工具 268/ R/ P% Z& T* I2 K. F4 y9 b8 i7 A+ s; |% K
5.5.1 配置Rancher 命令行工具 268
) s) q/ R9 t/ j d7 E6 m5.5.2 命令工具的基本使用 270
$ _4 p) B1 g5 X5.5.3 通过命令行进行服务编排 273
! s" R3 r J8 \: `1 s5.5.4 通过命令行进行服务升级 273
/ y$ Z, z) \( ?& F8 J8 }0 d7 b5.6 使用Rancher 安装Kubernetes 274
, p6 s5 ~3 |* W& u0 ?# W5.6.1 Rancher 的环境管理 274
2 |$ Q1 K, c5 V9 f$ @, h3 @5.6.2 在Rancher 中添加Kubernetes 环境 2761 {! q0 c5 _2 J6 g- y Q1 d$ G7 Q
5.6.3 在Rancher 中使用Kubernetes 279
+ F# F3 K1 S/ B5.7 本章小结 2821 Z4 R$ [! }2 m
第3 部分 技术周边
- V( @' f3 U! S0 }4 G- |! b第6 章 容器集群的网络和存储 284
7 T/ Q. h8 N$ v) Z' o% ?" h1 j+ T6.1 容器网络 284
8 |9 q% }3 N1 K4 E- f8 }9 a7 R6.1.1 容器网络标准 2842 X$ q1 @4 u( R4 C' a
6.1.2 本地网络 288
& n7 @& X5 t4 ~" {9 O9 y1 ]6.1.3 跨节点网络 293
. a. z ?" \- V3 g6 y; x: W, e& U- v. x6.1.4 使用Docker 内置的Overlay 类型网络 300
9 E- A. y% t' r) x$ n& K6.1.5 构建基于Flannel 的覆盖网络 301( e& j# Q0 A: D8 E' B/ L
6.1.6 构建基于Calico 的BGP 路由网络 306
7 \% B2 v; m) R( O2 N1 i6.2 容器存储 310
$ d; e, E7 }/ e6.2.1 容器实例和镜像的存储 310: |0 R% G, l R1 ?3 }
6.2.2 容器卷的存储 312
, x3 h6 F5 h( a! U5 G6 X( s$ J/ ?6.2.3 容器卷存储标准 316
e) O, f; q: Z8 L; ]1 d+ T$ G+ e6.2.4 基于NFS 的卷存储 317
, G3 {# S: B/ Z# n2 k- n: H6.2.5 基于Ceph 的卷存储 320# C& g& [: z+ L7 g4 J3 R% c% w( D% Y
6.2.6 使用公有云存储 330; v% _' q2 o: ]" l
6.3 本章小结 332
S0 q5 `$ W" p, f! p8 c8 ~2 }1 R) h第7 章 容器服务的基础设施 333
/ x3 J- R: u5 i8 F; R7.1 集群性能监控 333
( }0 M J; Q' [7.1.1 常见的开源性能监控方案 333& [$ o: d9 f$ `6 p' O# T
7.1.2 基于TICK Stack 的性能监控 335
0 Z5 w, k! j/ M' r5 L7.1.3 TICK Stack 的部署和使用 336/ N* i7 e0 w% O- S! S
7.1.4 基于Prometheus 的性能监控 341% r' q# b# P" G8 Q( Z$ r* h
7.1.5 Prometheus 的部署 343
6 y: ]# Y/ b6 s2 y: k' I% K7.1.6 Prometheus 的使用 353
) g6 J7 w; u* t+ h# C5 N7.2 集群日志管理 361. m: f- X) t9 X& N; `
7.2.1 常见的开源日志管理方案 361
- n7 D0 X; U6 o1 ` V7.2.2 基于Elastic Stack 的日志管理 363" g9 j C: G% ?+ n& `
7.2.3 基于Fluentd 的日志管理 372: V1 S7 v, Q0 f) Z2 t; w/ p. I: z. Z& U
7.3 服务发现 377: G" Z" s% s+ Z( s/ Y6 X1 m
7.3.1 常见的服务发现方案 377, c7 _: [, d/ D3 R) Q* l
7.3.2 Etcd 3790 m$ z7 p9 ]- t6 y# \' b5 r
7.3.3 Consul 390# B# D4 p& T a, j
7.4 镜像仓库 3986 B# A$ a, L* z) _ j) a( j. ?
7.4.1 容器镜像仓库概述 398
: S* V% ^ {4 n1 I7.4.2 Registry 399( c0 B' v9 {/ I/ F4 o8 }6 Z
7.4.3 Harbor 405
6 R3 V# [& k Q4 D) F) p7.5 本章小结 412
1 Q9 B8 Z/ O6 k: r( M第8 章 容器技术新风向 4133 n" A' R3 p) x0 O
8.1 安全的集群操作系统:Container Linux 413
# E( R1 Y9 X1 ^4 _8.1.1 Container Linux 概述 413. @. z1 ~& f8 u
8.1.2 Container Linux 的部署 416. s2 Y( J2 T* r6 l
8.1.3 Container Linux 的使用 418% a: b' _; G( x( q! Q
8.2 基于容器的操作系统:RancherOS 419
7 j S5 Q2 k) |" H1 D8.2.1 RancherOS 概述 4198 i" o6 d2 x8 m4 q) v d0 T
8.2.2 部署RancherOS 421' i' h# o: o/ K! k5 w9 G
8.2.3 RancherOS 的使用 4225 z5 }- b7 \7 p" X" ]6 ?
8.2.4 使用ros 工具管理系统 424, X4 L: X! E/ N! N* `+ X x/ Z
8.3 容器式的虚拟机:Hyper 429
5 m, D1 T! p% I9 J& g$ p, y( i8.3.1 Hyper 概述 429+ p* t9 F( S. \& L
8.3.2 部署Hyper 430
. w' Q. G( o3 P0 Y3 a" q8.3.3 Hyper 的使用 4313 Y6 P; Z# V; h
8.4 虚拟机式的容器:LXD 434
- h9 S: ^2 M3 z: f6 P8.4.1 LXD 概述 434
6 f' O6 R" g/ V! \1 \8.4.2 LXD 的安装和使用 435
) y# |2 W7 n1 h8.4.3 服务热迁移 440
+ ?' k5 g, j! ~% I8 z- c/ q. d8.5 容器与虚拟机的统一:Rkt 442
1 M! M4 ^0 f' r& ?* V) E% _8.5.1 Rkt 概述 442
& R1 v d4 [1 s- M8.5.2 Rkt 的安装和使用 4447 u0 D8 t5 M0 B
8.6 企业级定制容器:Pouch450( H$ d9 t% K: a7 [
8.6.1 Pouch 概述 450
+ a' i- h8 Y" \, A5 B8.6.2 Pouch 的开源生态 453
% ?+ [( x. H" a0 B% J" B8.6.3 体验Pouch 455
% f; X+ U- g- I; ^( d, o; T8.7 微内核操作系统:Unikernel 458
8 z8 ?, j! y9 V$ o$ h8.7.1 Unikernel 概述 458/ U9 y1 E: p- \
8.7.2 Unikernel 的发展 460) Q% z3 B+ T* D* \ t5 Y
8.7.3 体验Unikernel 462
& N( h; Y$ a" ]+ I; c ^8.8 本章小结 465 ( J. i' U, R& c3 v; [7 c
Java资料百度网盘下载地址链接(百度云):容器即服务:从零构建企业级容器集群@www.javazx.com.pdf【密码回帖可见】0 U K U: Z2 w9 M' z4 f* K
I" t n6 {) {) W! X2 S
# s: Q) z& J% U9 z$ ]! \6 ^. h# g( y6 y+ q: _
( a5 e4 ^% b8 d% n" t3 \$ @* Y1 L+ o, S( `
0 { s' M/ f( I6 @3 p% \' `
D0 \2 k9 C# w7 F3 g9 p |
|