|
java自学网(www.javazx.com)-java论坛,java电子书推荐:《容器即服务:从零构建企业级容器集群》
2 Z" ?+ f7 F4 O4 I5 y2 ?java电子书推荐理由:本书介绍了容器即服务的发展过程和主要技术,重点阐述当下主流的SwarmKit、Kubernetes、Mesos和Rancher 开源容器集群方案,并探讨了容器技术在网络、存储、监控、日志等方面的运用场景和基础知识,以及该领域在近年来的一些新的发展方向。本书适合一线架构师、开发者、运维人员以及技术管理者进行阅读。5 T4 W+ C/ {" z; b
1 x& ~* R, |- S1 b: u8 D, {: K作者:林帆! d1 Z6 a, D, v0 A! ~: }1 [& _+ U
出版社:电子工业出版社
" l% R- E9 m, b- X3 x出版时间:2018年04月 . I* u+ u$ E7 o( u: v
书籍价格:99.0元6 ~3 [- d' p. x7 C
! g! l- g: [9 h6 U; y
* }" a9 x+ L# q9 U0 ^- s9 ^
( e& @- t6 F2 wjava电子书目录:9 |" y, b( a1 b9 w
第1 部分 基础概念( R: }- Q, E& C& _
第1 章 容器集群综述 2
. x9 h4 A5 x/ S0 r' r3 O6 J4 c% J1.1 虚拟化与容器 27 [, U5 O5 T4 m% r1 p$ F
1.1.1 计算资源虚拟化 2
, L2 V% ^ k! T0 N& N. T7 T1.1.2 容器技术的本质 4
) J% \) w, o6 T5 p1.1.3 基于容器的软件交付 136 c( Z4 ?+ S c
1.2 容器集群与分布式服务 16
6 R) g7 F6 ?- f+ q1.2.1 微服务架构 16
/ H1 i) L% u+ J. T3 o1.2.2 容器集群生态圈 18/ D7 b! R) M/ p
1.3 容器即服务 26) L7 m/ k5 h, {1 \* z1 _# m
1.3.1 从基础设施到平台 26
4 `) ?" O1 J) Z J1.3.2 数据中心操作系统 29
/ `0 ~5 c9 w8 e; k) G; |4 T1.4 本章小结 31
- C0 G& L4 ]) d7 l' t( e第2 部分 解决方案
# K" Y/ ?8 h2 ?4 ]; f" W' i$ b5 O; m第2 章 SwarmKit 集群解决方案 358 a1 p' y3 b/ A8 a2 Q. i7 y! m( _
2.1 开源容器集群方案 353 v- w) J7 Q$ e" U: M- I
2.1.1 容器社区的“四朵金花” 35
: e X2 h8 f1 @: s0 Z) d% y: P2.1.2 经典Swarm、SwarmKit 和Swarm Mode 36
; J. ]4 W" n" v+ f% }2.2 使用SwarmKit 37
# g; C$ |: L4 E) C2.2.1 SwarmKit 综述 37
* j( `! T3 n: Q# w2.2.2 创建SwarmKit 集群 403 z1 L0 H8 w v! _( A# j$ D- S
2.2.3 在SwarmKit 集群上运行服务 43
/ F( ^& n8 Y; E9 {2.2.4 SwarmKit 集群的其他功能 45- @8 p; z0 D+ {% W# q
2.3 Docker Swarm Mode 45. M& U. W. M* w
2.3.1 Swarm Mode 综述 457 F9 Y1 Z: x0 L1 c# d4 i3 {1 ]
2.3.2 集群的创建与销毁 463 Y& Q/ Z0 j) I/ ?& p" ~
2.3.3 节点管理 48( b# `' q8 P9 I6 p0 W" \$ s' H
2.3.4 服务管理 51& n7 a! x# E3 \9 T) `
2.3.5 服务编排 javazx.com 567 ~% [/ c. j" v8 L
2.3.6 应用栈的管理 63
+ t; Y; v) L, O9 o/ z: {1 m1 ]2.3.7 外置配置和密文管理 668 l N- b9 |% I B3 s7 n8 j
2.4 Swarm Mode 的图形界面 69# T8 R% d+ d. z6 s: S! f
2.4.1 Swarm Mode UI 现状 69
$ [( b% w; ] Z, k1 k; Q2 u2.4.2 Portainer 71
|: r. L$ e" ]% @( t7 h5 D8 T# C2.5 本章小结 74
8 Q6 A1 v# x: C$ c& a, E2 }第3 章 Kubernetes 集群解决方案 75
5 Y" [8 l) [- f8 @3.1 Kubernetes 集群概述 754 q& W; F# L5 t* [% ]$ J$ r7 m% l
3.1.1 Kubernetes 项目的起源 75
1 V( \/ f: d2 |: U+ q: N3.1.2 Kubernetes 的结构 76
4 C/ v/ x- O' o6 `/ r$ d3.1.3 基本概念 78
, z6 l) p* X. Y' r; C3.2 部署Kubernetes 集群 82
' t( C& }9 P# d6 q! ]* d) l3.2.1 使用Minikube 82% U0 E9 |# e- \ q$ d0 K5 @
3.2.2 使用kubeadm 83
: ~# W3 ]# a/ v: @8 S# D3.2.3 理解Kubernetes 集群的部署过程 87
G, p6 U: X& x" e# t3.2.4 验证集群可用性 96
% `7 S1 M& l1 J3.3 使用Kubernetes 98
0 H; `- j" e% s% q3.3.1 通过Kubernetes 部署服务 98
- L. X5 E h3 G- G/ F/ u8 X1 M3.3.2 服务的在线更新和回滚 103
5 [8 \8 o3 p/ [, a6 W$ S) W4 n) v3.3.3 单次任务、定时任务和全局服务 1093 Q) R2 J; p. m$ U1 c" _
3.3.4 持久化存储 113. I& c3 r8 Z/ o! S& ]3 U5 X
3.3.5 配置存储 116
9 U# n5 V$ L1 R% X3.3.6 管理有状态的服务 122
8 x6 n! l3 |) ?3.3.7 健康检查 126
- ~2 }* `& e* K+ F4 g; b3.3.8 提供对外服务 127% R% ]# ]/ i, K4 U2 v! v
3.3.9 多租户隔离和配额 131! ]& P4 s2 P* i7 F0 C# a0 Y$ L* s1 q
3.3.10 集群的节点管理 135
* \2 L; \, V7 d! W% k3.4 Kubernetes 包管理工具Helm 137
7 h9 ~' o4 e9 m3.4.1 Helm 简介 1377 [6 g- U' w0 {1 q
3.4.2 使用Helm 管理服务 137' _5 }& X7 p# ^6 n5 q2 T2 s& t0 t
3.4.3 自定义Chart 142& F+ i, L. V$ O
3.4.4 Chart 仓库 146
6 m. p4 c$ p" a r. r3.5 本章小结 1475 L$ z* v, e& e# e( h
第4 章 Mesos 集群解决方案 148
6 R( S2 \! ?6 |% h/ E0 N4.1 Mesos 和DC/OS 概述 148+ U: y8 \( [, F4 W' K
4.1.1 Mesos 项目的起源 148
0 G0 x3 J' P1 q# R; L+ R4.1.2 Mesos 的结构 1496 x9 v) ] \2 Q' a7 B4 z1 \
4.1.3 Mesos 的内部构成 151
' j) P* m' X) @) a9 m4.1.4 DC/OS 数据中心操作系统 1521 G2 z, S0 i' B1 d* Q- e. L
4.2 部署Mesos 集群 1530 j7 p! U' y" H' h) J
4.2.1 部署ZooKeeper 153
5 O! |( r! T: R# w9 d2 q# [ F& \! q* Z" m% `4.2.2 部署Mesos 157+ X1 ]3 b* V, Q& x# e
4.2.3 启动Master 节点 158
g/ ~. }" j5 D3 Y/ q0 h4.2.4 添加Agent 节点 1614 J8 A0 C w3 X) L& `+ f
4.2.5 Mesos 服务的启动参数 164
2 `* a! j; q% t/ D4.3 使用Marathon 管理服务 1708 V X+ S- x9 x: d0 {! B
4.3.1 部署Marathon 170! Z$ A: o8 K- Q, f7 u1 i1 E
4.3.2 添加一个应用 172
) U, H$ Q3 b A3 p4.3.3 使用DC/OS 命令行工具 177
& O+ U% H$ G* o# {' @! u4.3.4 使用Docker 容器 177
0 i S) c2 G/ Q* r5 t- h% B2 H4.3.5 使用Unified Container 1792 N- W' r# c9 U( n
4.3.6 持久化卷存储 1824 G' V4 f. k. I/ [
4.3.7 Marathon-LB 负载均衡 184
1 R; r% _& R- E! w z, @! R4.3.8 Mesos-DNS 域名服务 1881 l4 }3 K" v( p
4.3.9 服务依赖和编组 1916 x; K8 |- e# P" t+ ?+ X4 C4 l
4.3.10 应用升级 194
" _2 D- z; l3 `; U+ `% a# y4.3.11 调度约束 199/ o: j, l3 O6 W+ B
4.3.12 健康检查 2010 J, N/ C o7 J0 |; Q* B4 ^
4.4 使用Chronos 203
! V# q" R. p+ ?# g9 Y% c9 @' R2 r4.4.1 部署Chronos 203
0 {' |# E; d& q0 U& {9 r4.4.2 定时表达式 204+ q1 W, M6 P5 B! y6 U4 t& P: w
4.4.3 创建定时任务 2051 f8 C& V4 u: R9 Q! Y! T" x( z- A
4.4.4 定时任务的依赖 208
+ e& M+ v: o% E, ^4.5 更多的Mesos 服务框架 2093 U; H1 J/ g$ g6 M
4.5.1 Mesos 服务框架的本质 209- j( F4 o' ~" C4 E
4.5.2 编写自己的Mesos 服务框架 211, W6 M V: B" J* O
4.5.3 其他常见服务框架 216
6 u+ N1 g# a6 Z4.6 DC/OS 218
' u1 C+ E' _, s [! q4 k4.6.1 DC/OS 简介 218
& _- {* e9 P7 V! q) l4.6.2 部署DC/OS 219
1 e& k3 V- R3 U, s j1 M( x4.6.3 DC/OS 的操作 2286 S3 t2 ]! W1 f( }+ j3 ?
4.6.4 DC/OS 命令行工具 230
4 V! F' Q6 `6 i, o8 ?; M( C0 f0 q4.6.5 DC/OS 的应用仓库 231: C0 Y0 {% T; y, P8 G% T% o, P
4.7 本章小结 234
2 u6 X/ ]# |, w第5 章 Rancher 集群解决方案 235
! B3 y2 I: l" Q. w' F5.1 Rancher 集群概述 235- B- m% p, P+ W6 H# ]% L
5.1.1 Rancher 项目的起源 235
6 L( o3 a5 c- ?" c/ E5.1.2 Rancher 的结构 236
% K6 P3 r9 Y4 D2 G1 g2 `5.1.3 相关概念 237: M3 `/ g; E4 o6 D) j9 j
5.2 构建Rancher 集群 239
4 D# J- b/ i' g/ t3 l/ M- U5.2.1 部署Server 节点 239
. Y2 a/ [! I( ]: {/ w2 y& q9 Y! ~5.2.2 Server 节点的高可用部署方式 2403 D3 _2 z: K- g+ Z; n4 ?1 c5 R L
5.2.3 添加Agent 节点 241
, O- k0 @$ a/ y8 P, q2 |4 s# Q; d5.3 Rancher 的服务管理 2434 U1 s8 G) S1 r" V4 q
5.3.1 使用Rancher Web UI 创建服务 243
/ A [% E5 k, V% G5.3.2 从容器 245
5 ?9 |) H l5 C, t2 c; @5.3.3 特殊类型的服务 247
, G' q4 z* `' `3 I4 C, p" n4 p' M) Z6 h5.3.4 使用应用商店 251
3 E; U& A+ z! n( `1 d5 ?5.3.5 服务编排 252 q( y4 c7 j" X
5.3.6 服务的升级和回滚 254
$ h0 S" L* i0 }, Z3 f9 t$ \5.4 Rancher 使用进阶 256
. x/ |5 T% r6 \( ^2 b5.4.1 Rancher 的标签 256
7 a6 C7 U2 O. v ?5 Q5.4.2 调度选项 2575 t) ?% i" m3 u& l
5.4.3 服务健康检查 258
- t3 [3 q! K I( C5.4.4 Rancher 的元数据服务 260
3 H, [/ @/ B1 M6 y8 @5.4.5 Rancher 的DNS 服务 2621 Y, m k5 @& |, I0 q' k
5.4.6 使用私有镜像仓库 2630 l0 `2 G3 Z' q) R8 i6 [9 p
5.4.7 Rancher 的Secret 服务 264
T, n: R0 E- B% }4 M$ p) }9 d5.4.8 在应用商店添加自定义应用 265: O& C5 Z7 W/ C4 r2 b/ e% Y
5.5 Rancher 的命令行工具 268
+ s5 E. }2 i; s0 S5.5.1 配置Rancher 命令行工具 268
0 O% g8 }% v; ^0 g# O# H- X6 d5.5.2 命令工具的基本使用 270; h4 d K6 c: z
5.5.3 通过命令行进行服务编排 273
4 j0 | K# `4 _' F- D5.5.4 通过命令行进行服务升级 2736 G9 |/ I1 S! f) W% z$ m9 B; O$ m
5.6 使用Rancher 安装Kubernetes 2746 H& L% A: a$ j2 Y4 h& l+ Q: @
5.6.1 Rancher 的环境管理 274) k. I, Q: U' a2 t' s- S( s2 u8 u
5.6.2 在Rancher 中添加Kubernetes 环境 276
& U3 I' Z( m& f, ~3 @+ e! x5.6.3 在Rancher 中使用Kubernetes 279
6 G0 z4 T( K& h8 p5.7 本章小结 282& ]4 d) x; {' b- Z
第3 部分 技术周边
! T5 p n- H8 m3 _1 k2 W3 _第6 章 容器集群的网络和存储 284
9 r6 I2 D# b" \" e- K+ ~+ |6.1 容器网络 284( p6 K9 g! P+ v8 F
6.1.1 容器网络标准 284
, p6 g: B: @$ X) @6.1.2 本地网络 288$ Y* x7 u" b9 G: Z. {
6.1.3 跨节点网络 293
5 m4 ^& V- y5 w/ m' S6.1.4 使用Docker 内置的Overlay 类型网络 300
z6 E1 z+ G8 T( n9 \' B6.1.5 构建基于Flannel 的覆盖网络 301
- R$ s6 i9 b% c7 I6.1.6 构建基于Calico 的BGP 路由网络 3067 p$ ^7 y& |, p1 P
6.2 容器存储 310
2 i3 A. N5 a- ~3 N% @6 b, g6.2.1 容器实例和镜像的存储 310
& V5 e7 C0 t: j0 o6.2.2 容器卷的存储 312$ f- ^- f' N: f
6.2.3 容器卷存储标准 316
5 l( x# Y4 b/ _) }5 b F) o1 I6.2.4 基于NFS 的卷存储 317
: [( ]- r) ^2 C1 j% W6 \6 G6.2.5 基于Ceph 的卷存储 320: ]3 B0 R5 L2 v% j9 g% h
6.2.6 使用公有云存储 330
% E$ x: T+ {6 w5 ~/ b$ m& h# c6.3 本章小结 332
: f6 H' d$ z7 \3 p5 ~. Q4 i% n第7 章 容器服务的基础设施 333( k6 X, y* L+ B
7.1 集群性能监控 333' C# \0 \& d* E, o
7.1.1 常见的开源性能监控方案 333 c' j/ c; ^: H: }* ]% b2 ^
7.1.2 基于TICK Stack 的性能监控 335# u0 e5 m, ^+ G4 x2 Y+ J, a Z
7.1.3 TICK Stack 的部署和使用 336
& G7 p, f5 O8 x3 ]% L+ O6 z. b7.1.4 基于Prometheus 的性能监控 341
2 S; d- Z: [+ H+ i7.1.5 Prometheus 的部署 343
: x6 V# x4 Y. `+ c3 E2 x, }9 w7.1.6 Prometheus 的使用 3532 `2 ~+ ?! C3 l* N. a" v+ b
7.2 集群日志管理 3611 C( u! e& Q9 R' h: U' z
7.2.1 常见的开源日志管理方案 361) C! e2 G% H5 |0 [- \
7.2.2 基于Elastic Stack 的日志管理 363
6 h6 p% L. Y: g: v$ T( I& E7.2.3 基于Fluentd 的日志管理 372
9 a; \+ A/ X/ } V7.3 服务发现 377
& Z/ E0 S2 |4 b; q7.3.1 常见的服务发现方案 377. m# p4 L6 ?* z& ]1 a* N8 S2 e1 y% s+ M
7.3.2 Etcd 379
6 J0 A# l1 E2 M3 a! @' P7.3.3 Consul 390
4 ^+ D+ O$ e1 H& \1 T5 G7.4 镜像仓库 398
9 t7 V/ A1 R5 u7.4.1 容器镜像仓库概述 398% x) A% O# C. _% X3 b3 A; K; ]$ R2 w: M: {
7.4.2 Registry 399 _( D* ?0 Q' |( R: K$ h
7.4.3 Harbor 405
( q6 W3 p' M9 f) {1 U0 y @8 W7.5 本章小结 412
1 L% t- {8 [7 c! l2 j! s% d第8 章 容器技术新风向 413/ M6 _* G. o4 e6 j0 \+ }
8.1 安全的集群操作系统:Container Linux 413+ Q- W( v Q% _' f! v, |
8.1.1 Container Linux 概述 413
- P& H" |/ V6 A3 v8.1.2 Container Linux 的部署 416& v+ ~' D; N6 z* ~! w+ h6 t
8.1.3 Container Linux 的使用 418
) k+ F. e& r! k% O1 Q1 \" g2 W8.2 基于容器的操作系统:RancherOS 4191 A& G, }& z# p: U1 v7 j
8.2.1 RancherOS 概述 419$ }, j: j$ C8 _6 N' { O+ s
8.2.2 部署RancherOS 4216 | I) ~- b h! Y! Z: `7 z
8.2.3 RancherOS 的使用 422* I; Q! Z d- [( a
8.2.4 使用ros 工具管理系统 424
$ H7 O9 L2 J' C5 ]9 A8.3 容器式的虚拟机:Hyper 429
2 V2 F1 B1 v3 P4 h8.3.1 Hyper 概述 429
/ ?; P# r% Z0 A6 L2 N8.3.2 部署Hyper 430* O, f1 m$ c; d& J4 D
8.3.3 Hyper 的使用 431
. T( l! Z {: ?, R( Q$ h) E" `4 k8.4 虚拟机式的容器:LXD 434! k; G' A) R/ s0 Q3 ^
8.4.1 LXD 概述 434' T1 H% ^& K# m% y
8.4.2 LXD 的安装和使用 435) E4 N, e8 R) M" R" F! L( g
8.4.3 服务热迁移 440
5 u2 t# {4 L7 w* ]8 ?8.5 容器与虚拟机的统一:Rkt 442
3 L- u9 i7 `1 M# q7 ?* g- w6 n B8.5.1 Rkt 概述 4424 W" f& K3 y; r1 N
8.5.2 Rkt 的安装和使用 444
0 t* D" a! b- ^3 b: x( b$ w8 P8.6 企业级定制容器:Pouch4503 A& A4 Q1 @3 z. b! b: Z- y. U0 a6 w
8.6.1 Pouch 概述 4503 F( C6 M9 I7 F! W1 K, e
8.6.2 Pouch 的开源生态 453$ D G7 F) Q6 s2 ~1 b1 t5 p; u7 j
8.6.3 体验Pouch 455
/ i9 H! ?. E/ r8.7 微内核操作系统:Unikernel 4584 q0 h+ p8 \( j( D2 Y
8.7.1 Unikernel 概述 458! z7 F* @- K3 x Q9 `
8.7.2 Unikernel 的发展 4605 T6 e: H1 K" s4 T F
8.7.3 体验Unikernel 462
' g# j6 V' Q8 ^8.8 本章小结 465
; J5 f. X/ R: g* ZJava资料百度网盘下载地址链接(百度云):容器即服务:从零构建企业级容器集群@www.javazx.com.pdf【密码回帖可见】& _6 s0 {9 s* F4 T3 _
: P" l1 U9 `8 K' n; V M+ q/ _9 j) G# s
, L% [. p6 P; Y' x% C) T# }' z+ |) l6 i8 Y; r3 C
/ ?" _/ x$ K) Z {
4 F) ]! q6 M7 Z0 r, e0 M! @. @! C' u% `5 a6 f) w
|
|