|
java自学网(www.javazx.com)-java论坛,java电子书推荐:《互联网企业容器技术实践》& s- u0 X$ W3 F0 a$ l% z
java电子书推荐理由:本书通过容器技术领域的实践者分享各自的实践案例,介绍常见的业务痛点、实现方式、方案的选型、遇到的问题和解决方案等,希望能够帮助读者了解、认识和玩转容器。本书主要分为两部分:*部分是原理篇,包括第1章和第2章,简单介绍Docker和Kubernetes的基础知识及原理,包括Docker和Kubernetes是什么、可以做什么及如何使用等;第二部分是案例篇,包括第3~10章,通过多个实战案例,针对不同的使用场景和业务需求,介绍如何应用容器技术及实现相关需求。本书案例均来自一线真实案例,并有技术人员对技术改造过程的体会和领悟,有较强的借鉴意义和参考价值。
$ I7 h6 r& s7 ^/ `
; D3 }4 {2 |! k' U作者:龚曦; h& ?: r2 n6 O5 _# X
出版社:电子工业出版社
! V0 _6 l$ U2 Y' H; |出版时间:2019年01月
8 \2 H# f- ^- o书籍价格:69.0元
% N' q, H3 I ^- {9 V+ Q! @0 N
- a' U5 ~& E q1 [
* Q0 t& s0 N8 W6 ~
5 W; X" L6 [/ N3 s7 H! ?9 X* g7 C, Z
java电子书目录:
7 U( }1 a7 ?( ]9 Y9 ^ Y2 U, ?) y第1章 Docker入门 18 t% ~2 X4 z3 P; h3 L$ l% Y- J
1.1 容器简介与Docker容器引擎 2# ]$ P. T2 n4 }6 M$ i1 @' q9 ~
1.1.1 什么是容器 29 M) ^- }5 y( `
1.1.2 Docker容器 21 p3 B- b9 `& {1 C. Q( B& Q
1.2 Docker核心原理 58 E, y8 B: Q$ c, `, d( |
1.2.1 Docker引擎结构 58 ?+ p; @0 p. \+ w" C( E
1.2.2 Docker服务流程 6' ~1 t' k* v7 ` g+ M Q" r
1.2.3 Docker核心技术 6
% q& V% r7 U3 W- S/ g: s1.3 Docker镜像及镜像仓库 16
' ?# z5 q; i, a& a' D/ _2 Q1.3.1 什么是Docker镜像 16" w/ t" d& D. h6 K+ O6 I. j
1.3.2 构建Docker镜像 16
! H0 A7 t, G) R( o( J1.3.3 搭建Docker镜像仓库 218 Y" h9 k, l/ {( w$ L! m
1.4 Docker网络 22* V. z3 a9 K( ]- o3 c) n
1.4.1 Docker网络架构 22( H6 Z2 Q3 w$ U) B1 H4 w, e
1.4.2 Docker网络原理 23- V% A; [5 ?/ _, B7 J
第2章 Kubernetes入门 281 X; h: @3 T; P3 j
2.1 Kubernetes概述 29& K& h1 A. U- w
2.1.1 什么是Kubernetes 29
9 f7 w% c$ o0 }; @* x( m2.1.2 为什么选择Kubernetes 29
) G }( ?7 |2 [: g9 Z6 A2.1.3 Kubernetes基本概念 31# l$ I2 U0 A+ [ v- J1 U' t
2.2 Kubernetes架构及安装 368 i& q( _4 M6 E
2.2.1 Kubernetes架构 36" U' s9 @3 F5 H
2.2.2 Kubernetes核心组件 38
( `: z3 J! b9 `! R( a+ T2.2.3 二进制安装Kubernetes集群 44
, U2 c9 ~3 q% c, |: F+ f2.2.4 kubespray安装Kubernetes集群 50
$ _9 F- {5 m' f' H8 M2.3 Kubernetes实战案例 528 U0 X- f1 Y7 v7 e/ t+ U
2.3.1 WordPress应用模型 52) \" w) X, k0 p/ ]9 c
2.3.2 部署WordPress 53
* [* n8 q8 [0 y1 c9 u" q, J2.3.3 部署MariaDB 54
) b4 u6 q+ F' j) t0 S7 R2.3.4 通过浏览器访问WordPress 57
3 ^( [9 y" ?/ h% A2.4 Kubernetes网络 570 {" }# F. p. v0 A
2.4.1 Kubernetes中的网络场景 57
5 T& |/ [$ c& K. m, e3 w2.4.2 Kubernetes网络模型 59# r& i/ u0 s: y4 W
2.4.3 Kubernetes开源网络方案 60
+ r3 s% D# i* y% c) S7 r/ a5 e2.5 Kubernetes高级特性 64) [( a0 T5 d% q3 |" J% M
2.5.1 Federation 650 d: A& v5 U2 F- o6 q5 f
2.5.2 GPU支持 68
" c! Q4 [( c5 _2.6 Kubernetes生态 712 \6 {. v1 S }/ T7 C
2.6.1 Kubernetes包管理工具Helm 71' W! Q/ H6 _+ O* }
2.6.2 Service Mesh 73- \9 x, v p1 b# I. \$ ]0 D
2.6.3 Serverless 76
) X# ~. o/ m9 K第3章 美丽联合容器云实践 79) W; C( r, j% P _$ T
3.1 “从零到一”:容器云平台的技术演进 80
n$ c* ~2 t: I) @/ E3.1.1 为什么要建设容器云平台 80
) j" ~4 a' ~2 d3.1.2 如何建设容器云平台 80
) Q+ h/ h9 T+ B$ f3.1.3 架构演进 84# H/ ]) g7 ]2 q
3.1.4 稳定性、效率和成本 89' D: ? {% D: ^* I) d. O
3.2 “自我突破”:关键技术方案和创新点 930 }2 l% C; n" ^3 ^& A2 m
3.2.1 版本演进 93" Z+ X5 }6 K- [/ P1 a. { @% L
3.2.2 关键技术和创新点 94
, q1 u/ S1 j8 `6 e- I3.3 总结 109# x" w' r; R' v' ]
3.3.1 体会和心得 109
! ~0 K, ~6 a" d5 w; f, m9 L" _( y3.3.2 展望未来 110
O" T( P& o4 k+ R: \ p3.3.3 遇到过的问题 114
5 g1 v; v9 F$ `: N& ~: ^- o& M3.3.4 开源工具分享 115) b t l8 ^0 t5 @
第4章 酷家乐容器化之路 1193 E ~# j; g: w# }
4.1 架构挑战与应对方案 120
' s; T2 p6 O' Z4 g* |0 K+ X( G+ F4.2 应用容器化 122
) @! ]) `' G+ {" B4.2.1 CI/CD迁移 122! ^- j) I( X! q) R4 Q' d, b1 _4 y
4.2.2 公共基础镜像 122
/ H! Q I8 m1 f+ n% R, q/ m4.2.3 镜像构建及单元测试 123
7 P, G+ I2 z4 l4.2.4 容器部署 1243 r0 {9 [, m3 e* W" h
4.2.5 网络模式 124
; Y8 O( b% C& ~: s- L4.2.6 性能相关 124# G6 h" h% p) I! J1 A
4.2.7 小结 125
6 X; o. A9 G J6 Z4.3 编排自动化 1250 }4 U8 h- Y* b) N" s
4.3.1 资源隔离与资源限额 125
8 [: j: `, [5 l- O6 l" U/ i# O4.3.2 Kubernetes的认证与授权 128
; I& W7 |+ j9 v& M$ C1 d6 Y4.3.3 CMDB改造 1314 |" g6 F% }( r' \! C" {
4.3.4 Kubernetes的包管理工具Helm 132- ^% Y1 d2 E1 W
4.3.5 存储方案 1321 \7 N s5 `# B% a
4.3.6 网络方案 132) z5 Q5 l6 k- N, _
4.3.7 日志与监控 133! V( x5 A6 W3 C6 d* n9 K
4.3.8 小结 134
; e7 z7 U1 o8 _; o z4.4 酷家乐的服务网格实践 134. \9 `$ u' o/ Q0 |5 [2 k* X; W
4.4.1 服务网格的发展现状 135
8 n9 m7 S& P) D9 y, U0 v4.4.2 酷家乐技术团队应用Istio的范围 135$ e* k$ V7 L5 _1 v# B
4.4.3 Istio的安装 135
3 ]9 H& a9 L5 x" L+ x$ a8 G* b4.4.4 通过Istio的信息进行全自动化部署 135
5 `7 Z. t8 x' [3 o4 L3 g4.4.5 通过Istio Zipkin Sleuth实现调用链路追踪 137/ b. N" l. j" M8 g) \# ]
4.4.6 通过Istio的routing rule实现不同的发布策略和版本策略 1386 D$ f2 V* `* M0 K. ?& c
4.4.7 通过修改Istio系统设置实现Pod外部访问控制 139
: F& g. y" m; ]" F. }8 T4.4.8 Istio的其他风险 140
& }* U( O+ D# x. K4.4.9 小结 1401 q6 x* I7 A$ `! F |$ t4 B7 Y
4.5 总结 140
( {, f9 i: E; @" y0 y6 i第5章 个推基于Docker和Kubernetes的微服务实践 142
/ u% Q" }) H; Q- G9 h! ]5.1 微服务 143
4 M& W1 R( p: @3 u! _5.1.1 微服务简介 143- Q# z) N2 G( h7 K. i
5.1.2 微服务实践 145
5 A0 i" L0 ^- i7 p' ~6 \& z5 y$ P2 P5.2 容器化 149
# }. e0 X' {; E; p" F9 @5.3 Kubernetes实践 151
2 o9 U* R. V) w. R, A2 p! |' y5.4 总结 157
' @' v' y6 X) H$ m* c( q第6章 使用Kubernetes进行交换机端口流量采集 158/ ~/ y/ G# y& Z
6.1 Prometheus简介与使用 1594 n! f9 W& A N9 ]; ?
6.1.1 Prometheus特点 1599 b$ W9 V4 l# e$ y( X
6.1.2 Prometheus相关组件 159
) e! E2 _! j) U2 F0 T6.1.3 Prometheus架构 159
4 S- r4 L) T C+ b, s! ~& w6 r% F: w6.1.4 Prometheus适用场景 160
' `( C K5 K' n0 V9 i, m# b6.1.5 Prometheus的安装及使用 160# J. p% p& h4 J8 w
6.1.6 Prometheus SNMP Exporter 168
4 {5 s! ~/ \3 l0 G) u6 C6.1.7 Prometheus 告警 169- z' P# W6 q1 J* I) Z- L$ e6 l4 P7 y
6.1.8 Grafana 171* L$ L8 D$ h* C- F5 t
6.2 流量采集系统 171
) m( M, X+ H, U- r; Q8 A1 F第7章 搜道微服务容器化实践 175% a. N/ \. I6 J2 I6 o4 N
7.1 为何选择Docker 176
/ l8 R0 H4 `6 X6 l3 V+ M7.1.1 公司架构演变过程 176
- \$ C, Y" Q/ {! `- X% n2 q g7.1.2 平台存在的问题 176
* s6 {. U' x: N9 @, W/ F7.1.3 容器优势 1761 v9 F7 W8 i- O Y% j6 s) c
7.2 Docker容器云架构方案 177+ w3 t" a* H9 z# K2 a
7.2.1 技术选型及实践 177
2 H2 J8 f: ]7 N- ~0 Z7.2.2 服务注册与服务发现 192
- E, i/ T: D- [1 y" F- @/ k( Y7.2.3 Docker网络与通信解决方案 193
& J$ I, j, @/ @4 \4 @0 }1 M7.3 未来展望:自动化和弹性云 194
- {% z4 L" J! E2 c6 Q# [7.3.1 自动化 195
. S. ]0 d' E; N7.3.2 弹性云 195
% O+ i4 y/ {$ j8 B/ K1 a第8章 纵横新创的容器化实践 196$ j$ ^" ?4 I) s4 }7 `' R2 a) l; h
8.1 背景介绍 197$ I, \% C6 K" m U' S, ~8 v2 W
8.2 Rancher介绍 198' b% C6 ?4 [* f! D5 R5 a' N* I
8.2.1 基础设施编排 199
L" y; D3 r. E% a6 [$ Y' X2 d3 `8.2.2 应用商店 199
1 D I* K' C$ q+ _) c1 D. z8.2.3 容器编排与调度 199
4 M: h& `1 a; `; e- _* q8.2.4 企业级权限管理 199
) @( q) N; |# c3 H4 z: F: Q' W8.3 Docker构件库配置 199 |; V$ w5 p% v' z) @# ^
8.3.1 Nexus 3安装 200
- {* |8 w) T: N+ E' Y/ N$ U8.3.2 Nexus 3配置Docker镜像库 2017 m3 ^& k$ S0 Z
8.3.3 配置Docker环境 202( o1 N9 ~$ T# m. ~5 N
8.4 构建Maven环境 208
. M# ^% h1 a6 [3 f+ e4 h8.4.1 配置POM文件 208/ d! f7 c$ y8 C& u
8.4.2 配置DockerFile文件 209
. C1 o% ?) [1 y/ F% s9 Y+ G2 I' |8.4.3 开启Docker的远程接口 2092 e) p" _% S. W" m( A0 P
8.4.4 执行Maven编译 210
" l4 Q6 _" z2 ]) G& v' I" j2 d3 l8.5 Rancher在Jenkins中的配置 211
; v7 l1 P) N3 Z2 s+ K. U8.5.1 Jenkins中安装Rancher插件 212
" Z" r- h; L( U! x8.5.2 在Rancher服务中配置API连接信息 212
! H7 r. w' P* I, ~% X8.5.3 在Jenkins中配置 213% T7 i6 X; x+ f
8.5.4 Jenkins的执行效果 214* k. B/ N$ c* z% K
8.6 问题与总结 2164 @9 K6 F& A: B3 ^$ G
8.6.1 Rancher的高可用 216
2 C, o0 ]* P# P5 k3 ?$ y' D6 l* s- r8.6.2 收集日志 2160 }/ _& A1 W, w* m' B
8.6.3 监控告警 217* g# n8 M2 q! s' I8 x
8.6.4 调用链监控 217) Y) E0 ]' i9 ~
8.7 写在最后 218
+ D' \3 E) H6 k第9章 九言科技Kubernetes实践 219# U' `7 E/ F: q1 R
9.1 现有维护中的瓶颈 2202 y0 h/ W* c5 H7 X& C
9.2 容器管理平台的选择 220. X1 c/ l* i9 r3 q: ]! T9 l% u( g" l6 y
9.3 环境的搭建与CI/CD 220! }! n! B2 ]* o! C% L2 Z
9.3.1 用kubeadm快速搭建Kubernetes环境 221
. {8 J- Y, X4 f* {' i- Q5 O: @9.3.2 Kubernetes环境下的CI/CD整体架构 222
/ c# C( P! r, R& E& ?5 S9.4 存储引擎的选择 2228 r( v& |- b# Z. n
9.4.1 存储概述 222# }0 Z7 m+ S4 y, |& ?
9.4.2 如何选择驱动引擎 2232 X( @/ V$ x% e5 H- }
9.5 Kubernetes日志收集 226
+ }6 t: a" \7 [1 k4 U9.5.1 收集日志的需求 226% t* U, g- D/ e h/ E, i9 y
9.5.2 收集日志的解决方案 226/ H3 A- \, {' M3 u& l m: T
9.6 未来探索 229
9 R: y& w$ W) o/ B! u9.6.1 Service Mesh介绍 229 y/ t7 |* r1 M; w1 c# n; j
9.6.2 FaaS与Serverless 2306 Q% y' e# m# J: T( K4 h. s ^
9.7 小结 232! Q$ w" s2 [; V5 S, c3 C) `
第10章 沃趣科技的容器化RDS之路 2331 V3 s( @4 x h2 Z
10.1 容器化RDS:计算存储分离架构下的“Split-Brain” 234 L Y3 s$ G" d4 ]& K
10.2 容器化RDS:计算存储分离架构下的I/O优化 242
" I' E" R; [) p* |! p' s10.2.1 计算存储分离架构 243
% F3 b y# ^8 ?, N4 f10.2.2 计算存储分离架构的缺点 243
) W' l* @9 M/ |* V10.2.3 DoubleWrite 243
, }/ z& y2 p- \+ Q5 M: C- n( G" f10.2.4 单机架构:关闭DoubleWrite 244% g% Y; F2 R! {9 m+ s
10.2.5 计算存储分离架构:关闭DoubleWrite 244
# n% b$ O! A. K4 F; k: ^10.3 容器化RDS:PersistentLocalVolumes和VolumeScheduling 246& T; _! s9 L1 T( I8 U
10.3.1 本地卷 246
# m! O+ @" ~# _ S' C5 o10.3.2 原有调度机制的问题 246# h$ C: z4 Y5 `% N
10.3.3 PVC绑定 2470 o0 a) c/ N# i" J/ X5 ~
10.3.4 Pod调度 2478 X4 l, l3 z& S' R
10.4 容器化RDS:借助CSI扩展Kubernetes存储能力 252+ k8 i, L% _' M3 x( E5 ^5 @
10.4.1 现有Kubernetes存储插件系统问题 253
% u+ D1 u% B e' A$ F10.4.2 Container Storage Interface 2542 y: Y/ g! A& P/ Q; N$ F# l
10.4.3 基于CSI和分布式文件系统在MySQL上实现Dynamically Expand Volume 255
b; J+ @8 ~" Z10.4.4 对CSI的展望 257
' m6 F. t4 S" E' V/ V, Z1 @ dJava资料百度网盘下载地址链接(百度云):互联网企业容器技术实践@www.javazx.com.pdf【密码回帖可见】8 K* l: ~( Q+ a0 d
2 Y# z' b0 Q" j# Q
1 \' A9 \1 t, ]: X7 {! [- W' J H2 M0 U2 [" t- D
6 n. Y% V# R! N4 R6 V% i( |
1 n$ `7 F1 M! ?7 ?% Q9 O2 V
" A( n' j2 q3 x8 s( g, H& H7 D
* J6 Y3 g, `/ z6 |" u& p |
|