|
java自学网(www.javazx.com)-java论坛,java电子书推荐:《容器即服务:从零构建企业级容器集群》
* @" O9 F" U9 F& |java电子书推荐理由:本书介绍了容器即服务的发展过程和主要技术,重点阐述当下主流的SwarmKit、Kubernetes、Mesos和Rancher 开源容器集群方案,并探讨了容器技术在网络、存储、监控、日志等方面的运用场景和基础知识,以及该领域在近年来的一些新的发展方向。本书适合一线架构师、开发者、运维人员以及技术管理者进行阅读。
$ j0 F( r; g& G% s8 O6 z: G* \, G8 z" z/ \9 Q) ` n
作者:林帆) I, B7 d. d5 f# A. R
出版社:电子工业出版社+ Y7 y% A" X# h+ c. T+ I3 ]( A6 n
出版时间:2018年04月 $ o) T$ b3 p' l9 r- Z0 C8 f
书籍价格:99.0元" F7 o% T9 _8 ~ _" E( r8 Q4 Y- ?
4 E0 V$ {9 k1 e
! a& A2 T) j- l. b& o
4 A1 n5 T+ v9 O$ q$ Y8 j, Ejava电子书目录:
0 F- L7 X9 P R! u第1 部分 基础概念' T: r$ q4 T' O2 ~3 L
第1 章 容器集群综述 21 J( A6 m% j! I& ^8 t6 p+ b' J
1.1 虚拟化与容器 2
6 }4 ?& ^+ Q) r6 ~! |' o. B1.1.1 计算资源虚拟化 2
- w2 P# k$ [: u( z. Y9 O1.1.2 容器技术的本质 4! ~7 [# G, F9 C1 L' f. T
1.1.3 基于容器的软件交付 13* O9 C- K ~7 F! c
1.2 容器集群与分布式服务 16
2 s& I1 q7 K/ r% T; q1.2.1 微服务架构 169 E J* [ e, O0 m2 l! C
1.2.2 容器集群生态圈 18
' Y$ o# r& S8 f0 B# q& r/ |: C1 e1.3 容器即服务 26
& i; E) w1 {% R/ E1.3.1 从基础设施到平台 26
" L$ z$ h. E( W- ?; {7 b9 B1.3.2 数据中心操作系统 29
' ~+ X/ b; t7 U! |5 z' \) c1.4 本章小结 312 N" l- z. o0 U" p3 O& i" x" K
第2 部分 解决方案6 u$ B: L' C2 Q; L
第2 章 SwarmKit 集群解决方案 352 m! p% S! K3 [1 U
2.1 开源容器集群方案 356 G% B0 i% ?- d7 W9 ~) {8 Y+ S
2.1.1 容器社区的“四朵金花” 35 y- E* n; q; o. U
2.1.2 经典Swarm、SwarmKit 和Swarm Mode 36' X$ x5 W0 a9 j# A5 |) q
2.2 使用SwarmKit 37
6 W) J$ Y" n" U) E2.2.1 SwarmKit 综述 37; B, y ]7 R3 S! R& e# d
2.2.2 创建SwarmKit 集群 40: r" \4 x. v# ?9 y5 y+ X
2.2.3 在SwarmKit 集群上运行服务 43! G& p( q: u$ c+ {7 ~( ~7 {
2.2.4 SwarmKit 集群的其他功能 45
- l- r+ P% g/ W" D- j. ?5 C2.3 Docker Swarm Mode 459 N& F3 w, A M, c+ F) w& m4 K
2.3.1 Swarm Mode 综述 45% n! S; Q" J7 c
2.3.2 集群的创建与销毁 46
$ L5 Q: F* D. g2.3.3 节点管理 48
; p* R5 i# e& U# X2.3.4 服务管理 51- G4 B6 ~% d$ A- A) b/ ~0 [) ?! u
2.3.5 服务编排 javazx.com 561 ?" V( l: M5 c& C, Q# E6 v
2.3.6 应用栈的管理 63! a3 o" I+ c1 { p9 \+ v
2.3.7 外置配置和密文管理 66
% h0 }5 I8 }+ P5 [2.4 Swarm Mode 的图形界面 69
- w1 t, ^# M7 o' |3 a2.4.1 Swarm Mode UI 现状 69
" a' n3 F& B/ P1 r0 Z2.4.2 Portainer 710 |0 Q5 e' P( Y8 k4 K
2.5 本章小结 74
8 R' O5 B, [1 M' F- {- l9 u第3 章 Kubernetes 集群解决方案 75
, v( H m9 t" e; K3.1 Kubernetes 集群概述 75
5 I" b+ w: }7 h' v3.1.1 Kubernetes 项目的起源 75
/ l2 t5 ]- I2 _3.1.2 Kubernetes 的结构 76
8 y4 o0 ^* a2 ^% _7 B3.1.3 基本概念 78
) a, @0 n3 D2 L7 Z _3.2 部署Kubernetes 集群 82: x) l$ @8 G& L/ B5 v& j& r
3.2.1 使用Minikube 82' i0 Y: T$ Q1 z$ N1 U: v
3.2.2 使用kubeadm 83- c" H3 V' _- O
3.2.3 理解Kubernetes 集群的部署过程 87
5 r3 f/ k# x( i# c' L/ D: h4 G3.2.4 验证集群可用性 968 ?1 ]8 v" C7 r4 K% r$ Y5 ^! Z
3.3 使用Kubernetes 98. _& U3 P& M, e- [. I: N
3.3.1 通过Kubernetes 部署服务 988 L7 N! x6 F, `% G
3.3.2 服务的在线更新和回滚 103& v9 G5 X' m6 \5 v+ \7 f4 O6 ~
3.3.3 单次任务、定时任务和全局服务 109
. R+ C3 i$ Y$ k F1 J3.3.4 持久化存储 113
3 A5 M# d+ N* ~+ {" G3.3.5 配置存储 116! V) m6 S. A/ J5 a
3.3.6 管理有状态的服务 122" O% b7 b0 y/ S6 f" }. ~5 p2 a
3.3.7 健康检查 126! ?/ }5 L2 T* Y6 c. Y
3.3.8 提供对外服务 127
+ c" w: }" d U/ N; C" R# I+ M3.3.9 多租户隔离和配额 1315 l3 b! T0 ]: `% ~
3.3.10 集群的节点管理 1357 t3 w) Z; H0 `9 b; z b
3.4 Kubernetes 包管理工具Helm 137
8 n' r) x7 l! L5 R& h" r! L3.4.1 Helm 简介 137
, i% n+ U. u% _3.4.2 使用Helm 管理服务 137- G5 j: {) W& r- G P* b& C
3.4.3 自定义Chart 142
* i% v5 V# q( K4 K$ K4 L) `3.4.4 Chart 仓库 1466 R3 z8 t0 N x* l' r0 t
3.5 本章小结 1475 |! V6 \, X( A# a, ?0 T0 |3 r5 m
第4 章 Mesos 集群解决方案 148
& E/ J0 m" d6 n4.1 Mesos 和DC/OS 概述 148' i( d- w. l- N
4.1.1 Mesos 项目的起源 1481 d% X% }& \; A7 @7 H
4.1.2 Mesos 的结构 149
; y/ l; s" Q- \4.1.3 Mesos 的内部构成 151) }/ a5 `3 c9 ^
4.1.4 DC/OS 数据中心操作系统 152
1 i4 a- v1 V: o4.2 部署Mesos 集群 153
" ]/ a: i+ M/ V! w4 @& u4.2.1 部署ZooKeeper 153! y; C" p3 G0 j T+ Q( @8 w" _
4.2.2 部署Mesos 157
9 b: d+ Q2 ]* t% H6 I: g4.2.3 启动Master 节点 1589 p- C! D; T" ~ o
4.2.4 添加Agent 节点 161, P0 x" k$ C9 x0 A
4.2.5 Mesos 服务的启动参数 164
2 X; J& \/ _4 O0 \# t. |4.3 使用Marathon 管理服务 1704 ~; N6 ]2 K0 u
4.3.1 部署Marathon 170
6 `3 s+ t% S+ C) |5 f, \( e8 e4.3.2 添加一个应用 172
$ { g* E9 ^- ?4.3.3 使用DC/OS 命令行工具 1775 ]' [; V0 }) \2 i- g9 j
4.3.4 使用Docker 容器 177 E8 D6 p7 y: N' K1 U
4.3.5 使用Unified Container 179' {7 U8 L& y! v0 k o. d) Z
4.3.6 持久化卷存储 182# Y: v* n# J( G( Y1 a5 h3 l% ^+ @
4.3.7 Marathon-LB 负载均衡 184
6 s- z- k' j) O E& @5 @3 d( B4.3.8 Mesos-DNS 域名服务 188
) v1 Z/ U" `2 _4.3.9 服务依赖和编组 1915 p5 Z1 I" u+ Q# F# B
4.3.10 应用升级 194
: ~9 d& F. m6 H1 e/ I4 M+ j/ q4.3.11 调度约束 199
, k5 H, g! \8 K& {4.3.12 健康检查 201( q- Y2 k }; ^! i; F% \
4.4 使用Chronos 203
\5 C; T7 M6 i9 c" c4.4.1 部署Chronos 2033 ]/ Q- y7 x; F& H9 q
4.4.2 定时表达式 204
6 r2 t2 A( d; [2 b4.4.3 创建定时任务 2056 t5 t, j/ M& p: [. K/ [/ }
4.4.4 定时任务的依赖 208
1 i4 A# O0 n4 g& U n) _8 z4.5 更多的Mesos 服务框架 2094 P3 [9 @7 z: ]$ N) F
4.5.1 Mesos 服务框架的本质 209
/ o2 a! K' n- r1 y! P; _6 Z& J4.5.2 编写自己的Mesos 服务框架 211$ C z# s- t- s; m* U+ E; O2 G
4.5.3 其他常见服务框架 2161 v' ~; b6 ] j
4.6 DC/OS 2182 x k/ l5 Q& F6 O1 I
4.6.1 DC/OS 简介 218' ~. m: a( v5 Q* w D
4.6.2 部署DC/OS 219
H$ K8 j1 g3 D( B* m, W4.6.3 DC/OS 的操作 228+ Q4 e+ y ?" g
4.6.4 DC/OS 命令行工具 230# ]( y$ W- H0 v- V7 h3 ?: R
4.6.5 DC/OS 的应用仓库 2315 p" d% A6 ]% \0 U) L
4.7 本章小结 234
+ d4 f% Y7 A/ r9 s1 D; V! Z第5 章 Rancher 集群解决方案 235% ]8 r+ D% @$ h! _% p: x6 Q
5.1 Rancher 集群概述 235* |! M. f6 }: b! [$ ]6 F: N
5.1.1 Rancher 项目的起源 235
6 i4 f# D" F3 I/ f$ u9 l$ p! ]5.1.2 Rancher 的结构 236% `( B$ F, n0 w* }& g6 r7 Q$ f
5.1.3 相关概念 237* ] w, j0 L$ K z8 h7 C
5.2 构建Rancher 集群 239
7 N1 A/ J( N' o5.2.1 部署Server 节点 2398 C) i; ?) |$ g4 A: I* f
5.2.2 Server 节点的高可用部署方式 240
) n4 M' C% p5 @2 @$ [5.2.3 添加Agent 节点 241
. p! u/ j1 Z. b! q, g5.3 Rancher 的服务管理 243! X/ R! |& l" U7 v9 p4 i1 W
5.3.1 使用Rancher Web UI 创建服务 243& F' N4 q, G1 c2 K% l: U! W
5.3.2 从容器 245
1 N% s* h! P1 h/ l F u* P5.3.3 特殊类型的服务 247! e0 |2 w% o! z- r' U
5.3.4 使用应用商店 251
2 |' A1 b$ F! o( R1 Q5.3.5 服务编排 2529 f o& v7 `) R9 X8 G5 K7 P
5.3.6 服务的升级和回滚 254, g% L: K. B; T
5.4 Rancher 使用进阶 256
7 T, c) G9 p% g% [5.4.1 Rancher 的标签 256
- u* \& |/ `8 x, [1 d5.4.2 调度选项 257. D! r5 k8 l! g+ A5 _- l2 C5 Y
5.4.3 服务健康检查 2583 f# x; t( l* Z O' X
5.4.4 Rancher 的元数据服务 260" r2 u6 |* v5 c% }6 g. E+ X% i
5.4.5 Rancher 的DNS 服务 262
# I3 M' l7 h% [5.4.6 使用私有镜像仓库 263
- o3 ]( l$ [, U5 w6 u5.4.7 Rancher 的Secret 服务 264
/ p) x( i0 \" ] R5.4.8 在应用商店添加自定义应用 2654 @) M5 _6 w6 h" W& M
5.5 Rancher 的命令行工具 268* E) p: Q5 s: `7 x+ D
5.5.1 配置Rancher 命令行工具 268
8 n& P3 e3 P0 C; ]7 U% J8 l7 }5.5.2 命令工具的基本使用 2705 K' j! L0 `' G( J; o" I1 L
5.5.3 通过命令行进行服务编排 2735 Z5 ?+ k; K, D/ W1 z
5.5.4 通过命令行进行服务升级 273! z: N6 u. f9 _6 {* h6 i# m o
5.6 使用Rancher 安装Kubernetes 274
6 M& o! X* P D! @2 i5.6.1 Rancher 的环境管理 274 V* M u& y9 W; m! u" o
5.6.2 在Rancher 中添加Kubernetes 环境 276
% h& \# l4 K" T- W* C, L5.6.3 在Rancher 中使用Kubernetes 279
g& h# _: r$ B) ]2 N! E1 f; o v' |5.7 本章小结 282+ t& v$ y3 b2 P: V, I/ R
第3 部分 技术周边
; z5 R2 \, K8 M8 A第6 章 容器集群的网络和存储 284
) z& \4 b) p# j( `5 E3 ]6.1 容器网络 2841 r/ A5 h8 R& _ y7 `! B# H
6.1.1 容器网络标准 284
/ U1 ]- G3 \6 {' Y6.1.2 本地网络 288
5 R% m* U4 A& ^' ^% _7 M1 g( s c& X6.1.3 跨节点网络 293
8 J3 W, J# K; S; j1 l+ V6.1.4 使用Docker 内置的Overlay 类型网络 300
& h4 \1 ?9 O3 u3 N6 k6.1.5 构建基于Flannel 的覆盖网络 301& B, U+ h: d4 D' S8 K
6.1.6 构建基于Calico 的BGP 路由网络 306
: f- E5 B/ @$ l8 `5 S& A( L+ R6.2 容器存储 3109 b& N& y7 K: O7 |7 o2 S% C% ~
6.2.1 容器实例和镜像的存储 310, z' G' t' u+ a# n: K& P! r# g
6.2.2 容器卷的存储 312
! ^' o& ^6 _8 ~$ c6 T1 }3 U$ s4 ^6.2.3 容器卷存储标准 316
: P8 [% A( U4 q6.2.4 基于NFS 的卷存储 317. p# M4 e9 g- t! i& x
6.2.5 基于Ceph 的卷存储 320" A& D: k3 H$ T# W/ e# \* R
6.2.6 使用公有云存储 330# d% N8 V: ^6 o* S
6.3 本章小结 332
2 Q5 |+ b. u' c5 \第7 章 容器服务的基础设施 333
: y- l* J, l+ `3 G' l/ @6 {2 B7.1 集群性能监控 333
! ?# I) X3 T2 B. K c7.1.1 常见的开源性能监控方案 333. F$ O* o( E# g( G: ^
7.1.2 基于TICK Stack 的性能监控 335
( S* w% M8 w" X! n% y) v; H* @7.1.3 TICK Stack 的部署和使用 336, m3 ?4 R* u% H; p: y! h& p4 R
7.1.4 基于Prometheus 的性能监控 341; E- v, B: O: F' x, R
7.1.5 Prometheus 的部署 3438 i8 a+ D- G5 F- F/ B% ~. @
7.1.6 Prometheus 的使用 353
$ r# O: x" R$ v1 Y. V: v7.2 集群日志管理 361: N3 ~" z, V8 S* u
7.2.1 常见的开源日志管理方案 361
3 A& F1 `. t/ E) G+ @8 T* q7.2.2 基于Elastic Stack 的日志管理 3631 @; g' |* |* I, R/ A4 N
7.2.3 基于Fluentd 的日志管理 3729 g8 Y2 Y4 c4 @( H: j
7.3 服务发现 377
8 p+ i) E* @8 o, ?0 A+ C7.3.1 常见的服务发现方案 3779 |2 Q: O9 x9 I& x6 `+ ]/ |) {9 m
7.3.2 Etcd 379( V8 S1 k: w; V7 K
7.3.3 Consul 390" g( s* x. a3 s. D
7.4 镜像仓库 398
# a( e* n* K* i. }9 R7.4.1 容器镜像仓库概述 398- e* `/ j g- S! Q0 U
7.4.2 Registry 399
3 x P' b$ a I; [. D6 u8 Z( o+ f2 V7.4.3 Harbor 405
( F& ?( ~' a3 k/ Q+ P1 [+ @7.5 本章小结 412: ?% ~3 _' v& q. F
第8 章 容器技术新风向 413' b! F* _; \3 N% ^; I& `# R7 h
8.1 安全的集群操作系统:Container Linux 4135 o, g( T2 N2 K6 V6 D
8.1.1 Container Linux 概述 4136 r1 ^( p0 h3 ^& i! b
8.1.2 Container Linux 的部署 416" E* E* R& [& }" Q9 H% ]$ y2 }
8.1.3 Container Linux 的使用 418; M3 Z" C5 U" h/ X. ?
8.2 基于容器的操作系统:RancherOS 419/ M; P8 a6 a0 Y5 {% r Y
8.2.1 RancherOS 概述 419
8 y6 x* z U/ ?' X/ N8.2.2 部署RancherOS 4216 n2 w! z, [* t4 Y# _
8.2.3 RancherOS 的使用 422
& ]4 Y* V N( n/ y+ q! U8.2.4 使用ros 工具管理系统 424- ~5 L" `+ a2 |8 l
8.3 容器式的虚拟机:Hyper 429
* _# N2 t! l! j7 i! ^+ Z, f8.3.1 Hyper 概述 429
, |6 M2 a2 ]% l% a9 Z7 A8.3.2 部署Hyper 430% f8 g: {; W' ?$ m$ t5 q& }0 `, M4 M
8.3.3 Hyper 的使用 431 x2 ]+ o* @& U! n$ E/ }5 O# i$ M
8.4 虚拟机式的容器:LXD 434
! N( }" S8 P7 G8 m: m' R8.4.1 LXD 概述 434+ X8 e5 r W& g; z4 C1 q9 s
8.4.2 LXD 的安装和使用 435
! a' @7 T, k0 I: }8.4.3 服务热迁移 440
- U" ^& _+ G4 S2 Z0 \3 _8.5 容器与虚拟机的统一:Rkt 4425 Y1 K: Y% j1 a# \$ P
8.5.1 Rkt 概述 442) Y& j& H# o: N" V
8.5.2 Rkt 的安装和使用 444
& U# t1 H# H) p3 D# i8.6 企业级定制容器:Pouch450* e8 X, Z ?; U3 u) R
8.6.1 Pouch 概述 450+ V2 o; y+ X0 _7 R$ m1 L! Z6 f
8.6.2 Pouch 的开源生态 453
, z/ H% z; l9 t! O& B8.6.3 体验Pouch 455
+ e4 [ ]' X- L# {. [) ?0 V7 f( Y8 n7 ~8.7 微内核操作系统:Unikernel 4586 [: r+ K' n3 Y( _: C d2 {
8.7.1 Unikernel 概述 458
0 ~: _5 G; z! d& K- ^; `8.7.2 Unikernel 的发展 4601 d* }( R( Y2 V
8.7.3 体验Unikernel 462* ?1 M% K! p9 \' U
8.8 本章小结 465 $ E% x: P+ G( Q* T
Java资料百度网盘下载地址链接(百度云):容器即服务:从零构建企业级容器集群@www.javazx.com.pdf【密码回帖可见】
5 P$ `% H; Y5 R+ J& R" H$ C9 Z
& M$ T" }7 b; h8 Y4 L% X+ `- f4 C3 T) C5 ]6 P$ N2 {' t- ~/ }" O. v+ {
# @& ^# Y- T X3 C L2 {
4 p- N9 e/ E% V( i, \5 {, [: x/ e5 M, u% v9 p% c7 O* W
- w& ]. Q8 Z$ s+ M# |5 L. Z7 m
* n! C$ ` M0 A0 Q+ p
|
|